Dagger
Search

packer

No long description provided.

Installation

dagger install github.com/stuttgart-things/dagger/packer@v0.93.1

Entrypoint

Return Type
Packer
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
func (m *MyModule) Example() *dagger.Packer  {
	return dag.
			Packer()
}
@function
def example() -> dagger.Packer:
	return (
		dag.packer()
	)
@func()
example(): Packer {
	return dag
		.packer()
}

Types

Packer 🔗

baseImage() 🔗

Base Wolfi image to use

Return Type
String !
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 base-image
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Packer().
			BaseImage(ctx)
}
@function
async def example() -> str:
	return await (
		dag.packer()
		.base_image()
	)
@func()
async example(): Promise<string> {
	return dag
		.packer()
		.baseImage()
}

bake() 🔗

Return Type
String !
Arguments
NameTypeDefault ValueDescription
packerVersionString "1.12.0"The Packer version to use
archString "linux_amd64"The Packer arch
initOnlyBoolean falseIf true, only init packer w/out build
forceBoolean falseIf true, force overwrite of existing template
vaultAddrString -vaultAddr
vaultRoleIdSecret -vaultRoleID
vaultSecretIdSecret -vaultSecretID
vaultTokenSecret -vaultToken
varsString -Comma-separated packer build vars, e.g. "name=tpl,username=root,password=foo" # pragma: allowlist secret
varsFileString -Path (relative to the packer build dir) to a plain YAML file with build vars
sopsFileString -Path (relative to the packer build dir) to a SOPS-encrypted YAML file with secret build vars
sopsAgeKeySecret -Age private key used to decrypt sopsFile (SOPS_AGE_KEY)
buildPathString !-No description provided
localDirDirectory !-No description provided
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 bake --build-path string --local-dir DIR_PATH
func (m *MyModule) Example(ctx context.Context, buildPath string, localDir *dagger.Directory) string  {
	return dag.
			Packer().
			Bake(ctxbuildPath, localDir)
}
@function
async def example(build_path: str, local_dir: dagger.Directory) -> str:
	return await (
		dag.packer()
		.bake(build_path, local_dir)
	)
@func()
async example(buildPath: string, localDir: Directory): Promise<string> {
	return dag
		.packer()
		.bake(buildPath, localDir)
}

checkDatastores() 🔗

CheckDatastores retrieves information about available datastores and their size

Return Type
File !
Arguments
NameTypeDefault ValueDescription
vcenterSecret !-No description provided
usernameSecret !-No description provided
passwordSecret !-No description provided
datacenterString -The datacenter to query datastores from
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 check-datastores --vcenter env:MYSECRET --username env:MYSECRET --password env:MYSECRET
func (m *MyModule) Example(vcenter *dagger.Secret, username *dagger.Secret, password *dagger.Secret) *dagger.File  {
	return dag.
			Packer().
			CheckDatastores(vcenter, username, password)
}
@function
def example(vcenter: dagger.Secret, username: dagger.Secret, password: dagger.Secret) -> dagger.File:
	return (
		dag.packer()
		.check_datastores(vcenter, username, password)
	)
@func()
example(vcenter: Secret, username: Secret, password: Secret): File {
	return dag
		.packer()
		.checkDatastores(vcenter, username, password)
}

checkNetworks() 🔗

CheckNetworks retrieves information about available networks

Return Type
File !
Arguments
NameTypeDefault ValueDescription
vcenterSecret !-No description provided
usernameSecret !-No description provided
passwordSecret !-No description provided
datacenterString -The datacenter to query networks from
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 check-networks --vcenter env:MYSECRET --username env:MYSECRET --password env:MYSECRET
func (m *MyModule) Example(vcenter *dagger.Secret, username *dagger.Secret, password *dagger.Secret) *dagger.File  {
	return dag.
			Packer().
			CheckNetworks(vcenter, username, password)
}
@function
def example(vcenter: dagger.Secret, username: dagger.Secret, password: dagger.Secret) -> dagger.File:
	return (
		dag.packer()
		.check_networks(vcenter, username, password)
	)
@func()
example(vcenter: Secret, username: Secret, password: Secret): File {
	return dag
		.packer()
		.checkNetworks(vcenter, username, password)
}

checkProxmoxNetworks() 🔗

CheckProxmoxNetworks lists network interfaces/bridges on a node.

Return Type
String !
Arguments
NameTypeDefault ValueDescription
proxmoxUrlSecret !-No description provided
tokenIdSecret !-No description provided
tokenSecretSecret !-No description provided
nodeString !-Node to query (e.g. "pve1")
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 check-proxmox-networks --proxmox-url env:MYSECRET --token-id env:MYSECRET --token-secret env:MYSECRET --node string
func (m *MyModule) Example(ctx context.Context, proxmoxUrl *dagger.Secret, tokenId *dagger.Secret, tokenSecret *dagger.Secret, node string) string  {
	return dag.
			Packer().
			CheckProxmoxNetworks(ctx, proxmoxUrl, tokenId, tokenSecret, node)
}
@function
async def example(proxmox_url: dagger.Secret, token_id: dagger.Secret, token_secret: dagger.Secret, node: str) -> str:
	return await (
		dag.packer()
		.check_proxmox_networks(proxmox_url, token_id, token_secret, node)
	)
@func()
async example(proxmoxUrl: Secret, tokenId: Secret, tokenSecret: Secret, node: string): Promise<string> {
	return dag
		.packer()
		.checkProxmoxNetworks(proxmoxUrl, tokenId, tokenSecret, node)
}

checkProxmoxStorage() 🔗

CheckProxmoxStorage lists storage pools (cluster-wide or per-node) with usage.

Return Type
String !
Arguments
NameTypeDefault ValueDescription
proxmoxUrlSecret !-No description provided
tokenIdSecret !-No description provided
tokenSecretSecret !-No description provided
nodeString -Node to query (e.g. "pve1"); if empty, queries cluster-wide /storage
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 check-proxmox-storage --proxmox-url env:MYSECRET --token-id env:MYSECRET --token-secret env:MYSECRET
func (m *MyModule) Example(ctx context.Context, proxmoxUrl *dagger.Secret, tokenId *dagger.Secret, tokenSecret *dagger.Secret) string  {
	return dag.
			Packer().
			CheckProxmoxStorage(ctx, proxmoxUrl, tokenId, tokenSecret)
}
@function
async def example(proxmox_url: dagger.Secret, token_id: dagger.Secret, token_secret: dagger.Secret) -> str:
	return await (
		dag.packer()
		.check_proxmox_storage(proxmox_url, token_id, token_secret)
	)
@func()
async example(proxmoxUrl: Secret, tokenId: Secret, tokenSecret: Secret): Promise<string> {
	return dag
		.packer()
		.checkProxmoxStorage(proxmoxUrl, tokenId, tokenSecret)
}

listProxmoxResources() 🔗

ListProxmoxResources returns datacenter-wide resources (nodes, VMs, storage, sdn).

Return Type
String !
Arguments
NameTypeDefault ValueDescription
proxmoxUrlSecret !-No description provided
tokenIdSecret !-No description provided
tokenSecretSecret !-No description provided
resourceTypeString -Resource type filter: vm | storage | node | sdn (empty = all)
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 list-proxmox-resources --proxmox-url env:MYSECRET --token-id env:MYSECRET --token-secret env:MYSECRET
func (m *MyModule) Example(ctx context.Context, proxmoxUrl *dagger.Secret, tokenId *dagger.Secret, tokenSecret *dagger.Secret) string  {
	return dag.
			Packer().
			ListProxmoxResources(ctx, proxmoxUrl, tokenId, tokenSecret)
}
@function
async def example(proxmox_url: dagger.Secret, token_id: dagger.Secret, token_secret: dagger.Secret) -> str:
	return await (
		dag.packer()
		.list_proxmox_resources(proxmox_url, token_id, token_secret)
	)
@func()
async example(proxmoxUrl: Secret, tokenId: Secret, tokenSecret: Secret): Promise<string> {
	return dag
		.packer()
		.listProxmoxResources(proxmoxUrl, tokenId, tokenSecret)
}

proxmoxoperation() 🔗

Proxmoxoperation performs move/rename/delete on a Proxmox VM or template.

Return Type
String !
Arguments
NameTypeDefault ValueDescription
operationString !-Operation: move | rename | delete
nodeString !-Source node hosting the VM (e.g. "pve1")
vmidString !-VMID of the VM/template
targetString -For move: target node. For rename: new name. For delete: ignored.
proxmoxUrlSecret !-No description provided
tokenIdSecret !-No description provided
tokenSecretSecret !-No description provided
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 proxmoxoperation --operation string --node string --vmid string --proxmox-url env:MYSECRET --token-id env:MYSECRET --token-secret env:MYSECRET
func (m *MyModule) Example(ctx context.Context, operation string, node string, vmid string, proxmoxUrl *dagger.Secret, tokenId *dagger.Secret, tokenSecret *dagger.Secret) string  {
	return dag.
			Packer().
			Proxmoxoperation(ctx, operation, node, vmid, proxmoxUrl, tokenId, tokenSecret)
}
@function
async def example(operation: str, node: str, vmid: str, proxmox_url: dagger.Secret, token_id: dagger.Secret, token_secret: dagger.Secret) -> str:
	return await (
		dag.packer()
		.proxmoxoperation(operation, node, vmid, proxmox_url, token_id, token_secret)
	)
@func()
async example(operation: string, node: string, vmid: string, proxmoxUrl: Secret, tokenId: Secret, tokenSecret: Secret): Promise<string> {
	return dag
		.packer()
		.proxmoxoperation(operation, node, vmid, proxmoxUrl, tokenId, tokenSecret)
}

vcenteroperation() 🔗

Return Type
Void !
Arguments
NameTypeDefault ValueDescription
operationString -The Vm Operation to perform
sourceString -No description provided
targetString -No description provided
vcenterSecret !-No description provided
usernameSecret !-No description provided
passwordSecret !-No description provided
Example
dagger -m github.com/stuttgart-things/dagger/packer@aa2f4dd20e187d07ba6551d4369509072a2958d8 call \
 vcenteroperation --vcenter env:MYSECRET --username env:MYSECRET --password env:MYSECRET
func (m *MyModule) Example(ctx context.Context, vcenter *dagger.Secret, username *dagger.Secret, password *dagger.Secret)   {
	return dag.
			Packer().
			Vcenteroperation(ctxvcenter, username, password)
}
@function
async def example(vcenter: dagger.Secret, username: dagger.Secret, password: dagger.Secret) -> None:
	return await (
		dag.packer()
		.vcenteroperation(vcenter, username, password)
	)
@func()
async example(vcenter: Secret, username: Secret, password: Secret): Promise<void> {
	return dag
		.packer()
		.vcenteroperation(vcenter, username, password)
}