ecs

package
v0.17.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 6, 2019 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	// contains filtered or unexported fields
}

Provides an ECS cluster.

func GetCluster

func GetCluster(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ClusterState, opts ...pulumi.ResourceOpt) (*Cluster, error)

GetCluster gets an existing Cluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCluster

func NewCluster(ctx *pulumi.Context,
	name string, args *ClusterArgs, opts ...pulumi.ResourceOpt) (*Cluster, error)

NewCluster registers a new resource with the given unique name, arguments, and options.

func (*Cluster) Arn

func (r *Cluster) Arn() *pulumi.StringOutput

The Amazon Resource Name (ARN) that identifies the cluster

func (*Cluster) ID

func (r *Cluster) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Cluster) Name

func (r *Cluster) Name() *pulumi.StringOutput

The name of the cluster (up to 255 letters, numbers, hyphens, and underscores)

func (*Cluster) Tags added in v0.16.3

func (r *Cluster) Tags() *pulumi.MapOutput

Key-value mapping of resource tags

func (*Cluster) URN

func (r *Cluster) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ClusterArgs

type ClusterArgs struct {
	// The name of the cluster (up to 255 letters, numbers, hyphens, and underscores)
	Name interface{}
	// Key-value mapping of resource tags
	Tags interface{}
}

The set of arguments for constructing a Cluster resource.

type ClusterState

type ClusterState struct {
	// The Amazon Resource Name (ARN) that identifies the cluster
	Arn interface{}
	// The name of the cluster (up to 255 letters, numbers, hyphens, and underscores)
	Name interface{}
	// Key-value mapping of resource tags
	Tags interface{}
}

Input properties used for looking up and filtering Cluster resources.

type GetClusterArgs

type GetClusterArgs struct {
	// The name of the ECS Cluster
	ClusterName interface{}
}

A collection of arguments for invoking getCluster.

type GetClusterResult

