The environment block supplies environment variables for use by component definitions in the project. For simple key/value string pairs, variables can be specified as attributes in the environment block. For more complex cases, including defining secrets, variables are specified by child blocks within the environment block. Later children blocks shadow earlier blocks, which shadow the environment block-level attributes.
The components block acts as a container for individual component blocks. Each component has a unique name across the manifest.
Components may come in the form of component blocks or as macro-blocks named after the type of component. For details regarding specific component types and their respective syntax, see Components.
Each component block specifies an individual component.
Generally, it is less verbose to use type-specific component macros. For details regarding component types and their respective syntax, see Components.
Label
Description
Name
Name of this component. Must match /[a-z_]([a-z0-9-]*[a-z0-9])/.
Attribute
Description
type
Type name for the component to be constructed.
Required
spec
String that defines the component. The format of a spec is dependent on the component's type.
Alternative to the spec attribute. Specifies a component's configuration in HCL format, instead of as an arbitrary string. The contents of a spec block are entirely dependent on the type of a component.