Core Options
These options are delivered by the terranix core. They are always available.
-
backend.etcd
etcd backend https://www.terraform.io/docs/backends/types/etcd.html
type : null or submodule
defined : modules/terraform/backends.nix
-
backend.etcd.endpoints
A space-separated list of the etcd endpoints
type : string
defined : modules/terraform/backends.nix
-
backend.etcd.password
the password
type : null or string
defined : modules/terraform/backends.nix
-
backend.etcd.path
The path where to store the state
type : string
defined : modules/terraform/backends.nix
-
backend.etcd.username
the username
type : null or string
defined : modules/terraform/backends.nix
-
backend.local
local backend https://www.terraform.io/docs/backends/types/local.html
type : null or submodule
defined : modules/terraform/backends.nix
-
backend.local.path
path to the state file
type : string
defined : modules/terraform/backends.nix
-
backend.s3
s3 backend https://www.terraform.io/docs/backends/types/s3.html
type : null or submodule
defined : modules/terraform/backends.nix
-
backend.s3.bucket
bucket name
type : string
defined : modules/terraform/backends.nix
-
backend.s3.key
path to the state file in the bucket
type : string
defined : modules/terraform/backends.nix
-
backend.s3.region
region of the bucket
type : string
defined : modules/terraform/backends.nix
-
data
Data objects, are queries to use resources which are already exist, as if they are created by a the resource option. See for more details : https://www.terraform.io/docs/configuration/data-sources.html
defined : core/terraform-options.nix
-
locals
Define terraform variables with file scope. Like modules this is terraform intern and terranix has better ways. See for more details : https://www.terraform.io/docs/configuration/locals.html
defined : core/terraform-options.nix
example :{"locals":{"owner":"Community Team","service_name":"forum"}}
-
module
A terraform module, to define multiple resources, for sharing or duplication. The terraform module system, and has nothing to do with the module system of terranix or nixos. See for more details : https://www.terraform.io/docs/configuration/modules.html
defined : core/terraform-options.nix
example :{"module":{"consul":{"source":"github.com/hashicorp/example"}}}
-
output
Useful in combination with terraform_remote_state. See for more details : https://www.terraform.io/docs/configuration/outputs.html
defined : core/terraform-options.nix
example :{"output":{"instance_ip_addr":{"value":"aws_instance.server.private_ip"}}}
-
provider
Define you API connection. Don't use secrets in here, they will be visible in the nix-store and the resulting config.tf.json. Instead use terraform variables. See for more details : https://www.terraform.io/docs/configuration/providers.html or https://www.terraform.io/docs/providers/index.html
defined : core/terraform-options.nix
example :{"provider":{"google":{"project":"acme-app","region":"us-central1"}}}
-
provisioner.privateKeyFile
PrivateKey for provisioning via ssh access see https://www.terraform.io/docs/provisioners/connection.html This is an agnostic option, option-authors should use this options to implement server provisioning.
type : string
defined : modules/provisioner.nix
example :"~/.ssh/id_rsa"
-
remote_state.etcd
etcd remote state https://www.terraform.io/docs/backends/types/etcd.html
type : attribute set of submodules
defined : modules/terraform/backends.nix
-
remote_state.etcd.<name>.endpoints
A space-separated list of the etcd endpoints
type : string
defined : modules/terraform/backends.nix
-
remote_state.etcd.<name>.password
the password
type : null or string
defined : modules/terraform/backends.nix
-
remote_state.etcd.<name>.path
The path where to store the state
type : string
defined : modules/terraform/backends.nix
-
remote_state.etcd.<name>.username
the username
type : null or string
defined : modules/terraform/backends.nix
-
remote_state.local
local remote state https://www.terraform.io/docs/backends/types/local.html
type : attribute set of submodules
defined : modules/terraform/backends.nix
-
remote_state.local.<name>.path
path to the state file
type : string
defined : modules/terraform/backends.nix
-
remote_state.s3
s3 remote state https://www.terraform.io/docs/backends/types/s3.html
type : attribute set of submodules
defined : modules/terraform/backends.nix
-
remote_state.s3.<name>.bucket
bucket name
type : string
defined : modules/terraform/backends.nix
-
remote_state.s3.<name>.key
path to the state file in the bucket
type : string
defined : modules/terraform/backends.nix
-
remote_state.s3.<name>.region
region of the bucket
type : string
defined : modules/terraform/backends.nix
-
resource
The backbone of terraform and terranix to change and create state. See for more details : https://www.terraform.io/docs/configuration/resources.html
defined : core/terraform-options.nix
example :{"resource":{"aws_instance":{"web":{"ami":"ami-a1b2c3d4","instance_type":"t2.micro"}}}}
-
terraform
Terraform configuration. But for backends have a look at the terranix options backend.etcd, backend.local and backend.s3. See for more details : https://www.terraform.io/docs/configuration/terraform.html
defined : core/terraform-options.nix
example :{"terraform":{"backend":{"s3":{"bucket":"mybucket","key":"path/to/my/key","region":"us-east-1"}}}}
-
users
User management. `users.group.username` is the path. All members in the `admins` group should be able to ssh to servers. This is an agnostic option, option-authors should use this options to implement server provisioning.
type : attribute set of attribute set of submoduless
defined : modules/users.nix
example :{"admins":{"lassuls":{"publicKey":"ssh-rsa ABKAB3NzaC1yc2EAAAA.."},"mrVanDalo":{"publicKey":"ssh-rsa AAAAB3NzaC1yc2EAAAA.."}}}
-
users.<name>.<name>.publicKey
ssh public key of user
type : null or string
defined : modules/users.nix
example :"${ file( ~/.ssh/id_rsa.pub ) }"
-
variable
Input Variables, which can be set by `--var=name` or by environment variables prefixt with `TF_VAR_`. Usually used in terraform modules or to ask for API tokens. See for more details : https://www.terraform.io/docs/configuration/variables.html
defined : core/terraform-options.nix
example :{"variable":{"image_id":{"description":"The id of the machine image (AMI) to use for the server.","type":"string"}}}