Deploy
computeOnAwsBatch
Submit a job to a AWS BATCH queue.
When used as a Makes declaration (at makes.nix attrs):
- computeOnAwsBatch:
attrsOf JobType
(Optional Attr) Job groups to submit. Defaults to{ }
.
When used as a makes input:
- computeOnAwsBatch:
JobType -> SourceAble
Source able batch file to send jobs to aws batch.
Warning
When used as a makes input, all arguments are required
and defaults are not available.
However nested jobs (see nextJob
argument)
do have defaults enabled.
Types:
JobType
=attrs
- allowDuplicates:
bool
(Optional Attr) Set tofalse
in order to prevent submitting the job if there is already a job in the queue with the same name. Defaults tofalse
. - attempts:
positiveInt
(Optional Attr) If the value of attempts is greater than one, the job is retried on failure the same number of attempts as the value. Defaults to1
. - attemptDurationSeconds:
positiveInt
The time duration in seconds (measured from the job attempt's startedAt timestamp) after which Batch terminates your jobs if they have not finished. - command:
listOf str
The command to send to the container. It overrides the one specified in the Batch job definition. Additional arguments can be propagated when running this module output. - dryRun:
bool
(Optional Attr) (Not supported on nextJob) Do not send any job. Only check the correctness of the pipeline definition. - definition:
str
Name of the Batch job definition that we will use as base for submitting the job. In general an Batch job definition is required in order to specify which container image our job is going to run on. - environment:
listOf str
(Optional Attr) Name of the environment variables whose names and values should be copied from the machine running Makes to the machine on Batch running the job. Defaults to[ ]
. - includePositionalArgsInName:
bool
(Optional Attr). Enable to make positional arguments part of the job name. This is useful for identifying jobs in the Batch console more easily. Defaults totrue
. - nextJob:
attrs
(Optional Attr) The next job that will be executed after its parent finish. You must provide aname
attribute and all the required attrs ofJobType
. Defaults to{ }
. - memory:
positiveInt
Amount of memory, in MiB that is reserved for the job. - parallel:
positiveInt
(Optional Attr) Number of parallel jobs to trigger using Batch Array Jobs. Defaults to1
. - propagateTags:
bool
(Optional Attr) Enable tags to be propagated into the ECS tasks. Defaults totrue
. - queue:
nullOr str
Name of the Batch queue we should submit the job to. Ifnull
then queue is fetch from theMAKES_COMPUTE_ON_AWS_BATCH_QUEUE
environment variable at runtime. - setup:
listOf SourceAble
Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - tags:
attrsOf str
(Optional Attr). Tags to apply to the batch job. Defaults to{ }
. - vcpus:
positiveInt
Amount of virtual CPUs that is reserved for the job.
- allowDuplicates:
Example:
Note that positional arguments ([ "1" "2" "3" ]
in this case)
will be appended to the end of command
before sending the job to Batch.
deployContainer
Deploy a container image in OCI Format.
For details on how to build container images in OCI format, please see makeContainerImage.
Types:
- deployContainer (
attrsOf targetType
): - targetType (
submodule
):- credentials:
- token (
str
): Name of the environment variable that stores the value of the registry token. - user (
str
): Name of the environment variable that stores the value of the registry user.
- token (
- image (
str
): Container registry path to which the image will be copied to. - setup (
listOf package
): Optional. Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - sign (
bool
): Optional. Sign container image with Cosign by using a OIDC keyless approach. Defaults tofalse
. - src (
package
): Derivation that contains the container image in OCI Format.
- credentials:
Example:
deployContainerManifest
Deploy a container manifest to a container registry using manifest-tool.
Combine it with deployContainer for supporting multi-tag or multi-arch images.
Types:
- deployContainerManifest (
attrsOf targetType
): - targetType (
submodule
):- credentials:
- token (
str
): Name of the environment variable that stores the value of the registry token. - user (
str
): Name of the environment variable that stores the value of the registry user.
- token (
- image (
str
): Path for the manifest that will be deployed. - manifests (
listOf manifestType
): Already-existing images to be used by the new manifest. Typically used for supporting multiple architectures. - setup (
listOf package
): Optional. Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - sign (
bool
): Optional. Sign container image with Cosign by using a OIDC keyless approach. Defaults tofalse
. - tags (
listOf str
): Optional. List of secondary tags (aliases) for the image. Defaults to[ ]
.
- credentials:
- manifestType (
submodule
):- image: Path to the already-deployed image.
- platform:
- architecture (
str
): Architecture of the image. - os (
str
): Operating system of the image.
- architecture (
Example:
deployTerraform
Deploy Terraform code
by performing a terraform apply
over the specified Terraform modules.
Types:
- deployTerraform:
- modules (
attrsOf moduleType
): Optional. Path to Terraform modules to lint. Defaults to{ }
.
- modules (
- moduleType (
submodule
):- setup (
listOf package
): Optional. Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - src (
str
): Path to the Terraform module. - version (
enum [ "0.14" "0.15" "1.0" ]
): Terraform version your module is built with.
- setup (
Example:
taintTerraform
Taint Terraform code
by performing a terraform taint $resource
over the specified Terraform modules.
Types:
- taintTerraform:
- modules (
attrsOf moduleType
): Optional. Path to Terraform modules to lint. Defaults to{ }
.
- modules (
- moduleType (
submodule
):- reDeploy (
bool
): Optional. Perform aterraform apply
after tainting resources. Defaults tofalse
. - resources (
listOf str
): Resources to taint. - setup (
listOf package
): Optional. Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - src (
str
): Path to the Terraform module. - version (
enum [ "0.14" "0.15" "1.0" ]
): Terraform version your module is built with.
- reDeploy (
Example:
deployNomad
Deploy Nomad code
by performing a nomad plan
over the specified Nomad jobs / namespaces.
Types:
- deployNomad:
- jobs (
attrsOf jobsType
): Optional. Path to Nomad jobs to deploy. Defaults to{ }
. - namespaces (
attrsOf namespacesType
): Optional. Path to Nomad namespaces to deploy. Defaults to{ }
.
- jobs (
- jobsType (
submodule
):- setup (
listOf package
): Optional. Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - src (
path
): Path to the Nomad job (hcl or json). - version (
enum [ "1.0" "1.1" ]
): Nomad version your job is built with. Defaults to"1.1"
. - namespace (
str
): Nomad namespace to deploy the job into.
- setup (
- namespacesType (
submodule
):- setup (
listOf package
): Optional. Makes Environment or Makes Secrets tosource
(as in Bash'ssource
) before anything else. Defaults to[ ]
. - jobs (
attrOf path
): Attributes of path to the Nomad jobs (hcl or json). - version (
enum [ "1.0" "1.1" ]
): Nomad version your jobs are built with. Defaults to"1.1"
.
- setup (
Example: