ecs

package
v1.0.0-testplsignore.0 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2022 License: Apache-2.0 Imports: 12 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EC2Service

type EC2Service struct {
	pulumi.ResourceState

	// Underlying ECS Service resource
	Service ecs.ServiceOutput `pulumi:"service"`
	// Underlying EC2 Task definition component resource if created from args
	TaskDefinition ecs.TaskDefinitionOutput `pulumi:"taskDefinition"`
}

Create an ECS Service resource for EC2 with the given unique name, arguments, and options. Creates Task definition if `taskDefinitionArgs` is specified.

func NewEC2Service

func NewEC2Service(ctx *pulumi.Context,
	name string, args *EC2ServiceArgs, opts ...pulumi.ResourceOption) (*EC2Service, error)

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

func (*EC2Service) ElementType

func (*EC2Service) ElementType() reflect.Type

func (*EC2Service) ToEC2ServiceOutput

func (i *EC2Service) ToEC2ServiceOutput() EC2ServiceOutput

func (*EC2Service) ToEC2ServiceOutputWithContext

func (i *EC2Service) ToEC2ServiceOutputWithContext(ctx context.Context) EC2ServiceOutput

type EC2ServiceArgs

type EC2ServiceArgs struct {
	// ARN of an ECS cluster.
	Cluster pulumi.StringPtrInput
	// If `true`, this provider will not 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`.
	ContinueBeforeSteadyState pulumi.BoolPtrInput
	// Configuration block for deployment circuit breaker. See below.
	DeploymentCircuitBreaker ecs.ServiceDeploymentCircuitBreakerPtrInput
	// Configuration block for deployment controller configuration. See below.
	DeploymentController ecs.ServiceDeploymentControllerPtrInput
	// 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 pulumi.IntPtrInput
	// 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 pulumi.IntPtrInput
	// 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 pulumi.IntPtrInput
	// Specifies whether to enable Amazon ECS managed tags for the tasks within the service.
	EnableEcsManagedTags pulumi.BoolPtrInput
	// Specifies whether to enable Amazon ECS Exec for the tasks within the service.
	EnableExecuteCommand pulumi.BoolPtrInput
	// Enable to force a new task deployment of the service. This can be used to update tasks to use a newer Docker image with same image/tag combination (e.g., `myimage:latest`), roll Fargate tasks onto a newer platform version, or immediately deploy `ordered_placement_strategy` and `placement_constraints` updates.
	ForceNewDeployment pulumi.BoolPtrInput
	// Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 2147483647. Only valid for services configured to use load balancers.
	HealthCheckGracePeriodSeconds pulumi.IntPtrInput
	// 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 pulumi.StringPtrInput
	// Configuration block for load balancers. See below.
	LoadBalancers ecs.ServiceLoadBalancerArrayInput
	// Name of the service (up to 255 letters, numbers, hyphens, and underscores)
	Name pulumi.StringPtrInput
	// 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. See below.
	NetworkConfiguration ecs.ServiceNetworkConfigurationInput
	// Service level strategy rules that are taken into consideration during task placement. List from top to bottom in order of precedence. Updates to this configuration will take effect next task deployment unless `force_new_deployment` is enabled. The maximum number of `ordered_placement_strategy` blocks is `5`. See below.
	OrderedPlacementStrategies ecs.ServiceOrderedPlacementStrategyArrayInput
	// Rules that are taken into consideration during task placement. Updates to this configuration will take effect next task deployment unless `force_new_deployment` is enabled. Maximum number of `placement_constraints` is `10`. See below.
	PlacementConstraints ecs.ServicePlacementConstraintArrayInput
	// 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 pulumi.StringPtrInput
	// 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 pulumi.StringPtrInput
	// Scheduling strategy to use for the service. The valid values are `REPLICA` and `DAEMON`. Defaults to `REPLICA`. Note that [*Tasks using the Fargate launch type or the `CODE_DEPLOY` or `EXTERNAL` deployment controller types don't support the `DAEMON` scheduling strategy*](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html).
	SchedulingStrategy pulumi.StringPtrInput
	// Service discovery registries for the service. The maximum number of `service_registries` blocks is `1`. See below.
	ServiceRegistries ecs.ServiceServiceRegistriesPtrInput
	// 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.
	Tags pulumi.StringMapInput
	// Family and revision (`family:revision`) or full ARN of the task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.
	TaskDefinition pulumi.StringPtrInput
	// The args of task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.
	TaskDefinitionArgs *EC2ServiceTaskDefinition
}

The set of arguments for constructing a EC2Service resource.

func (EC2ServiceArgs) ElementType

func (EC2ServiceArgs) ElementType() reflect.Type

type EC2ServiceArray

type EC2ServiceArray []EC2ServiceInput

func (EC2ServiceArray) ElementType

func (EC2ServiceArray) ElementType() reflect.Type

func (EC2ServiceArray) ToEC2ServiceArrayOutput

func (i EC2ServiceArray) ToEC2ServiceArrayOutput() EC2ServiceArrayOutput

func (EC2ServiceArray) ToEC2ServiceArrayOutputWithContext

func (i EC2ServiceArray) ToEC2ServiceArrayOutputWithContext(ctx context.Context) EC2ServiceArrayOutput

type EC2ServiceArrayInput

type EC2ServiceArrayInput interface {
	pulumi.Input

	ToEC2ServiceArrayOutput() EC2ServiceArrayOutput
	ToEC2ServiceArrayOutputWithContext(context.Context) EC2ServiceArrayOutput
}

EC2ServiceArrayInput is an input type that accepts EC2ServiceArray and EC2ServiceArrayOutput values. You can construct a concrete instance of `EC2ServiceArrayInput` via:

EC2ServiceArray{ EC2ServiceArgs{...} }

type EC2ServiceArrayOutput

type EC2ServiceArrayOutput struct{ *pulumi.OutputState }

func (EC2ServiceArrayOutput) ElementType

func (EC2ServiceArrayOutput) ElementType() reflect.Type

func (EC2ServiceArrayOutput) Index

func (EC2ServiceArrayOutput) ToEC2ServiceArrayOutput

func (o EC2ServiceArrayOutput) ToEC2ServiceArrayOutput() EC2ServiceArrayOutput

func (EC2ServiceArrayOutput) ToEC2ServiceArrayOutputWithContext

func (o EC2ServiceArrayOutput) ToEC2ServiceArrayOutputWithContext(ctx context.Context) EC2ServiceArrayOutput

type EC2ServiceInput

type EC2ServiceInput interface {
	pulumi.Input

	ToEC2ServiceOutput() EC2ServiceOutput
	ToEC2ServiceOutputWithContext(ctx context.Context) EC2ServiceOutput
}

type EC2ServiceMap

type EC2ServiceMap map[string]EC2ServiceInput

func (EC2ServiceMap) ElementType

func (EC2ServiceMap) ElementType() reflect.Type

func (EC2ServiceMap) ToEC2ServiceMapOutput

func (i EC2ServiceMap) ToEC2ServiceMapOutput() EC2ServiceMapOutput

func (EC2ServiceMap) ToEC2ServiceMapOutputWithContext

func (i EC2ServiceMap) ToEC2ServiceMapOutputWithContext(ctx context.Context) EC2ServiceMapOutput

type EC2ServiceMapInput

type EC2ServiceMapInput interface {
	pulumi.Input

	ToEC2ServiceMapOutput() EC2ServiceMapOutput
	ToEC2ServiceMapOutputWithContext(context.Context) EC2ServiceMapOutput
}

EC2ServiceMapInput is an input type that accepts EC2ServiceMap and EC2ServiceMapOutput values. You can construct a concrete instance of `EC2ServiceMapInput` via:

EC2ServiceMap{ "key": EC2ServiceArgs{...} }

type EC2ServiceMapOutput

type EC2ServiceMapOutput struct{ *pulumi.OutputState }

func (EC2ServiceMapOutput) ElementType

func (EC2ServiceMapOutput) ElementType() reflect.Type

func (EC2ServiceMapOutput) MapIndex

func (EC2ServiceMapOutput) ToEC2ServiceMapOutput

func (o EC2ServiceMapOutput) ToEC2ServiceMapOutput() EC2ServiceMapOutput

func (EC2ServiceMapOutput) ToEC2ServiceMapOutputWithContext

func (o EC2ServiceMapOutput) ToEC2ServiceMapOutputWithContext(ctx context.Context) EC2ServiceMapOutput

type EC2ServiceOutput

type EC2ServiceOutput struct{ *pulumi.OutputState }

func (EC2ServiceOutput) ElementType

func (EC2ServiceOutput) ElementType() reflect.Type

func (EC2ServiceOutput) ToEC2ServiceOutput

func (o EC2ServiceOutput) ToEC2ServiceOutput() EC2ServiceOutput

func (EC2ServiceOutput) ToEC2ServiceOutputWithContext

func (o EC2ServiceOutput) ToEC2ServiceOutputWithContext(ctx context.Context) EC2ServiceOutput

type EC2ServiceTaskDefinition

type EC2ServiceTaskDefinition struct {
	// Single container to make a TaskDefinition from.  Useful for simple cases where there aren't
	// multiple containers, especially when creating a TaskDefinition to call [run] on.
	//
	// Either [container] or [containers] must be provided.
	Container *TaskDefinitionContainerDefinition `pulumi:"container"`
	// All the containers to make a TaskDefinition from.  Useful when creating a Service that will
	// contain many containers within.
	//
	// Either [container] or [containers] must be provided.
	Containers map[string]TaskDefinitionContainerDefinition `pulumi:"containers"`
	// The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
	Cpu *string `pulumi:"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.
	EphemeralStorage *ecs.TaskDefinitionEphemeralStorage `pulumi:"ephemeralStorage"`
	// The execution role that the Amazon ECS container agent and the Docker daemon can assume.
	// Will be created automatically if not defined.
	ExecutionRole *awsx.DefaultRoleWithPolicy `pulumi:"executionRole"`
	// An optional unique name for your task definition. If not specified, then a default will be created.
	Family *string `pulumi:"family"`
	// Configuration block(s) with Inference Accelerators settings. Detailed below.
	InferenceAccelerators []ecs.TaskDefinitionInferenceAccelerator `pulumi:"inferenceAccelerators"`
	// IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
	IpcMode *string `pulumi:"ipcMode"`
	// A set of volume blocks that containers in your task may use.
	LogGroup *awsx.DefaultLogGroup `pulumi:"logGroup"`
	// The amount (in MiB) of memory used by the task.  If not provided, a default will be computed
	// based on the cumulative needs specified by [containerDefinitions]
	Memory *string `pulumi:"memory"`
	// Docker networking mode to use for the containers in the task. Valid values are `none`, `bridge`, `awsvpc`, and `host`.
	NetworkMode *string `pulumi:"networkMode"`
	// Process namespace to use for the containers in the task. The valid values are `host` and `task`.
	PidMode *string `pulumi:"pidMode"`
	// Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
	PlacementConstraints []ecs.TaskDefinitionPlacementConstraint `pulumi:"placementConstraints"`
	// Configuration block for the App Mesh proxy. Detailed below.
	ProxyConfiguration *ecs.TaskDefinitionProxyConfiguration `pulumi:"proxyConfiguration"`
	// Configuration block for runtime_platform that containers in your task may use.
	RuntimePlatform *ecs.TaskDefinitionRuntimePlatform `pulumi:"runtimePlatform"`
	SkipDestroy     *bool                              `pulumi:"skipDestroy"`
	// Key-value map of resource tags.
	Tags map[string]string `pulumi:"tags"`
	// IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	// Will be created automatically if not defined.
	TaskRole *awsx.DefaultRoleWithPolicy `pulumi:"taskRole"`
	// Configuration block for volumes that containers in your task may use. Detailed below.
	Volumes []ecs.TaskDefinitionVolume `pulumi:"volumes"`
}

Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.

type EC2TaskDefinition

type EC2TaskDefinition struct {
	pulumi.ResourceState

	// Auto-created IAM task execution role that the Amazon ECS container agent and the Docker daemon can assume.
	ExecutionRole iam.RoleOutput `pulumi:"executionRole"`
	// Computed load balancers from target groups specified of container port mappings.
	LoadBalancers ecs.ServiceLoadBalancerArrayOutput `pulumi:"loadBalancers"`
	// Auto-created Log Group resource for use by containers.
	LogGroup cloudwatch.LogGroupOutput `pulumi:"logGroup"`
	// Underlying ECS Task Definition resource
	TaskDefinition ecs.TaskDefinitionOutput `pulumi:"taskDefinition"`
	// Auto-created IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	TaskRole iam.RoleOutput `pulumi:"taskRole"`
}

Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.

func NewEC2TaskDefinition

func NewEC2TaskDefinition(ctx *pulumi.Context,
	name string, args *EC2TaskDefinitionArgs, opts ...pulumi.ResourceOption) (*EC2TaskDefinition, error)

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

func (*EC2TaskDefinition) ElementType

func (*EC2TaskDefinition) ElementType() reflect.Type

func (*EC2TaskDefinition) ToEC2TaskDefinitionOutput

func (i *EC2TaskDefinition) ToEC2TaskDefinitionOutput() EC2TaskDefinitionOutput

func (*EC2TaskDefinition) ToEC2TaskDefinitionOutputWithContext

func (i *EC2TaskDefinition) ToEC2TaskDefinitionOutputWithContext(ctx context.Context) EC2TaskDefinitionOutput

type EC2TaskDefinitionArgs

type EC2TaskDefinitionArgs struct {
	// Single container to make a TaskDefinition from.  Useful for simple cases where there aren't
	// multiple containers, especially when creating a TaskDefinition to call [run] on.
	//
	// Either [container] or [containers] must be provided.
	Container *TaskDefinitionContainerDefinition
	// All the containers to make a TaskDefinition from.  Useful when creating a Service that will
	// contain many containers within.
	//
	// Either [container] or [containers] must be provided.
	Containers map[string]TaskDefinitionContainerDefinition
	// The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
	Cpu pulumi.StringPtrInput
	// 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.
	EphemeralStorage ecs.TaskDefinitionEphemeralStoragePtrInput
	// The execution role that the Amazon ECS container agent and the Docker daemon can assume.
	// Will be created automatically if not defined.
	ExecutionRole *awsx.DefaultRoleWithPolicy
	// An optional unique name for your task definition. If not specified, then a default will be created.
	Family pulumi.StringPtrInput
	// Configuration block(s) with Inference Accelerators settings. Detailed below.
	InferenceAccelerators ecs.TaskDefinitionInferenceAcceleratorArrayInput
	// IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
	IpcMode pulumi.StringPtrInput
	// A set of volume blocks that containers in your task may use.
	LogGroup *awsx.DefaultLogGroup
	// The amount (in MiB) of memory used by the task.  If not provided, a default will be computed
	// based on the cumulative needs specified by [containerDefinitions]
	Memory pulumi.StringPtrInput
	// Docker networking mode to use for the containers in the task. Valid values are `none`, `bridge`, `awsvpc`, and `host`.
	NetworkMode pulumi.StringPtrInput
	// Process namespace to use for the containers in the task. The valid values are `host` and `task`.
	PidMode pulumi.StringPtrInput
	// Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
	PlacementConstraints ecs.TaskDefinitionPlacementConstraintArrayInput
	// Configuration block for the App Mesh proxy. Detailed below.
	ProxyConfiguration ecs.TaskDefinitionProxyConfigurationPtrInput
	// Configuration block for runtime_platform that containers in your task may use.
	RuntimePlatform ecs.TaskDefinitionRuntimePlatformPtrInput
	SkipDestroy     pulumi.BoolPtrInput
	// Key-value map of resource tags.
	Tags pulumi.StringMapInput
	// IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	// Will be created automatically if not defined.
	TaskRole *awsx.DefaultRoleWithPolicy
	// Configuration block for volumes that containers in your task may use. Detailed below.
	Volumes ecs.TaskDefinitionVolumeArrayInput
}

The set of arguments for constructing a EC2TaskDefinition resource.

func (EC2TaskDefinitionArgs) ElementType

func (EC2TaskDefinitionArgs) ElementType() reflect.Type

type EC2TaskDefinitionArray

type EC2TaskDefinitionArray []EC2TaskDefinitionInput

func (EC2TaskDefinitionArray) ElementType

func (EC2TaskDefinitionArray) ElementType() reflect.Type

func (EC2TaskDefinitionArray) ToEC2TaskDefinitionArrayOutput

func (i EC2TaskDefinitionArray) ToEC2TaskDefinitionArrayOutput() EC2TaskDefinitionArrayOutput

func (EC2TaskDefinitionArray) ToEC2TaskDefinitionArrayOutputWithContext

func (i EC2TaskDefinitionArray) ToEC2TaskDefinitionArrayOutputWithContext(ctx context.Context) EC2TaskDefinitionArrayOutput

type EC2TaskDefinitionArrayInput

type EC2TaskDefinitionArrayInput interface {
	pulumi.Input

	ToEC2TaskDefinitionArrayOutput() EC2TaskDefinitionArrayOutput
	ToEC2TaskDefinitionArrayOutputWithContext(context.Context) EC2TaskDefinitionArrayOutput
}

EC2TaskDefinitionArrayInput is an input type that accepts EC2TaskDefinitionArray and EC2TaskDefinitionArrayOutput values. You can construct a concrete instance of `EC2TaskDefinitionArrayInput` via:

EC2TaskDefinitionArray{ EC2TaskDefinitionArgs{...} }

type EC2TaskDefinitionArrayOutput

type EC2TaskDefinitionArrayOutput struct{ *pulumi.OutputState }

func (EC2TaskDefinitionArrayOutput) ElementType

func (EC2TaskDefinitionArrayOutput) Index

func (EC2TaskDefinitionArrayOutput) ToEC2TaskDefinitionArrayOutput

func (o EC2TaskDefinitionArrayOutput) ToEC2TaskDefinitionArrayOutput() EC2TaskDefinitionArrayOutput

func (EC2TaskDefinitionArrayOutput) ToEC2TaskDefinitionArrayOutputWithContext

func (o EC2TaskDefinitionArrayOutput) ToEC2TaskDefinitionArrayOutputWithContext(ctx context.Context) EC2TaskDefinitionArrayOutput

type EC2TaskDefinitionInput

type EC2TaskDefinitionInput interface {
	pulumi.Input

	ToEC2TaskDefinitionOutput() EC2TaskDefinitionOutput
	ToEC2TaskDefinitionOutputWithContext(ctx context.Context) EC2TaskDefinitionOutput
}

type EC2TaskDefinitionMap

type EC2TaskDefinitionMap map[string]EC2TaskDefinitionInput

func (EC2TaskDefinitionMap) ElementType

func (EC2TaskDefinitionMap) ElementType() reflect.Type

func (EC2TaskDefinitionMap) ToEC2TaskDefinitionMapOutput

func (i EC2TaskDefinitionMap) ToEC2TaskDefinitionMapOutput() EC2TaskDefinitionMapOutput

func (EC2TaskDefinitionMap) ToEC2TaskDefinitionMapOutputWithContext

func (i EC2TaskDefinitionMap) ToEC2TaskDefinitionMapOutputWithContext(ctx context.Context) EC2TaskDefinitionMapOutput

type EC2TaskDefinitionMapInput

type EC2TaskDefinitionMapInput interface {
	pulumi.Input

	ToEC2TaskDefinitionMapOutput() EC2TaskDefinitionMapOutput
	ToEC2TaskDefinitionMapOutputWithContext(context.Context) EC2TaskDefinitionMapOutput
}

EC2TaskDefinitionMapInput is an input type that accepts EC2TaskDefinitionMap and EC2TaskDefinitionMapOutput values. You can construct a concrete instance of `EC2TaskDefinitionMapInput` via:

EC2TaskDefinitionMap{ "key": EC2TaskDefinitionArgs{...} }

type EC2TaskDefinitionMapOutput

type EC2TaskDefinitionMapOutput struct{ *pulumi.OutputState }

func (EC2TaskDefinitionMapOutput) ElementType

func (EC2TaskDefinitionMapOutput) ElementType() reflect.Type

func (EC2TaskDefinitionMapOutput) MapIndex

func (EC2TaskDefinitionMapOutput) ToEC2TaskDefinitionMapOutput

func (o EC2TaskDefinitionMapOutput) ToEC2TaskDefinitionMapOutput() EC2TaskDefinitionMapOutput

func (EC2TaskDefinitionMapOutput) ToEC2TaskDefinitionMapOutputWithContext

func (o EC2TaskDefinitionMapOutput) ToEC2TaskDefinitionMapOutputWithContext(ctx context.Context) EC2TaskDefinitionMapOutput

type EC2TaskDefinitionOutput

type EC2TaskDefinitionOutput struct{ *pulumi.OutputState }

func (EC2TaskDefinitionOutput) ElementType

func (EC2TaskDefinitionOutput) ElementType() reflect.Type

func (EC2TaskDefinitionOutput) ToEC2TaskDefinitionOutput

func (o EC2TaskDefinitionOutput) ToEC2TaskDefinitionOutput() EC2TaskDefinitionOutput

func (EC2TaskDefinitionOutput) ToEC2TaskDefinitionOutputWithContext

func (o EC2TaskDefinitionOutput) ToEC2TaskDefinitionOutputWithContext(ctx context.Context) EC2TaskDefinitionOutput

type FargateService

type FargateService struct {
	pulumi.ResourceState

	// Underlying ECS Service resource
	Service ecs.ServiceOutput `pulumi:"service"`
	// Underlying Fargate component resource if created from args
	TaskDefinition ecs.TaskDefinitionOutput `pulumi:"taskDefinition"`
}

Create an ECS Service resource for Fargate with the given unique name, arguments, and options. Creates Task definition if `taskDefinitionArgs` is specified.

func NewFargateService

func NewFargateService(ctx *pulumi.Context,
	name string, args *FargateServiceArgs, opts ...pulumi.ResourceOption) (*FargateService, error)

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

func (*FargateService) ElementType

func (*FargateService) ElementType() reflect.Type

func (*FargateService) ToFargateServiceOutput

func (i *FargateService) ToFargateServiceOutput() FargateServiceOutput

func (*FargateService) ToFargateServiceOutputWithContext

func (i *FargateService) ToFargateServiceOutputWithContext(ctx context.Context) FargateServiceOutput

type FargateServiceArgs

type FargateServiceArgs struct {
	// ARN of an ECS cluster.
	Cluster pulumi.StringPtrInput
	// If `true`, this provider will not 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`.
	ContinueBeforeSteadyState pulumi.BoolPtrInput
	// Configuration block for deployment circuit breaker. See below.
	DeploymentCircuitBreaker ecs.ServiceDeploymentCircuitBreakerPtrInput
	// Configuration block for deployment controller configuration. See below.
	DeploymentController ecs.ServiceDeploymentControllerPtrInput
	// 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 pulumi.IntPtrInput
	// 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 pulumi.IntPtrInput
	// 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 pulumi.IntPtrInput
	// Specifies whether to enable Amazon ECS managed tags for the tasks within the service.
	EnableEcsManagedTags pulumi.BoolPtrInput
	// Specifies whether to enable Amazon ECS Exec for the tasks within the service.
	EnableExecuteCommand pulumi.BoolPtrInput
	// Enable to force a new task deployment of the service. This can be used to update tasks to use a newer Docker image with same image/tag combination (e.g., `myimage:latest`), roll Fargate tasks onto a newer platform version, or immediately deploy `ordered_placement_strategy` and `placement_constraints` updates.
	ForceNewDeployment pulumi.BoolPtrInput
	// Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 2147483647. Only valid for services configured to use load balancers.
	HealthCheckGracePeriodSeconds pulumi.IntPtrInput
	// 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 pulumi.StringPtrInput
	// Configuration block for load balancers. See below.
	LoadBalancers ecs.ServiceLoadBalancerArrayInput
	// Name of the service (up to 255 letters, numbers, hyphens, and underscores)
	Name pulumi.StringPtrInput
	// 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. See below.
	NetworkConfiguration ecs.ServiceNetworkConfigurationPtrInput
	// Rules that are taken into consideration during task placement. Updates to this configuration will take effect next task deployment unless `force_new_deployment` is enabled. Maximum number of `placement_constraints` is `10`. See below.
	PlacementConstraints ecs.ServicePlacementConstraintArrayInput
	// 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 pulumi.StringPtrInput
	// 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 pulumi.StringPtrInput
	// Scheduling strategy to use for the service. The valid values are `REPLICA` and `DAEMON`. Defaults to `REPLICA`. Note that [*Tasks using the Fargate launch type or the `CODE_DEPLOY` or `EXTERNAL` deployment controller types don't support the `DAEMON` scheduling strategy*](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateService.html).
	SchedulingStrategy pulumi.StringPtrInput
	// Service discovery registries for the service. The maximum number of `service_registries` blocks is `1`. See below.
	ServiceRegistries ecs.ServiceServiceRegistriesPtrInput
	// 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.
	Tags pulumi.StringMapInput
	// Family and revision (`family:revision`) or full ARN of the task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.
	TaskDefinition pulumi.StringPtrInput
	// The args of task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.
	TaskDefinitionArgs *FargateServiceTaskDefinition
}

The set of arguments for constructing a FargateService resource.

func (FargateServiceArgs) ElementType

func (FargateServiceArgs) ElementType() reflect.Type

type FargateServiceArray

type FargateServiceArray []FargateServiceInput

func (FargateServiceArray) ElementType

func (FargateServiceArray) ElementType() reflect.Type

func (FargateServiceArray) ToFargateServiceArrayOutput

func (i FargateServiceArray) ToFargateServiceArrayOutput() FargateServiceArrayOutput

func (FargateServiceArray) ToFargateServiceArrayOutputWithContext

func (i FargateServiceArray) ToFargateServiceArrayOutputWithContext(ctx context.Context) FargateServiceArrayOutput

type FargateServiceArrayInput

type FargateServiceArrayInput interface {
	pulumi.Input

	ToFargateServiceArrayOutput() FargateServiceArrayOutput
	ToFargateServiceArrayOutputWithContext(context.Context) FargateServiceArrayOutput
}

FargateServiceArrayInput is an input type that accepts FargateServiceArray and FargateServiceArrayOutput values. You can construct a concrete instance of `FargateServiceArrayInput` via:

FargateServiceArray{ FargateServiceArgs{...} }

type FargateServiceArrayOutput

type FargateServiceArrayOutput struct{ *pulumi.OutputState }

func (FargateServiceArrayOutput) ElementType

func (FargateServiceArrayOutput) ElementType() reflect.Type

func (FargateServiceArrayOutput) Index

func (FargateServiceArrayOutput) ToFargateServiceArrayOutput

func (o FargateServiceArrayOutput) ToFargateServiceArrayOutput() FargateServiceArrayOutput

func (FargateServiceArrayOutput) ToFargateServiceArrayOutputWithContext

func (o FargateServiceArrayOutput) ToFargateServiceArrayOutputWithContext(ctx context.Context) FargateServiceArrayOutput

type FargateServiceInput

type FargateServiceInput interface {
	pulumi.Input

	ToFargateServiceOutput() FargateServiceOutput
	ToFargateServiceOutputWithContext(ctx context.Context) FargateServiceOutput
}

type FargateServiceMap

type FargateServiceMap map[string]FargateServiceInput

func (FargateServiceMap) ElementType

func (FargateServiceMap) ElementType() reflect.Type

func (FargateServiceMap) ToFargateServiceMapOutput

func (i FargateServiceMap) ToFargateServiceMapOutput() FargateServiceMapOutput

func (FargateServiceMap) ToFargateServiceMapOutputWithContext

func (i FargateServiceMap) ToFargateServiceMapOutputWithContext(ctx context.Context) FargateServiceMapOutput

type FargateServiceMapInput

type FargateServiceMapInput interface {
	pulumi.Input

	ToFargateServiceMapOutput() FargateServiceMapOutput
	ToFargateServiceMapOutputWithContext(context.Context) FargateServiceMapOutput
}

FargateServiceMapInput is an input type that accepts FargateServiceMap and FargateServiceMapOutput values. You can construct a concrete instance of `FargateServiceMapInput` via:

FargateServiceMap{ "key": FargateServiceArgs{...} }

type FargateServiceMapOutput

type FargateServiceMapOutput struct{ *pulumi.OutputState }

func (FargateServiceMapOutput) ElementType

func (FargateServiceMapOutput) ElementType() reflect.Type

func (FargateServiceMapOutput) MapIndex

func (FargateServiceMapOutput) ToFargateServiceMapOutput

func (o FargateServiceMapOutput) ToFargateServiceMapOutput() FargateServiceMapOutput

func (FargateServiceMapOutput) ToFargateServiceMapOutputWithContext

func (o FargateServiceMapOutput) ToFargateServiceMapOutputWithContext(ctx context.Context) FargateServiceMapOutput

type FargateServiceOutput

type FargateServiceOutput struct{ *pulumi.OutputState }

func (FargateServiceOutput) ElementType

func (FargateServiceOutput) ElementType() reflect.Type

func (FargateServiceOutput) ToFargateServiceOutput

func (o FargateServiceOutput) ToFargateServiceOutput() FargateServiceOutput

func (FargateServiceOutput) ToFargateServiceOutputWithContext

func (o FargateServiceOutput) ToFargateServiceOutputWithContext(ctx context.Context) FargateServiceOutput

type FargateServiceTaskDefinition

type FargateServiceTaskDefinition struct {
	// Single container to make a TaskDefinition from.  Useful for simple cases where there aren't
	// multiple containers, especially when creating a TaskDefinition to call [run] on.
	//
	// Either [container] or [containers] must be provided.
	Container *TaskDefinitionContainerDefinition `pulumi:"container"`
	// All the containers to make a TaskDefinition from.  Useful when creating a Service that will
	// contain many containers within.
	//
	// Either [container] or [containers] must be provided.
	Containers map[string]TaskDefinitionContainerDefinition `pulumi:"containers"`
	// The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
	Cpu *string `pulumi:"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.
	EphemeralStorage *ecs.TaskDefinitionEphemeralStorage `pulumi:"ephemeralStorage"`
	// The execution role that the Amazon ECS container agent and the Docker daemon can assume.
	// Will be created automatically if not defined.
	ExecutionRole *awsx.DefaultRoleWithPolicy `pulumi:"executionRole"`
	// An optional unique name for your task definition. If not specified, then a default will be created.
	Family *string `pulumi:"family"`
	// Configuration block(s) with Inference Accelerators settings. Detailed below.
	InferenceAccelerators []ecs.TaskDefinitionInferenceAccelerator `pulumi:"inferenceAccelerators"`
	// IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
	IpcMode *string `pulumi:"ipcMode"`
	// A set of volume blocks that containers in your task may use.
	LogGroup *awsx.DefaultLogGroup `pulumi:"logGroup"`
	// The amount (in MiB) of memory used by the task.  If not provided, a default will be computed
	// based on the cumulative needs specified by [containerDefinitions]
	Memory *string `pulumi:"memory"`
	// Process namespace to use for the containers in the task. The valid values are `host` and `task`.
	PidMode *string `pulumi:"pidMode"`
	// Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
	PlacementConstraints []ecs.TaskDefinitionPlacementConstraint `pulumi:"placementConstraints"`
	// Configuration block for the App Mesh proxy. Detailed below.
	ProxyConfiguration *ecs.TaskDefinitionProxyConfiguration `pulumi:"proxyConfiguration"`
	// Configuration block for runtime_platform that containers in your task may use.
	RuntimePlatform *ecs.TaskDefinitionRuntimePlatform `pulumi:"runtimePlatform"`
	SkipDestroy     *bool                              `pulumi:"skipDestroy"`
	// Key-value map of resource tags.
	Tags map[string]string `pulumi:"tags"`
	// IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	// Will be created automatically if not defined.
	TaskRole *awsx.DefaultRoleWithPolicy `pulumi:"taskRole"`
	// Configuration block for volumes that containers in your task may use. Detailed below.
	Volumes []ecs.TaskDefinitionVolume `pulumi:"volumes"`
}

Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.

type FargateTaskDefinition

type FargateTaskDefinition struct {
	pulumi.ResourceState

	// Auto-created IAM task execution role that the Amazon ECS container agent and the Docker daemon can assume.
	ExecutionRole iam.RoleOutput `pulumi:"executionRole"`
	// Computed load balancers from target groups specified of container port mappings.
	LoadBalancers ecs.ServiceLoadBalancerArrayOutput `pulumi:"loadBalancers"`
	// Auto-created Log Group resource for use by containers.
	LogGroup cloudwatch.LogGroupOutput `pulumi:"logGroup"`
	// Underlying ECS Task Definition resource
	TaskDefinition ecs.TaskDefinitionOutput `pulumi:"taskDefinition"`
	// Auto-created IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	TaskRole iam.RoleOutput `pulumi:"taskRole"`
}

Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.

func NewFargateTaskDefinition

func NewFargateTaskDefinition(ctx *pulumi.Context,
	name string, args *FargateTaskDefinitionArgs, opts ...pulumi.ResourceOption) (*FargateTaskDefinition, error)

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

func (*FargateTaskDefinition) ElementType

func (*FargateTaskDefinition) ElementType() reflect.Type

func (*FargateTaskDefinition) ToFargateTaskDefinitionOutput

func (i *FargateTaskDefinition) ToFargateTaskDefinitionOutput() FargateTaskDefinitionOutput

func (*FargateTaskDefinition) ToFargateTaskDefinitionOutputWithContext

func (i *FargateTaskDefinition) ToFargateTaskDefinitionOutputWithContext(ctx context.Context) FargateTaskDefinitionOutput

type FargateTaskDefinitionArgs

type FargateTaskDefinitionArgs struct {
	// Single container to make a TaskDefinition from.  Useful for simple cases where there aren't
	// multiple containers, especially when creating a TaskDefinition to call [run] on.
	//
	// Either [container] or [containers] must be provided.
	Container *TaskDefinitionContainerDefinition
	// All the containers to make a TaskDefinition from.  Useful when creating a Service that will
	// contain many containers within.
	//
	// Either [container] or [containers] must be provided.
	Containers map[string]TaskDefinitionContainerDefinition
	// The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
	Cpu pulumi.StringPtrInput
	// 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.
	EphemeralStorage ecs.TaskDefinitionEphemeralStoragePtrInput
	// The execution role that the Amazon ECS container agent and the Docker daemon can assume.
	// Will be created automatically if not defined.
	ExecutionRole *awsx.DefaultRoleWithPolicy
	// An optional unique name for your task definition. If not specified, then a default will be created.
	Family pulumi.StringPtrInput
	// Configuration block(s) with Inference Accelerators settings. Detailed below.
	InferenceAccelerators ecs.TaskDefinitionInferenceAcceleratorArrayInput
	// IPC resource namespace to be used for the containers in the task The valid values are `host`, `task`, and `none`.
	IpcMode pulumi.StringPtrInput
	// A set of volume blocks that containers in your task may use.
	LogGroup *awsx.DefaultLogGroup
	// The amount (in MiB) of memory used by the task.  If not provided, a default will be computed
	// based on the cumulative needs specified by [containerDefinitions]
	Memory pulumi.StringPtrInput
	// Process namespace to use for the containers in the task. The valid values are `host` and `task`.
	PidMode pulumi.StringPtrInput
	// Configuration block for rules that are taken into consideration during task placement. Maximum number of `placement_constraints` is `10`. Detailed below.
	PlacementConstraints ecs.TaskDefinitionPlacementConstraintArrayInput
	// Configuration block for the App Mesh proxy. Detailed below.
	ProxyConfiguration ecs.TaskDefinitionProxyConfigurationPtrInput
	// Configuration block for runtime_platform that containers in your task may use.
	RuntimePlatform ecs.TaskDefinitionRuntimePlatformPtrInput
	SkipDestroy     pulumi.BoolPtrInput
	// Key-value map of resource tags.
	Tags pulumi.StringMapInput
	// IAM role that allows your Amazon ECS container task to make calls to other AWS services.
	// Will be created automatically if not defined.
	TaskRole *awsx.DefaultRoleWithPolicy
	// Configuration block for volumes that containers in your task may use. Detailed below.
	Volumes ecs.TaskDefinitionVolumeArrayInput
}

The set of arguments for constructing a FargateTaskDefinition resource.

func (FargateTaskDefinitionArgs) ElementType

func (FargateTaskDefinitionArgs) ElementType() reflect.Type

type FargateTaskDefinitionArray

type FargateTaskDefinitionArray []FargateTaskDefinitionInput

func (FargateTaskDefinitionArray) ElementType

func (FargateTaskDefinitionArray) ElementType() reflect.Type

func (FargateTaskDefinitionArray) ToFargateTaskDefinitionArrayOutput

func (i FargateTaskDefinitionArray) ToFargateTaskDefinitionArrayOutput() FargateTaskDefinitionArrayOutput

func (FargateTaskDefinitionArray) ToFargateTaskDefinitionArrayOutputWithContext

func (i FargateTaskDefinitionArray) ToFargateTaskDefinitionArrayOutputWithContext(ctx context.Context) FargateTaskDefinitionArrayOutput

type FargateTaskDefinitionArrayInput

type FargateTaskDefinitionArrayInput interface {
	pulumi.Input

	ToFargateTaskDefinitionArrayOutput() FargateTaskDefinitionArrayOutput
	ToFargateTaskDefinitionArrayOutputWithContext(context.Context) FargateTaskDefinitionArrayOutput
}

FargateTaskDefinitionArrayInput is an input type that accepts FargateTaskDefinitionArray and FargateTaskDefinitionArrayOutput values. You can construct a concrete instance of `FargateTaskDefinitionArrayInput` via:

FargateTaskDefinitionArray{ FargateTaskDefinitionArgs{...} }

type FargateTaskDefinitionArrayOutput

type FargateTaskDefinitionArrayOutput struct{ *pulumi.OutputState }

func (FargateTaskDefinitionArrayOutput) ElementType

func (FargateTaskDefinitionArrayOutput) Index

func (FargateTaskDefinitionArrayOutput) ToFargateTaskDefinitionArrayOutput

func (o FargateTaskDefinitionArrayOutput) ToFargateTaskDefinitionArrayOutput() FargateTaskDefinitionArrayOutput

func (FargateTaskDefinitionArrayOutput) ToFargateTaskDefinitionArrayOutputWithContext

func (o FargateTaskDefinitionArrayOutput) ToFargateTaskDefinitionArrayOutputWithContext(ctx context.Context) FargateTaskDefinitionArrayOutput

type FargateTaskDefinitionInput

type FargateTaskDefinitionInput interface {
	pulumi.Input

	ToFargateTaskDefinitionOutput() FargateTaskDefinitionOutput
	ToFargateTaskDefinitionOutputWithContext(ctx context.Context) FargateTaskDefinitionOutput
}

type FargateTaskDefinitionMap

type FargateTaskDefinitionMap map[string]FargateTaskDefinitionInput

func (FargateTaskDefinitionMap) ElementType

func (FargateTaskDefinitionMap) ElementType() reflect.Type

func (FargateTaskDefinitionMap) ToFargateTaskDefinitionMapOutput

func (i FargateTaskDefinitionMap) ToFargateTaskDefinitionMapOutput() FargateTaskDefinitionMapOutput

func (FargateTaskDefinitionMap) ToFargateTaskDefinitionMapOutputWithContext

func (i FargateTaskDefinitionMap) ToFargateTaskDefinitionMapOutputWithContext(ctx context.Context) FargateTaskDefinitionMapOutput

type FargateTaskDefinitionMapInput

type FargateTaskDefinitionMapInput interface {
	pulumi.Input

	ToFargateTaskDefinitionMapOutput() FargateTaskDefinitionMapOutput
	ToFargateTaskDefinitionMapOutputWithContext(context.Context) FargateTaskDefinitionMapOutput
}

FargateTaskDefinitionMapInput is an input type that accepts FargateTaskDefinitionMap and FargateTaskDefinitionMapOutput values. You can construct a concrete instance of `FargateTaskDefinitionMapInput` via:

FargateTaskDefinitionMap{ "key": FargateTaskDefinitionArgs{...} }

type FargateTaskDefinitionMapOutput

type FargateTaskDefinitionMapOutput struct{ *pulumi.OutputState }

func (FargateTaskDefinitionMapOutput) ElementType

func (FargateTaskDefinitionMapOutput) MapIndex

func (FargateTaskDefinitionMapOutput) ToFargateTaskDefinitionMapOutput

func (o FargateTaskDefinitionMapOutput) ToFargateTaskDefinitionMapOutput() FargateTaskDefinitionMapOutput

func (FargateTaskDefinitionMapOutput) ToFargateTaskDefinitionMapOutputWithContext

func (o FargateTaskDefinitionMapOutput) ToFargateTaskDefinitionMapOutputWithContext(ctx context.Context) FargateTaskDefinitionMapOutput

type FargateTaskDefinitionOutput

type FargateTaskDefinitionOutput struct{ *pulumi.OutputState }

func (FargateTaskDefinitionOutput) ElementType

func (FargateTaskDefinitionOutput) ToFargateTaskDefinitionOutput

func (o FargateTaskDefinitionOutput) ToFargateTaskDefinitionOutput() FargateTaskDefinitionOutput

func (FargateTaskDefinitionOutput) ToFargateTaskDefinitionOutputWithContext

func (o FargateTaskDefinitionOutput) ToFargateTaskDefinitionOutputWithContext(ctx context.Context) FargateTaskDefinitionOutput

type TaskDefinitionContainerDefinition

type TaskDefinitionContainerDefinition struct {
	Command               []string                            `pulumi:"command"`
	Cpu                   *int                                `pulumi:"cpu"`
	DependsOn             []TaskDefinitionContainerDependency `pulumi:"dependsOn"`
	DisableNetworking     *bool                               `pulumi:"disableNetworking"`
	DnsSearchDomains      []string                            `pulumi:"dnsSearchDomains"`
	DnsServers            []string                            `pulumi:"dnsServers"`
	DockerLabels          interface{}                         `pulumi:"dockerLabels"`
	DockerSecurityOptions []string                            `pulumi:"dockerSecurityOptions"`
	EntryPoint            []string                            `pulumi:"entryPoint"`
	// The environment variables to pass to a container
	Environment []TaskDefinitionKeyValuePair `pulumi:"environment"`
	// The list of one or more files that contain the environment variables to pass to a container
	EnvironmentFiles      []TaskDefinitionEnvironmentFile      `pulumi:"environmentFiles"`
	Essential             *bool                                `pulumi:"essential"`
	ExtraHosts            []TaskDefinitionHostEntry            `pulumi:"extraHosts"`
	FirelensConfiguration *TaskDefinitionFirelensConfiguration `pulumi:"firelensConfiguration"`
	HealthCheck           *TaskDefinitionHealthCheck           `pulumi:"healthCheck"`
	Hostname              *string                              `pulumi:"hostname"`
	// The image used to start a container. This string is passed directly to the Docker daemon.
	Image            *string                         `pulumi:"image"`
	Interactive      *bool                           `pulumi:"interactive"`
	Links            []string                        `pulumi:"links"`
	LinuxParameters  *TaskDefinitionLinuxParameters  `pulumi:"linuxParameters"`
	LogConfiguration *TaskDefinitionLogConfiguration `pulumi:"logConfiguration"`
	// The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
	Memory            *int                       `pulumi:"memory"`
	MemoryReservation *int                       `pulumi:"memoryReservation"`
	MountPoints       []TaskDefinitionMountPoint `pulumi:"mountPoints"`
	// The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
	Name *string `pulumi:"name"`
	// Port mappings allow containers to access ports on the host container instance to send or receive traffic.
	PortMappings           []TaskDefinitionPortMapping          `pulumi:"portMappings"`
	Privileged             *bool                                `pulumi:"privileged"`
	PseudoTerminal         *bool                                `pulumi:"pseudoTerminal"`
	ReadonlyRootFilesystem *bool                                `pulumi:"readonlyRootFilesystem"`
	RepositoryCredentials  *TaskDefinitionRepositoryCredentials `pulumi:"repositoryCredentials"`
	ResourceRequirements   []TaskDefinitionResourceRequirement  `pulumi:"resourceRequirements"`
	Secrets                []TaskDefinitionSecret               `pulumi:"secrets"`
	StartTimeout           *int                                 `pulumi:"startTimeout"`
	StopTimeout            *int                                 `pulumi:"stopTimeout"`
	SystemControls         []TaskDefinitionSystemControl        `pulumi:"systemControls"`
	Ulimits                []TaskDefinitionUlimit               `pulumi:"ulimits"`
	User                   *string                              `pulumi:"user"`
	VolumesFrom            []TaskDefinitionVolumeFrom           `pulumi:"volumesFrom"`
	WorkingDirectory       *string                              `pulumi:"workingDirectory"`
}

List of container definitions that are passed to the Docker daemon on a container instance

type TaskDefinitionContainerDependency

type TaskDefinitionContainerDependency struct {
	Condition     *string `pulumi:"condition"`
	ContainerName *string `pulumi:"containerName"`
}

type TaskDefinitionDevice

type TaskDefinitionDevice struct {
	ContainerPath *string  `pulumi:"containerPath"`
	HostPath      *string  `pulumi:"hostPath"`
	Permissions   []string `pulumi:"permissions"`
}

type TaskDefinitionEnvironmentFile

type TaskDefinitionEnvironmentFile struct {
	Type  *string `pulumi:"type"`
	Value *string `pulumi:"value"`
}

type TaskDefinitionFirelensConfiguration

type TaskDefinitionFirelensConfiguration struct {
	Options interface{} `pulumi:"options"`
	Type    *string     `pulumi:"type"`
}

type TaskDefinitionHealthCheck

type TaskDefinitionHealthCheck struct {
	// A string array representing the command that the container runs to determine if it is healthy.
	Command []string `pulumi:"command"`
	// The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
	Interval *int `pulumi:"interval"`
	// The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
	Retries *int `pulumi:"retries"`
	// The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
	StartPeriod *int `pulumi:"startPeriod"`
	// The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
	Timeout *int `pulumi:"timeout"`
}

The health check command and associated configuration parameters for the container.

type TaskDefinitionHostEntry

type TaskDefinitionHostEntry struct {
	Hostname  *string `pulumi:"hostname"`
	IpAddress *string `pulumi:"ipAddress"`
}

type TaskDefinitionKernelCapabilities

type TaskDefinitionKernelCapabilities struct {
	Add  []string `pulumi:"add"`
	Drop []string `pulumi:"drop"`
}

type TaskDefinitionKeyValuePair

type TaskDefinitionKeyValuePair struct {
	Name  *string `pulumi:"name"`
	Value *string `pulumi:"value"`
}

type TaskDefinitionLinuxParameters

type TaskDefinitionLinuxParameters struct {
	Capabilities       *TaskDefinitionKernelCapabilities `pulumi:"capabilities"`
	Devices            []TaskDefinitionDevice            `pulumi:"devices"`
	InitProcessEnabled *bool                             `pulumi:"initProcessEnabled"`
	MaxSwap            *int                              `pulumi:"maxSwap"`
	SharedMemorySize   *int                              `pulumi:"sharedMemorySize"`
	Swappiness         *int                              `pulumi:"swappiness"`
	Tmpfs              []TaskDefinitionTmpfs             `pulumi:"tmpfs"`
}

type TaskDefinitionLogConfiguration

type TaskDefinitionLogConfiguration struct {
	LogDriver     string                 `pulumi:"logDriver"`
	Options       interface{}            `pulumi:"options"`
	SecretOptions []TaskDefinitionSecret `pulumi:"secretOptions"`
}

type TaskDefinitionMountPoint

type TaskDefinitionMountPoint struct {
	ContainerPath *string `pulumi:"containerPath"`
	ReadOnly      *bool   `pulumi:"readOnly"`
	SourceVolume  *string `pulumi:"sourceVolume"`
}

type TaskDefinitionPortMapping

type TaskDefinitionPortMapping struct {
	ContainerPort *int            `pulumi:"containerPort"`
	HostPort      *int            `pulumi:"hostPort"`
	Protocol      *string         `pulumi:"protocol"`
	TargetGroup   *lb.TargetGroup `pulumi:"targetGroup"`
}

type TaskDefinitionRepositoryCredentials

type TaskDefinitionRepositoryCredentials struct {
	CredentialsParameter *string `pulumi:"credentialsParameter"`
}

type TaskDefinitionResourceRequirement

type TaskDefinitionResourceRequirement struct {
	Type  string `pulumi:"type"`
	Value string `pulumi:"value"`
}

type TaskDefinitionSecret

type TaskDefinitionSecret struct {
	Name      string `pulumi:"name"`
	ValueFrom string `pulumi:"valueFrom"`
}

type TaskDefinitionSystemControl

type TaskDefinitionSystemControl struct {
	Namespace *string `pulumi:"namespace"`
	Value     *string `pulumi:"value"`
}

type TaskDefinitionTmpfs

type TaskDefinitionTmpfs struct {
	ContainerPath *string  `pulumi:"containerPath"`
	MountOptions  []string `pulumi:"mountOptions"`
	Size          int      `pulumi:"size"`
}

type TaskDefinitionUlimit

type TaskDefinitionUlimit struct {
	HardLimit int    `pulumi:"hardLimit"`
	Name      string `pulumi:"name"`
	SoftLimit int    `pulumi:"softLimit"`
}

type TaskDefinitionVolumeFrom

type TaskDefinitionVolumeFrom struct {
	ReadOnly        *bool   `pulumi:"readOnly"`
	SourceContainer *string `pulumi:"sourceContainer"`
}

Jump to

Keyboard shortcuts

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