Dagger
Search

terraform

Work with Terraform infrastructure as code tool.

Installation

dagger install github.com/camptocamp/daggerverse/terraform@v0.1.0

Entrypoint

Return Type
Terraform !
Arguments
NameTypeDefault ValueDescription
versionString -Terraform version to get
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
func (m *MyModule) Example() *dagger.Terraform  {
	return dag.
			Terraform()
}
@function
def example() -> dagger.Terraform:
	return (
		dag.terraform()
	)
@func()
example(): Terraform {
	return dag
		.terraform()
}

Types

Terraform 🔗

binary() 🔗

Get a Terraform executable binary

Return Type
File !
Arguments
NameTypeDefault ValueDescription
platformScalar -Platform to get Terraform for
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 binary
func (m *MyModule) Example() *dagger.File  {
	return dag.
			Terraform().
			Binary()
}
@function
def example() -> dagger.File:
	return (
		dag.terraform()
		.binary()
	)
@func()
example(): File {
	return dag
		.terraform()
		.binary()
}

overlay() 🔗

Get a Terraform root filesystem overlay

Return Type
Directory !
Arguments
NameTypeDefault ValueDescription
platformScalar -Platform to get Terraform for
prefixString -Filesystem prefix under which to install Terraform
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 overlay
func (m *MyModule) Example() *dagger.Directory  {
	return dag.
			Terraform().
			Overlay()
}
@function
def example() -> dagger.Directory:
	return (
		dag.terraform()
		.overlay()
	)
@func()
example(): Directory {
	return dag
		.terraform()
		.overlay()
}

installation() 🔗

Install Terraform in a container

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
containerContainer !-Container in which to install Terraform
prefixString -Filesystem prefix under which to install Terraform
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 installation --container IMAGE:TAG
func (m *MyModule) Example(container *dagger.Container) *dagger.Container  {
	return dag.
			Terraform().
			Installation(container)
}
@function
def example(container: dagger.Container) -> dagger.Container:
	return (
		dag.terraform()
		.installation(container)
	)
@func()
example(container: Container): Container {
	return dag
		.terraform()
		.installation(container)
}

container() 🔗

Get a Terraform container from a base container

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
containerContainer !-Base container
prefixString -Filesystem prefix under which to install Terraform
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 container --container IMAGE:TAG
func (m *MyModule) Example(container *dagger.Container) *dagger.Container  {
	return dag.
			Terraform().
			Container(container)
}
@function
def example(container: dagger.Container) -> dagger.Container:
	return (
		dag.terraform()
		.container(container)
	)
@func()
example(container: Container): Container {
	return dag
		.terraform()
		.container(container)
}

redhatContainer() 🔗

Get a Terraform container from a Red Hat Universal Base Image container

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
platformScalar -Platform to get container for
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 redhat-container
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			Terraform().
			RedhatContainer()
}
@function
def example() -> dagger.Container:
	return (
		dag.terraform()
		.redhat_container()
	)
@func()
example(): Container {
	return dag
		.terraform()
		.redhatContainer()
}

redhatMinimalContainer() 🔗

Get a Terraform container from a Red Hat Minimal Universal Base Image container

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
platformScalar -Platform to get container for
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 redhat-minimal-container
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			Terraform().
			RedhatMinimalContainer()
}
@function
def example() -> dagger.Container:
	return (
		dag.terraform()
		.redhat_minimal_container()
	)
@func()
example(): Container {
	return dag
		.terraform()
		.redhatMinimalContainer()
}

redhatMicroContainer() 🔗

Get a Terraform container from a Red Hat Micro Universal Base Image container

Some features of Terraform may not be available in a Red Hat Micro Universal Base Image container.

Return Type
Container !
Arguments
NameTypeDefault ValueDescription
platformScalar -Platform to get container for
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 redhat-micro-container
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			Terraform().
			RedhatMicroContainer()
}
@function
def example() -> dagger.Container:
	return (
		dag.terraform()
		.redhat_micro_container()
	)
@func()
example(): Container {
	return dag
		.terraform()
		.redhatMicroContainer()
}

workspace() 🔗

Get a Terraform workspace from a source directory

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
sourceDirectory -Terraform configuration source directory
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
}

check() 🔗

Check a Terraform workspace

Return Type
Void !
Arguments
NameTypeDefault ValueDescription
sourceDirectory -No description provided
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 check
func (m *MyModule) Example(ctx context.Context)   {
	return dag.
			Terraform().
			Check(ctx)
}
@function
async def example() -> None:
	return await (
		dag.terraform()
		.check()
	)
@func()
async example(): Promise<void> {
	return dag
		.terraform()
		.check()
}

Workspace 🔗

version() 🔗

Get Terraform version

Return Type
String !
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 version
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Terraform().
			Workspace().
			Version(ctx)
}
@function
async def example() -> str:
	return await (
		dag.terraform()
		.workspace()
		.version()
	)
@func()
async example(): Promise<string> {
	return dag
		.terraform()
		.workspace()
		.version()
}

container() 🔗

Get a Terraform container with mounted source directory and environment variables set

Return Type
Container !
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 container
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			Terraform().
			Workspace().
			Container()
}
@function
def example() -> dagger.Container:
	return (
		dag.terraform()
		.workspace()
		.container()
	)
@func()
example(): Container {
	return dag
		.terraform()
		.workspace()
		.container()
}

withEnvVariable() 🔗

Set an environment variable in the Terraform workspace

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
nameString !-Environment variable name
valueString !-Environment variable value
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 with-env-variable --name string --value string
func (m *MyModule) Example(name string, value string) *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			WithEnvVariable(name, value)
}
@function
def example(name: str, value: str) -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.with_env_variable(name, value)
	)
@func()
example(name: string, value: string): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.withEnvVariable(name, value)
}

withSecretVariable() 🔗

Set a secret environment variable in the Terraform workspace

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
nameString !-Environment variable name
secretSecret !-Environment variable secret value
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 with-secret-variable --name string --secret env:MYSECRET
func (m *MyModule) Example(name string, secret *dagger.Secret) *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			WithSecretVariable(name, secret)
}
@function
def example(name: str, secret: dagger.Secret) -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.with_secret_variable(name, secret)
	)
@func()
example(name: string, secret: Secret): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.withSecretVariable(name, secret)
}

init() 🔗

Initialize the Terraform workspace

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
args[String ! ] -Arguments to pass to Terraform init command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 init
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			Init()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.init()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.init()
}

format() 🔗

Format the Terraform workspace

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
args[String ! ] -Arguments to pass to Terraform fmt command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 format
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			Format()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.format()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.format()
}

validate() 🔗

Validate the Terraform workspace

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
args[String ! ] -Arguments to pass to Terraform validate command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 validate
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			Validate()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.validate()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.validate()
}

plan() 🔗

Create a Terraform plan for the workspace

Return Type
Plan !
Arguments
NameTypeDefault ValueDescription
args[String ! ] -Arguments to pass to Terraform plan command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 plan
func (m *MyModule) Example() *dagger.TerraformPlan  {
	return dag.
			Terraform().
			Workspace().
			Plan()
}
@function
def example() -> dagger.TerraformPlan:
	return (
		dag.terraform()
		.workspace()
		.plan()
	)
@func()
example(): TerraformPlan {
	return dag
		.terraform()
		.workspace()
		.plan()
}

show() 🔗

Show a Terraform plan or the Terraform workspace current state

Return Type
String !
Arguments
NameTypeDefault ValueDescription
planFileFile -Terraform plan file to show (defaults to current state if not specified)
args[String ! ] -Arguments to pass to Terraform show command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 show
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Terraform().
			Workspace().
			Show(ctx)
}
@function
async def example() -> str:
	return await (
		dag.terraform()
		.workspace()
		.show()
	)
@func()
async example(): Promise<string> {
	return dag
		.terraform()
		.workspace()
		.show()
}

apply() 🔗

Apply a Terraform plan

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
planFileFile -Terraform plan file to apply
args[String ! ] -Arguments to pass to Terraform apply command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 apply
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			Apply()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.apply()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.apply()
}

output() 🔗

Get output variables from a Terraform workspace

Return Type
String !
Arguments
NameTypeDefault ValueDescription
nameString -Output variable (defaults to all variables if empty)
args[String ! ] -Arguments to pass to Terraform output command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 output
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Terraform().
			Workspace().
			Output(ctx)
}
@function
async def example() -> str:
	return await (
		dag.terraform()
		.workspace()
		.output()
	)
@func()
async example(): Promise<string> {
	return dag
		.terraform()
		.workspace()
		.output()
}

changes() 🔗

Get Terraform workspace source directory changes

Return Type
Changeset !
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 changes
func (m *MyModule) Example() *dagger.Changeset  {
	return dag.
			Terraform().
			Workspace().
			Changes()
}
@function
def example() -> dagger.Changeset:
	return (
		dag.terraform()
		.workspace()
		.changes()
	)
@func()
example(): Changeset {
	return dag
		.terraform()
		.workspace()
		.changes()
}

combinedOutput() 🔗

Get combined buffered standard output and standard error stream of the last executed command in the Terraform workspace container

Return Type
String !
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 combined-output
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Terraform().
			Workspace().
			CombinedOutput(ctx)
}
@function
async def example() -> str:
	return await (
		dag.terraform()
		.workspace()
		.combined_output()
	)
@func()
async example(): Promise<string> {
	return dag
		.terraform()
		.workspace()
		.combinedOutput()
}

sync() 🔗

Force evaluation of the Terraform workspace commands

Return Type
Workspace !
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 sync
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			Sync()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.sync()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.sync()
}

Plan 🔗

file() 🔗

Get the Terraform plan file

Return Type
File !
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 plan \
 file
func (m *MyModule) Example() *dagger.File  {
	return dag.
			Terraform().
			Workspace().
			Plan().
			File()
}
@function
def example() -> dagger.File:
	return (
		dag.terraform()
		.workspace()
		.plan()
		.file()
	)
@func()
example(): File {
	return dag
		.terraform()
		.workspace()
		.plan()
		.file()
}

show() 🔗

Show a Terraform plan

Return Type
String !
Arguments
NameTypeDefault ValueDescription
args[String ! ] -Arguments to pass to Terraform show command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 plan \
 show
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Terraform().
			Workspace().
			Plan().
			Show(ctx)
}
@function
async def example() -> str:
	return await (
		dag.terraform()
		.workspace()
		.plan()
		.show()
	)
@func()
async example(): Promise<string> {
	return dag
		.terraform()
		.workspace()
		.plan()
		.show()
}

apply() 🔗

Apply a Terraform plan

Return Type
Workspace !
Arguments
NameTypeDefault ValueDescription
args[String ! ] -Arguments to pass to Terraform apply command
Example
dagger -m github.com/camptocamp/daggerverse/terraform@f7fc350feacdeb142e1545966dcc85df5c2860d2 call \
 workspace \
 plan \
 apply
func (m *MyModule) Example() *dagger.TerraformWorkspace  {
	return dag.
			Terraform().
			Workspace().
			Plan().
			Apply()
}
@function
def example() -> dagger.TerraformWorkspace:
	return (
		dag.terraform()
		.workspace()
		.plan()
		.apply()
	)
@func()
example(): TerraformWorkspace {
	return dag
		.terraform()
		.workspace()
		.plan()
		.apply()
}