type GetClusterResult struct {
	// The ARN of the ECS Cluster
	Arn interface{}
	// The number of pending tasks for the ECS Cluster
	PendingTasksCount interface{}
	// The number of registered container instances for the ECS Cluster
	RegisteredContainerInstancesCount interface{}
	// The number of running tasks for the ECS Cluster
	RunningTasksCount interface{}
	// The status of the ECS Cluster
	Status interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCluster.

func LookupCluster

func LookupCluster(ctx *pulumi.Context, args *GetClusterArgs) (*GetClusterResult, error)

The ECS Cluster data source allows access to details of a specific cluster within an AWS ECS service.

type GetContainerDefinitionArgs

type GetContainerDefinitionArgs struct {
	// The name of the container definition
	ContainerName interface{}
	// The ARN of the task definition which contains the container
	TaskDefinition interface{}
}

A collection of arguments for invoking getContainerDefinition.

type GetContainerDefinitionResult

type GetContainerDefinitionResult struct {
	// The CPU limit for this container definition
	Cpu interface{}
	// Indicator if networking is disabled
	DisableNetworking interface{}
	// Set docker labels
	DockerLabels interface{}
	// The environment in use
	Environment interface{}
	// The docker image in use, including the digest
	Image interface{}
	// The digest of the docker image in use
	ImageDigest interface{}
	// The memory limit for this container definition
	Memory interface{}
	// The soft limit (in MiB) of memory to reserve for the container. When system memory is under contention, Docker attempts to keep the container memory to this soft limit
	MemoryReservation interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getContainerDefinition.

func LookupContainerDefinition

func LookupContainerDefinition(ctx *pulumi.Context, args *GetContainerDefinitionArgs) (*GetContainerDefinitionResult, error)

The ECS container definition data source allows access to details of a specific container within an AWS ECS service.

type GetServiceArgs

type GetServiceArgs struct {
	// The arn of the ECS Cluster
	ClusterArn interface{}
	// The name of the ECS Service
	ServiceName interface{}
}

A collection of arguments for invoking getService.

type GetServiceResult

type GetServiceResult struct {
	// The ARN of the ECS Service
	Arn interface{}
	// The number of tasks for the ECS Service
	DesiredCount interface{}
	// The launch type for the ECS Service
	LaunchType interface{}
	// The scheduling strategy for the ECS Service
	SchedulingStrategy interface{}
	// The family for the latest ACTIVE revision
	TaskDefinition interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getService.

func LookupService

func LookupService(ctx *pulumi.Context, args *GetServiceArgs) (*GetServiceResult, error)

The ECS Service data source allows access to details of a specific Service within a AWS ECS Cluster.

type GetTaskDefinitionArgs

type GetTaskDefinitionArgs struct {
	// The family for the latest ACTIVE revision, family and revision (family:revision) for a specific revision in the family, the ARN of the task definition to access to.
	TaskDefinition interface{}
}

A collection of arguments for invoking getTaskDefinition.

type GetTaskDefinitionResult

type GetTaskDefinitionResult struct {
	// The family of this task definition
	Family interface{}
	// The Docker networking mode to use for the containers in this task.
	NetworkMode interface{}
	// The revision of this task definition
	Revision interface{}
	// The status of this task definition
	Status interface{}
	// The ARN of the IAM role that containers in this task can assume
	TaskRoleArn interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getTaskDefinition.

func LookupTaskDefinition

func LookupTaskDefinition(ctx *pulumi.Context, args *GetTaskDefinitionArgs) (*GetTaskDefinitionResult, error)

The ECS task definition data source allows access to details of a specific AWS ECS task definition.

type Service

type Service struct {
	// contains filtered or unexported fields
}

> **Note:** To prevent a race condition during service deletion, make sure to set `depends_on` to the related `aws_iam_role_policy`; otherwise, the policy may be destroyed too soon and the ECS service will then get stuck in the `DRAINING` state.

Provides an ECS service - effectively a task that is expected to run until an error occurs or a user terminates it (typically a webserver or a database).

See [ECS Services section in AWS developer guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html).

## deployment_controller

The `deployment_controller` configuration block supports the following:

* `type` - (Optional) Type of deployment controller. Valid values: `CODE_DEPLOY`, `ECS`. Default: `ECS`.

## load_balancer

`load_balancer` supports the following:

* `elb_name` - (Required for ELB Classic) The name of the ELB (Classic) to associate with the service. * `target_group_arn` - (Required for ALB/NLB) The ARN of the Load Balancer target group to associate with the service. * `container_name` - (Required) The name of the container to associate with the load balancer (as it appears in a container definition). * `container_port` - (Required) The port on the container to associate with the load balancer.

> **Note:** As a result of an AWS limitation, a single `load_balancer` can be attached to the ECS service at most. See [related docs](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html#load-balancing-concepts).

## ordered_placement_strategy

`ordered_placement_strategy` supports the following:

  • `type` - (Required) The type of placement strategy. Must be one of: `binpack`, `random`, or `spread`
  • `field` - (Optional) For the `spread` placement strategy, valid values are `instanceId` (or `host`, which has the same effect), or any platform or custom attribute that is applied to a container instance. For the `binpack` type, valid values are `memory` and `cpu`. For the `random` type, this attribute is not needed. For more information, see [Placement Strategy](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PlacementStrategy.html).

> **Note:** for `spread`, `host` and `instanceId` will be normalized, by AWS, to be `instanceId`. This means the statefile will show `instanceId` but your config will differ if you use `host`.

## placement_constraints

`placement_constraints` support the following:

* `type` - (Required) The type of constraint. The only valid values at this time are `memberOf` and `distinctInstance`. * `expression` - (Optional) Cluster Query Language expression to apply to the constraint. Does not need to be specified for the `distinctInstance` type. For more information, see [Cluster Query Language in the Amazon EC2 Container Service Developer Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster-query-language.html).

## network_configuration

`network_configuration` support the following:

* `subnets` - (Required) The subnets associated with the task or service. * `security_groups` - (Optional) The security groups associated with the task or service. If you do not specify a security group, the default security group for the VPC is used. * `assign_public_ip` - (Optional) Assign a public IP address to the ENI (Fargate launch type only). Valid values are `true` or `false`. Default `false`.

For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html)

## service_registries

`service_registries` support the following:

* `registry_arn` - (Required) The ARN of the Service Registry. The currently supported service registry is Amazon Route 53 Auto Naming Service(`aws_service_discovery_service`). For more information, see Service(https://docs.aws.amazon.com/Route53/latest/APIReference/API_autonaming_Service.html) * `port` - (Optional) The port value used if your Service Discovery service specified an SRV record. * `container_port` - (Optional) The port value, already specified in the task definition, to be used for your service discovery service. * `container_name` - (Optional) The container name value, already specified in the task definition, to be used for your service discovery service.

func GetService

func GetService(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ServiceState, opts ...pulumi.ResourceOpt) (*Service, error)

GetService gets an existing Service resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewService

func NewService(ctx *pulumi.Context,
	name string, args *ServiceArgs, opts ...pulumi.ResourceOpt) (*Service, error)

NewService registers a new resource with the given unique name, arguments, and options.

func (*Service) Cluster

func (r *Service) Cluster() *pulumi.StringOutput

ARN of an ECS cluster

func (*Service) DeploymentController added in v0.16.3

func (r *Service) DeploymentController() *pulumi.Output

Configuration block containing deployment controller configuration. Defined below.

func (*Service) DeploymentMaximumPercent

func (r *Service) DeploymentMaximumPercent() *pulumi.IntOutput

The upper limit (as a percentage of the service's desiredCount) of the number of running tasks that can be running in a service during a deployment. Not valid when using the `DAEMON` scheduling strategy.

func (*Service) DeploymentMinimumHealthyPercent

func (r *Service) DeploymentMinimumHealthyPercent() *pulumi.IntOutput

The lower limit (as a percentage of the service's desiredCount) of the number of running tasks that must remain running and healthy in a service during a deployment.

func (*Service) DesiredCount

func (r *Service) DesiredCount() *pulumi.IntOutput

The number of instances of the task definition to place and keep running. Defaults to 0. Do not specify if using the `DAEMON` scheduling strategy.

func (*Service) EnableEcsManagedTags added in v0.16.3

func (r *Service) EnableEcsManagedTags() *pulumi.BoolOutput

Specifies whether to enable Amazon ECS managed tags for the tasks within the service.

func (*Service) HealthCheckGracePeriodSeconds

func (r *Service) HealthCheckGracePeriodSeconds() *pulumi.IntOutput

Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 7200. Only valid for services configured to use load balancers.

func (*Service) ID

func (r *Service) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Service) IamRole

func (r *Service) IamRole() *pulumi.StringOutput

ARN of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is required if you are using a load balancer with your service, but only if your task definition does not use the `awsvpc` network mode. If using `awsvpc` network mode, do not specify this role. If your account has already created the Amazon ECS service-linked role, that role is used by default for your service unless you specify a role here.

func (*Service) LaunchType

func (r *Service) LaunchType() *pulumi.StringOutput

The launch type on which to run your service. The valid values are `EC2` and `FARGATE`. Defaults to `EC2`.

func (*Service) LoadBalancers

func (r *Service) LoadBalancers() *pulumi.ArrayOutput

A load balancer block. Load balancers documented below.

func (*Service) Name

func (r *Service) Name() *pulumi.StringOutput

The name of the service (up to 255 letters, numbers, hyphens, and underscores)

func (*Service) NetworkConfiguration

func (r *Service) NetworkConfiguration() *pulumi.Output

The network configuration for the service. This parameter is required for task definitions that use the `awsvpc` network mode to receive their own Elastic Network Interface, and it is not supported for other network modes.

func (*Service) OrderedPlacementStrategies

func (r *Service) OrderedPlacementStrategies() *pulumi.ArrayOutput

Service level strategy rules that are taken into consideration during task placement. List from top to bottom in order of precedence. The maximum number of `ordered_placement_strategy` blocks is `5`. Defined below.

func (*Service) PlacementConstraints

func (r *Service) PlacementConstraints() *pulumi.ArrayOutput

rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Defined below.

func (*Service) PlacementStrategies

func (r *Service) PlacementStrategies() *pulumi.ArrayOutput

**Deprecated**, use `ordered_placement_strategy` instead.

func (*Service) PlatformVersion added in v0.16.5

func (r *Service) PlatformVersion() *pulumi.StringOutput

The platform version on which to run your service. Only applicable for `launch_type` set to `FARGATE`. Defaults to `LATEST`. More information about Fargate platform versions can be found in the [AWS ECS User Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html).

func (*Service) PropagateTags added in v0.16.4

func (r *Service) PropagateTags() *pulumi.StringOutput

Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are `SERVICE` and `TASK_DEFINITION`.

func (*Service) SchedulingStrategy added in v0.14.1

func (r *Service) SchedulingStrategy() *pulumi.StringOutput

The scheduling strategy to use for the service. The valid values are `REPLICA` and `DAEMON`. Defaults to `REPLICA`. Note that [*Fargate tasks do not support the `DAEMON` scheduling strategy*](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduling_tasks.html).

func (*Service) ServiceRegistries

func (r *Service) ServiceRegistries() *pulumi.Output

The service discovery registries for the service. The maximum number of `service_registries` blocks is `1`.

func (*Service) Tags added in v0.16.3

func (r *Service) Tags() *pulumi.MapOutput

Key-value mapping of resource tags

func (*Service) TaskDefinition

func (r *Service) TaskDefinition() *pulumi.StringOutput

The family and revision (`family:revision`) or full ARN of the task definition that you want to run in your service.

func (*Service) URN

func (r *Service) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*Service) WaitForSteadyState

func (r *Service) WaitForSteadyState() *pulumi.BoolOutput

If `true`, Terraform will wait for the service to reach a steady state (like [`aws ecs wait services-stable`](https://docs.aws.amazon.com/cli/latest/reference/ecs/wait/services-stable.html)) before continuing. Default `false`. =======

type ServiceArgs

type ServiceArgs struct {
	// ARN of an ECS cluster
	Cluster interface{}
	// Configuration block containing deployment controller configuration. Defined below.
	DeploymentController interface{}
	// The upper limit (as a percentage of the service's desiredCount) of the number of running tasks that can be running in a service during a deployment. Not valid when using the `DAEMON` scheduling strategy.
	DeploymentMaximumPercent interface{}
	// The lower limit (as a percentage of the service's desiredCount) of the number of running tasks that must remain running and healthy in a service during a deployment.
	DeploymentMinimumHealthyPercent interface{}
	// The number of instances of the task definition to place and keep running. Defaults to 0. Do not specify if using the `DAEMON` scheduling strategy.
	DesiredCount interface{}
	// Specifies whether to enable Amazon ECS managed tags for the tasks within the service.
	EnableEcsManagedTags interface{}
	// Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 7200. Only valid for services configured to use load balancers.
	HealthCheckGracePeriodSeconds interface{}
	// ARN of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is required if you are using a load balancer with your service, but only if your task definition does not use the `awsvpc` network mode. If using `awsvpc` network mode, do not specify this role. If your account has already created the Amazon ECS service-linked role, that role is used by default for your service unless you specify a role here.
	IamRole interface{}
	// The launch type on which to run your service. The valid values are `EC2` and `FARGATE`. Defaults to `EC2`.
	LaunchType interface{}
	// A load balancer block. Load balancers documented below.
	LoadBalancers interface{}
	// The name of the service (up to 255 letters, numbers, hyphens, and underscores)
	Name interface{}
	// The network configuration for the service. This parameter is required for task definitions that use the `awsvpc` network mode to receive their own Elastic Network Interface, and it is not supported for other network modes.
	NetworkConfiguration interface{}
	// Service level strategy rules that are taken into consideration during task placement. List from top to bottom in order of precedence. The maximum number of `ordered_placement_strategy` blocks is `5`. Defined below.
	OrderedPlacementStrategies interface{}
	// rules that are taken into consideration during task placement. Maximum number of
	// `placement_constraints` is `10`. Defined below.
	PlacementConstraints interface{}
	// **Deprecated**, use `ordered_placement_strategy` instead.
	PlacementStrategies interface{}
	// The platform version on which to run your service. Only applicable for `launch_type` set to `FARGATE`. Defaults to `LATEST`. More information about Fargate platform versions can be found in the [AWS ECS User Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html).
	PlatformVersion interface{}
	// Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are `SERVICE` and `TASK_DEFINITION`.
	PropagateTags interface{}
	// The scheduling strategy to use for the service. The valid values are `REPLICA` and `DAEMON`. Defaults to `REPLICA`. Note that [*Fargate tasks do not support the `DAEMON` scheduling strategy*](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduling_tasks.html).
	SchedulingStrategy interface{}
	// The service discovery registries for the service. The maximum number of `service_registries` blocks is `1`.
	ServiceRegistries interface{}
	// Key-value mapping of resource tags
	Tags interface{}
	// The family and revision (`family:revision`) or full ARN of the task definition that you want to run in your service.
	TaskDefinition interface{}
	// If `true`, Terraform will wait for the service to reach a steady state (like [`aws ecs wait services-stable`](https://docs.aws.amazon.com/cli/latest/reference/ecs/wait/services-stable.html)) before continuing. Default `false`.
	// =======
	WaitForSteadyState interface{}
}

The set of arguments for constructing a Service resource.

type ServiceState

type ServiceState struct {
	// ARN of an ECS cluster
	Cluster interface{}
	// Configuration block containing deployment controller configuration. Defined below.
	DeploymentController interface{}
	// The upper limit (as a percentage of the service's desiredCount) of the number of running tasks that can be running in a service during a deployment. Not valid when using the `DAEMON` scheduling strategy.
	DeploymentMaximumPercent interface{}
	// The lower limit (as a percentage of the service's desiredCount) of the number of running tasks that must remain running and healthy in a service during a deployment.
	DeploymentMinimumHealthyPercent interface{}
	// The number of instances of the task definition to place and keep running. Defaults to 0. Do not specify if using the `DAEMON` scheduling strategy.
	DesiredCount interface{}
	// Specifies whether to enable Amazon ECS managed tags for the tasks within the service.
	EnableEcsManagedTags interface{}
	// Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 7200. Only valid for services configured to use load balancers.
	HealthCheckGracePeriodSeconds interface{}
	// ARN of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is required if you are using a load balancer with your service, but only if your task definition does not use the `awsvpc` network mode. If using `awsvpc` network mode, do not specify this role. If your account has already created the Amazon ECS service-linked role, that role is used by default for your service unless you specify a role here.
	IamRole interface{}
	// The launch type on which to run your service. The valid values are `EC2` and `FARGATE`. Defaults to `EC2`.
	LaunchType interface{}
	// A load balancer block. Load balancers documented below.
	LoadBalancers interface{}
	// The name of the service (up to 255 letters, numbers, hyphens, and underscores)
	Name interface{}
	// The network configuration for the service. This parameter is required for task definitions that use the `awsvpc` network mode to receive their own Elastic Network Interface, and it is not supported for other network modes.
	NetworkConfiguration interface{}
	// Service level strategy rules that are taken into consideration during task placement. List from top to bottom in order of precedence. The maximum number of `ordered_placement_strategy` blocks is `5`. Defined below.
	OrderedPlacementStrategies interface{}
	// rules that are taken into consideration during task placement. Maximum number of
	// `placement_constraints` is `10`. Defined below.
	PlacementConstraints interface{}
	// **Deprecated**, use `ordered_placement_strategy` instead.
	PlacementStrategies interface{}
	// The platform version on which to run your service. Only applicable for `launch_type` set to `FARGATE`. Defaults to `LATEST`. More information about Fargate platform versions can be found in the [AWS ECS User Guide](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html).
	PlatformVersion interface{}
	// Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are `SERVICE` and `TASK_DEFINITION`.
	PropagateTags interface{}
	// The scheduling strategy to use for the service. The valid values are `REPLICA` and `DAEMON`. Defaults to `REPLICA`. Note that [*Fargate tasks do not support the `DAEMON` scheduling strategy*](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduling_tasks.html).
	SchedulingStrategy interface{}
	// The service discovery registries for the service. The maximum number of `service_registries` blocks is `1`.
	ServiceRegistries interface{}
	// Key-value mapping of resource tags
	Tags interface{}
	// The family and revision (`family:revision`) or full ARN of the task definition that you want to run in your service.
	TaskDefinition interface{}
	// If `true`, Terraform will wait for the service to reach a steady state (like [`aws ecs wait services-stable`](https://docs.aws.amazon.com/cli/latest/reference/ecs/wait/services-stable.html)) before continuing. Default `false`.
	// =======
	WaitForSteadyState interface{}
}

Input properties used for looking up and filtering Service resources.

type TaskDefinition

type TaskDefinition struct {
	// contains filtered or unexported fields
}

Manages a revision of an ECS task definition to be used in `aws_ecs_service`.

func GetTaskDefinition

func GetTaskDefinition(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TaskDefinitionState, opts ...pulumi.ResourceOpt) (*TaskDefinition, error)

GetTaskDefinition gets an existing TaskDefinition resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTaskDefinition

func NewTaskDefinition(ctx *pulumi.Context,
	name string, args *TaskDefinitionArgs, opts ...pulumi.ResourceOpt) (*TaskDefinition, error)

NewTaskDefinition registers a new resource with the given unique name, arguments, and options.

func (*TaskDefinition) Arn

Full ARN of the Task Definition (including both `family` and `revision`).

func (*TaskDefinition) ContainerDefinitions

func (r *TaskDefinition) ContainerDefinitions() *pulumi.StringOutput

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).

func (*TaskDefinition) Cpu

The number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.

func (*TaskDefinition) ExecutionRoleArn

func (r *TaskDefinition) ExecutionRoleArn() *pulumi.StringOutput

The Amazon Resource Name (ARN) of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.

func (*TaskDefinition) Family

func (r *TaskDefinition) Family() *pulumi.StringOutput

A unique name for your task definition.

func (*TaskDefinition) ID

func (r *TaskDefinition) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TaskDefinition) IpcMode added in v0.16.3

func (r *TaskDefinition) IpcMode() *pulumi.StringOutput

The IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.

func (*TaskDefinition) Memory

func (r *TaskDefinition) Memory() *pulumi.StringOutput

The amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.

func (*TaskDefinition) NetworkMode

func (r *TaskDefinition) NetworkMode() *pulumi.StringOutput

The Docker networking mode to use for the containers in the task. The valid values are `none`, `bridge`, `awsvpc`, and `host`.

func (*TaskDefinition) PidMode added in v0.16.3

func (r *TaskDefinition) PidMode() *pulumi.StringOutput

The process namespace to use for the containers in the task. The valid values are `host` and `task`.

func (*TaskDefinition) PlacementConstraints

func (r *TaskDefinition) PlacementConstraints() *pulumi.ArrayOutput

A set of placement constraints rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`.

func (*TaskDefinition) RequiresCompatibilities

func (r *TaskDefinition) RequiresCompatibilities() *pulumi.ArrayOutput

A set of launch types required by the task. The valid values are `EC2` and `FARGATE`.

func (*TaskDefinition) Revision

func (r *TaskDefinition) Revision() *pulumi.IntOutput

The revision of the task in a particular family.

func (*TaskDefinition) Tags added in v0.16.3

func (r *TaskDefinition) Tags() *pulumi.MapOutput

Key-value mapping of resource tags

func (*TaskDefinition) TaskRoleArn

func (r *TaskDefinition) TaskRoleArn() *pulumi.StringOutput

The ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.

func (*TaskDefinition) URN

func (r *TaskDefinition) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*TaskDefinition) Volumes

func (r *TaskDefinition) Volumes() *pulumi.ArrayOutput

A set of volume blocks that containers in your task may use.

type TaskDefinitionArgs

type TaskDefinitionArgs struct {
	// 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).
	ContainerDefinitions interface{}
	// The number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
	Cpu interface{}
	// The Amazon Resource Name (ARN) of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
	ExecutionRoleArn interface{}
	// A unique name for your task definition.
	Family interface{}
	// The IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
	IpcMode interface{}
	// The amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
	Memory interface{}
	// The Docker networking mode to use for the containers in the task. The valid values are `none`, `bridge`, `awsvpc`, and `host`.
	NetworkMode interface{}
	// The process namespace to use for the containers in the task. The valid values are `host` and `task`.
	PidMode interface{}
	// A set of placement constraints rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`.
	PlacementConstraints interface{}
	// A set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
	RequiresCompatibilities interface{}
	// Key-value mapping of resource tags
	Tags interface{}
	// The ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	TaskRoleArn interface{}
	// A set of volume blocks that containers in your task may use.
	Volumes interface{}
}

The set of arguments for constructing a TaskDefinition resource.

type TaskDefinitionState

type TaskDefinitionState struct {
	// Full ARN of the Task Definition (including both `family` and `revision`).
	Arn interface{}
	// 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).
	ContainerDefinitions interface{}
	// The number of cpu units used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
	Cpu interface{}
	// The Amazon Resource Name (ARN) of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
	ExecutionRoleArn interface{}
	// A unique name for your task definition.
	Family interface{}
	// The IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
	IpcMode interface{}
	// The amount (in MiB) of memory used by the task. If the `requires_compatibilities` is `FARGATE` this field is required.
	Memory interface{}
	// The Docker networking mode to use for the containers in the task. The valid values are `none`, `bridge`, `awsvpc`, and `host`.
	NetworkMode interface{}
	// The process namespace to use for the containers in the task. The valid values are `host` and `task`.
	PidMode interface{}
	// A set of placement constraints rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`.
	PlacementConstraints interface{}
	// A set of launch types required by the task. The valid values are `EC2` and `FARGATE`.
	RequiresCompatibilities interface{}
	// The revision of the task in a particular family.
	Revision interface{}
	// Key-value mapping of resource tags
	Tags interface{}
	// The ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	TaskRoleArn interface{}
	// A set of volume blocks that containers in your task may use.
	Volumes interface{}
}

Input properties used for looking up and filtering TaskDefinition resources.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL