Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.ecs.inputs.TaskDefinitionState Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.ecs.inputs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionEphemeralStorageArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionInferenceAcceleratorArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionPlacementConstraintArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionProxyConfigurationArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionRuntimePlatformArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class TaskDefinitionState extends com.pulumi.resources.ResourceArgs {
public static final TaskDefinitionState Empty = new TaskDefinitionState();
/**
* Full ARN of the Task Definition (including both `family` and `revision`).
*
*/
@Import(name="arn")
private @Nullable Output arn;
/**
* @return Full ARN of the Task Definition (including both `family` and `revision`).
*
*/
public Optional> arn() {
return Optional.ofNullable(this.arn);
}
/**
* ARN of the Task Definition with the trailing `revision` removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the [AWS documentation](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_StartTask.html#ECS-StartTask-request-taskDefinition) for details.
*
*/
@Import(name="arnWithoutRevision")
private @Nullable Output arnWithoutRevision;
/**
* @return ARN of the Task Definition with the trailing `revision` removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the [AWS documentation](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_StartTask.html#ECS-StartTask-request-taskDefinition) for details.
*
*/
public Optional> arnWithoutRevision() {
return Optional.ofNullable(this.arnWithoutRevision);
}
/**
* A list of valid [container definitions](http://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html) provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) section from the official [Developer Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide).
*
*/
@Import(name="containerDefinitions")
private @Nullable Output containerDefinitions;
/**
* @return A list of valid [container definitions](http://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html) provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) section from the official [Developer Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide).
*
*/
public Optional> containerDefinitions() {
return Optional.ofNullable(this.containerDefinitions);
}
/**
* Number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
*/
@Import(name="cpu")
private @Nullable Output cpu;
/**
* @return Number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
*/
public Optional> cpu() {
return Optional.ofNullable(this.cpu);
}
/**
* The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate. See Ephemeral Storage.
*
*/
@Import(name="ephemeralStorage")
private @Nullable Output ephemeralStorage;
/**
* @return The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate. See Ephemeral Storage.
*
*/
public Optional> ephemeralStorage() {
return Optional.ofNullable(this.ephemeralStorage);
}
/**
* ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
*
*/
@Import(name="executionRoleArn")
private @Nullable Output executionRoleArn;
/**
* @return ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
*
*/
public Optional> executionRoleArn() {
return Optional.ofNullable(this.executionRoleArn);
}
/**
* A unique name for your task definition.
*
* The following arguments are optional:
*
*/
@Import(name="family")
private @Nullable Output family;
/**
* @return A unique name for your task definition.
*
* The following arguments are optional:
*
*/
public Optional> family() {
return Optional.ofNullable(this.family);
}
/**
* Configuration block(s) with Inference Accelerators settings. Detailed below.
*
*/
@Import(name="inferenceAccelerators")
private @Nullable Output> inferenceAccelerators;
/**
* @return Configuration block(s) with Inference Accelerators settings. Detailed below.
*
*/
public Optional>> inferenceAccelerators() {
return Optional.ofNullable(this.inferenceAccelerators);
}
/**
* IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
*
*/
@Import(name="ipcMode")
private @Nullable Output ipcMode;
/**
* @return IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
*
*/
public Optional> ipcMode() {
return Optional.ofNullable(this.ipcMode);
}
/**
* Amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
*/
@Import(name="memory")
private @Nullable Output memory;
/**
* @return Amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
*/
public Optional> memory() {
return Optional.ofNullable(this.memory);
}
/**
* Docker networking mode to use for the containers in the task. Valid values are `none`, `bridge`, `awsvpc`, and `host`.
*
*/
@Import(name="networkMode")
private @Nullable Output networkMode;
/**
* @return Docker networking mode to use for the containers in the task. Valid values are `none`, `bridge`, `awsvpc`, and `host`.
*
*/
public Optional> networkMode() {
return Optional.ofNullable(this.networkMode);
}
/**
* Process namespace to use for the containers in the task. The valid values are `host` and `task`.
*
*/
@Import(name="pidMode")
private @Nullable Output pidMode;
/**
* @return Process namespace to use for the containers in the task. The valid values are `host` and `task`.
*
*/
public Optional> pidMode() {
return Optional.ofNullable(this.pidMode);
}
/**
* Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
*
*/
@Import(name="placementConstraints")
private @Nullable Output> placementConstraints;
/**
* @return Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
*
*/
public Optional>> placementConstraints() {
return Optional.ofNullable(this.placementConstraints);
}
/**
* Configuration block for the App Mesh proxy. Detailed below.
*
*/
@Import(name="proxyConfiguration")
private @Nullable Output proxyConfiguration;
/**
* @return Configuration block for the App Mesh proxy. Detailed below.
*
*/
public Optional> proxyConfiguration() {
return Optional.ofNullable(this.proxyConfiguration);
}
/**
* Set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
*
*/
@Import(name="requiresCompatibilities")
private @Nullable Output> requiresCompatibilities;
/**
* @return Set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
*
*/
public Optional>> requiresCompatibilities() {
return Optional.ofNullable(this.requiresCompatibilities);
}
/**
* Revision of the task in a particular family.
*
*/
@Import(name="revision")
private @Nullable Output revision;
/**
* @return Revision of the task in a particular family.
*
*/
public Optional> revision() {
return Optional.ofNullable(this.revision);
}
/**
* Configuration block for runtime_platform that containers in your task may use.
*
*/
@Import(name="runtimePlatform")
private @Nullable Output runtimePlatform;
/**
* @return Configuration block for runtime_platform that containers in your task may use.
*
*/
public Optional> runtimePlatform() {
return Optional.ofNullable(this.runtimePlatform);
}
/**
* Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is `false`.
*
*/
@Import(name="skipDestroy")
private @Nullable Output skipDestroy;
/**
* @return Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is `false`.
*
*/
public Optional> skipDestroy() {
return Optional.ofNullable(this.skipDestroy);
}
/**
* Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
@Import(name="tagsAll")
private @Nullable Output> tagsAll;
/**
* @return Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Optional>> tagsAll() {
return Optional.ofNullable(this.tagsAll);
}
/**
* ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
*
*/
@Import(name="taskRoleArn")
private @Nullable Output taskRoleArn;
/**
* @return ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
*
*/
public Optional> taskRoleArn() {
return Optional.ofNullable(this.taskRoleArn);
}
/**
* Whether should track latest `ACTIVE` task definition on AWS or the one created with the resource stored in state. Default is `false`. Useful in the event the task definition is modified outside of this resource.
*
*/
@Import(name="trackLatest")
private @Nullable Output trackLatest;
/**
* @return Whether should track latest `ACTIVE` task definition on AWS or the one created with the resource stored in state. Default is `false`. Useful in the event the task definition is modified outside of this resource.
*
*/
public Optional> trackLatest() {
return Optional.ofNullable(this.trackLatest);
}
/**
* Configuration block for volumes that containers in your task may use. Detailed below.
*
*/
@Import(name="volumes")
private @Nullable Output> volumes;
/**
* @return Configuration block for volumes that containers in your task may use. Detailed below.
*
*/
public Optional>> volumes() {
return Optional.ofNullable(this.volumes);
}
private TaskDefinitionState() {}
private TaskDefinitionState(TaskDefinitionState $) {
this.arn = $.arn;
this.arnWithoutRevision = $.arnWithoutRevision;
this.containerDefinitions = $.containerDefinitions;
this.cpu = $.cpu;
this.ephemeralStorage = $.ephemeralStorage;
this.executionRoleArn = $.executionRoleArn;
this.family = $.family;
this.inferenceAccelerators = $.inferenceAccelerators;
this.ipcMode = $.ipcMode;
this.memory = $.memory;
this.networkMode = $.networkMode;
this.pidMode = $.pidMode;
this.placementConstraints = $.placementConstraints;
this.proxyConfiguration = $.proxyConfiguration;
this.requiresCompatibilities = $.requiresCompatibilities;
this.revision = $.revision;
this.runtimePlatform = $.runtimePlatform;
this.skipDestroy = $.skipDestroy;
this.tags = $.tags;
this.tagsAll = $.tagsAll;
this.taskRoleArn = $.taskRoleArn;
this.trackLatest = $.trackLatest;
this.volumes = $.volumes;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(TaskDefinitionState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private TaskDefinitionState $;
public Builder() {
$ = new TaskDefinitionState();
}
public Builder(TaskDefinitionState defaults) {
$ = new TaskDefinitionState(Objects.requireNonNull(defaults));
}
/**
* @param arn Full ARN of the Task Definition (including both `family` and `revision`).
*
* @return builder
*
*/
public Builder arn(@Nullable Output arn) {
$.arn = arn;
return this;
}
/**
* @param arn Full ARN of the Task Definition (including both `family` and `revision`).
*
* @return builder
*
*/
public Builder arn(String arn) {
return arn(Output.of(arn));
}
/**
* @param arnWithoutRevision ARN of the Task Definition with the trailing `revision` removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the [AWS documentation](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_StartTask.html#ECS-StartTask-request-taskDefinition) for details.
*
* @return builder
*
*/
public Builder arnWithoutRevision(@Nullable Output arnWithoutRevision) {
$.arnWithoutRevision = arnWithoutRevision;
return this;
}
/**
* @param arnWithoutRevision ARN of the Task Definition with the trailing `revision` removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the [AWS documentation](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_StartTask.html#ECS-StartTask-request-taskDefinition) for details.
*
* @return builder
*
*/
public Builder arnWithoutRevision(String arnWithoutRevision) {
return arnWithoutRevision(Output.of(arnWithoutRevision));
}
/**
* @param containerDefinitions A list of valid [container definitions](http://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html) provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) section from the official [Developer Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide).
*
* @return builder
*
*/
public Builder containerDefinitions(@Nullable Output containerDefinitions) {
$.containerDefinitions = containerDefinitions;
return this;
}
/**
* @param containerDefinitions A list of valid [container definitions](http://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html) provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the [Task Definition Parameters](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html) section from the official [Developer Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide).
*
* @return builder
*
*/
public Builder containerDefinitions(String containerDefinitions) {
return containerDefinitions(Output.of(containerDefinitions));
}
/**
* @param cpu Number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
* @return builder
*
*/
public Builder cpu(@Nullable Output cpu) {
$.cpu = cpu;
return this;
}
/**
* @param cpu Number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
* @return builder
*
*/
public Builder cpu(String cpu) {
return cpu(Output.of(cpu));
}
/**
* @param ephemeralStorage The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate. See Ephemeral Storage.
*
* @return builder
*
*/
public Builder ephemeralStorage(@Nullable Output ephemeralStorage) {
$.ephemeralStorage = ephemeralStorage;
return this;
}
/**
* @param ephemeralStorage The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate. See Ephemeral Storage.
*
* @return builder
*
*/
public Builder ephemeralStorage(TaskDefinitionEphemeralStorageArgs ephemeralStorage) {
return ephemeralStorage(Output.of(ephemeralStorage));
}
/**
* @param executionRoleArn ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
*
* @return builder
*
*/
public Builder executionRoleArn(@Nullable Output executionRoleArn) {
$.executionRoleArn = executionRoleArn;
return this;
}
/**
* @param executionRoleArn ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
*
* @return builder
*
*/
public Builder executionRoleArn(String executionRoleArn) {
return executionRoleArn(Output.of(executionRoleArn));
}
/**
* @param family A unique name for your task definition.
*
* The following arguments are optional:
*
* @return builder
*
*/
public Builder family(@Nullable Output family) {
$.family = family;
return this;
}
/**
* @param family A unique name for your task definition.
*
* The following arguments are optional:
*
* @return builder
*
*/
public Builder family(String family) {
return family(Output.of(family));
}
/**
* @param inferenceAccelerators Configuration block(s) with Inference Accelerators settings. Detailed below.
*
* @return builder
*
*/
public Builder inferenceAccelerators(@Nullable Output> inferenceAccelerators) {
$.inferenceAccelerators = inferenceAccelerators;
return this;
}
/**
* @param inferenceAccelerators Configuration block(s) with Inference Accelerators settings. Detailed below.
*
* @return builder
*
*/
public Builder inferenceAccelerators(List inferenceAccelerators) {
return inferenceAccelerators(Output.of(inferenceAccelerators));
}
/**
* @param inferenceAccelerators Configuration block(s) with Inference Accelerators settings. Detailed below.
*
* @return builder
*
*/
public Builder inferenceAccelerators(TaskDefinitionInferenceAcceleratorArgs... inferenceAccelerators) {
return inferenceAccelerators(List.of(inferenceAccelerators));
}
/**
* @param ipcMode IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
*
* @return builder
*
*/
public Builder ipcMode(@Nullable Output ipcMode) {
$.ipcMode = ipcMode;
return this;
}
/**
* @param ipcMode IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
*
* @return builder
*
*/
public Builder ipcMode(String ipcMode) {
return ipcMode(Output.of(ipcMode));
}
/**
* @param memory Amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
* @return builder
*
*/
public Builder memory(@Nullable Output memory) {
$.memory = memory;
return this;
}
/**
* @param memory Amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
*
* @return builder
*
*/
public Builder memory(String memory) {
return memory(Output.of(memory));
}
/**
* @param networkMode Docker networking mode to use for the containers in the task. Valid values are `none`, `bridge`, `awsvpc`, and `host`.
*
* @return builder
*
*/
public Builder networkMode(@Nullable Output networkMode) {
$.networkMode = networkMode;
return this;
}
/**
* @param networkMode Docker networking mode to use for the containers in the task. Valid values are `none`, `bridge`, `awsvpc`, and `host`.
*
* @return builder
*
*/
public Builder networkMode(String networkMode) {
return networkMode(Output.of(networkMode));
}
/**
* @param pidMode Process namespace to use for the containers in the task. The valid values are `host` and `task`.
*
* @return builder
*
*/
public Builder pidMode(@Nullable Output pidMode) {
$.pidMode = pidMode;
return this;
}
/**
* @param pidMode Process namespace to use for the containers in the task. The valid values are `host` and `task`.
*
* @return builder
*
*/
public Builder pidMode(String pidMode) {
return pidMode(Output.of(pidMode));
}
/**
* @param placementConstraints Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
*
* @return builder
*
*/
public Builder placementConstraints(@Nullable Output> placementConstraints) {
$.placementConstraints = placementConstraints;
return this;
}
/**
* @param placementConstraints Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
*
* @return builder
*
*/
public Builder placementConstraints(List placementConstraints) {
return placementConstraints(Output.of(placementConstraints));
}
/**
* @param placementConstraints Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
*
* @return builder
*
*/
public Builder placementConstraints(TaskDefinitionPlacementConstraintArgs... placementConstraints) {
return placementConstraints(List.of(placementConstraints));
}
/**
* @param proxyConfiguration Configuration block for the App Mesh proxy. Detailed below.
*
* @return builder
*
*/
public Builder proxyConfiguration(@Nullable Output proxyConfiguration) {
$.proxyConfiguration = proxyConfiguration;
return this;
}
/**
* @param proxyConfiguration Configuration block for the App Mesh proxy. Detailed below.
*
* @return builder
*
*/
public Builder proxyConfiguration(TaskDefinitionProxyConfigurationArgs proxyConfiguration) {
return proxyConfiguration(Output.of(proxyConfiguration));
}
/**
* @param requiresCompatibilities Set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
*
* @return builder
*
*/
public Builder requiresCompatibilities(@Nullable Output> requiresCompatibilities) {
$.requiresCompatibilities = requiresCompatibilities;
return this;
}
/**
* @param requiresCompatibilities Set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
*
* @return builder
*
*/
public Builder requiresCompatibilities(List requiresCompatibilities) {
return requiresCompatibilities(Output.of(requiresCompatibilities));
}
/**
* @param requiresCompatibilities Set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
*
* @return builder
*
*/
public Builder requiresCompatibilities(String... requiresCompatibilities) {
return requiresCompatibilities(List.of(requiresCompatibilities));
}
/**
* @param revision Revision of the task in a particular family.
*
* @return builder
*
*/
public Builder revision(@Nullable Output revision) {
$.revision = revision;
return this;
}
/**
* @param revision Revision of the task in a particular family.
*
* @return builder
*
*/
public Builder revision(Integer revision) {
return revision(Output.of(revision));
}
/**
* @param runtimePlatform Configuration block for runtime_platform that containers in your task may use.
*
* @return builder
*
*/
public Builder runtimePlatform(@Nullable Output runtimePlatform) {
$.runtimePlatform = runtimePlatform;
return this;
}
/**
* @param runtimePlatform Configuration block for runtime_platform that containers in your task may use.
*
* @return builder
*
*/
public Builder runtimePlatform(TaskDefinitionRuntimePlatformArgs runtimePlatform) {
return runtimePlatform(Output.of(runtimePlatform));
}
/**
* @param skipDestroy Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is `false`.
*
* @return builder
*
*/
public Builder skipDestroy(@Nullable Output skipDestroy) {
$.skipDestroy = skipDestroy;
return this;
}
/**
* @param skipDestroy Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is `false`.
*
* @return builder
*
*/
public Builder skipDestroy(Boolean skipDestroy) {
return skipDestroy(Output.of(skipDestroy));
}
/**
* @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
/**
* @param tagsAll Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @return builder
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Builder tagsAll(@Nullable Output> tagsAll) {
$.tagsAll = tagsAll;
return this;
}
/**
* @param tagsAll Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @return builder
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Builder tagsAll(Map tagsAll) {
return tagsAll(Output.of(tagsAll));
}
/**
* @param taskRoleArn ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
*
* @return builder
*
*/
public Builder taskRoleArn(@Nullable Output taskRoleArn) {
$.taskRoleArn = taskRoleArn;
return this;
}
/**
* @param taskRoleArn ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
*
* @return builder
*
*/
public Builder taskRoleArn(String taskRoleArn) {
return taskRoleArn(Output.of(taskRoleArn));
}
/**
* @param trackLatest Whether should track latest `ACTIVE` task definition on AWS or the one created with the resource stored in state. Default is `false`. Useful in the event the task definition is modified outside of this resource.
*
* @return builder
*
*/
public Builder trackLatest(@Nullable Output trackLatest) {
$.trackLatest = trackLatest;
return this;
}
/**
* @param trackLatest Whether should track latest `ACTIVE` task definition on AWS or the one created with the resource stored in state. Default is `false`. Useful in the event the task definition is modified outside of this resource.
*
* @return builder
*
*/
public Builder trackLatest(Boolean trackLatest) {
return trackLatest(Output.of(trackLatest));
}
/**
* @param volumes Configuration block for volumes that containers in your task may use. Detailed below.
*
* @return builder
*
*/
public Builder volumes(@Nullable Output> volumes) {
$.volumes = volumes;
return this;
}
/**
* @param volumes Configuration block for volumes that containers in your task may use. Detailed below.
*
* @return builder
*
*/
public Builder volumes(List volumes) {
return volumes(Output.of(volumes));
}
/**
* @param volumes Configuration block for volumes that containers in your task may use. Detailed below.
*
* @return builder
*
*/
public Builder volumes(TaskDefinitionVolumeArgs... volumes) {
return volumes(List.of(volumes));
}
public TaskDefinitionState build() {
return $;
}
}
}