batch

package
v2.13.1 Latest Latest
Warning

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

Go to latest
Published: Jul 22, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ComputeEnvironment

type ComputeEnvironment struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the compute environment.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name for your compute environment. Up to 128 letters (uppercase and lowercase), numbers, and underscores are allowed. If omitted, this provider will assign a random, unique name.
	ComputeEnvironmentName pulumi.StringOutput `pulumi:"computeEnvironmentName"`
	// Creates a unique compute environment name beginning with the specified prefix. Conflicts with `computeEnvironmentName`.
	ComputeEnvironmentNamePrefix pulumi.StringPtrOutput `pulumi:"computeEnvironmentNamePrefix"`
	// Details of the compute resources managed by the compute environment. This parameter is required for managed compute environments. See details below.
	ComputeResources ComputeEnvironmentComputeResourcesPtrOutput `pulumi:"computeResources"`
	// The Amazon Resource Name (ARN) of the underlying Amazon ECS cluster used by the compute environment.
	EcsClusterArn pulumi.StringOutput `pulumi:"ecsClusterArn"`
	// The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.
	ServiceRole pulumi.StringOutput `pulumi:"serviceRole"`
	// The state of the compute environment. If the state is `ENABLED`, then the compute environment accepts jobs from a queue and can scale out automatically based on queues. Valid items are `ENABLED` or `DISABLED`. Defaults to `ENABLED`.
	State pulumi.StringPtrOutput `pulumi:"state"`
	// The current status of the compute environment (for example, CREATING or VALID).
	Status pulumi.StringOutput `pulumi:"status"`
	// A short, human-readable string to provide additional details about the current status of the compute environment.
	StatusReason pulumi.StringOutput `pulumi:"statusReason"`
	// The type of compute environment. Valid items are `EC2` or `SPOT`.
	Type pulumi.StringOutput `pulumi:"type"`
}

Creates a AWS Batch compute environment. Compute environments contain the Amazon ECS container instances that are used to run containerized batch jobs.

For information about AWS Batch, see [What is AWS Batch?](http://docs.aws.amazon.com/batch/latest/userguide/what-is-batch.html) . For information about compute environment, see [Compute Environments](http://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html) .

> **Note:** To prevent a race condition during environment deletion, make sure to set `dependsOn` to the related `iam.RolePolicyAttachment`; otherwise, the policy may be destroyed too soon and the compute environment will then get stuck in the `DELETING` state, see [Troubleshooting AWS Batch](http://docs.aws.amazon.com/batch/latest/userguide/troubleshooting.html) .

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/batch"
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ecsInstanceRoleRole, err := iam.NewRole(ctx, "ecsInstanceRoleRole", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "    \"Version\": \"2012-10-17\",\n", "    \"Statement\": [\n", "	{\n", "	    \"Action\": \"sts:AssumeRole\",\n", "	    \"Effect\": \"Allow\",\n", "	    \"Principal\": {\n", "		\"Service\": \"ec2.amazonaws.com\"\n", "	    }\n", "	}\n", "    ]\n", "}\n", "\n")),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "ecsInstanceRoleRolePolicyAttachment", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role"),
			Role:      ecsInstanceRoleRole.Name,
		})
		if err != nil {
			return err
		}
		ecsInstanceRoleInstanceProfile, err := iam.NewInstanceProfile(ctx, "ecsInstanceRoleInstanceProfile", &iam.InstanceProfileArgs{
			Role: ecsInstanceRoleRole.Name,
		})
		if err != nil {
			return err
		}
		awsBatchServiceRoleRole, err := iam.NewRole(ctx, "awsBatchServiceRoleRole", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "    \"Version\": \"2012-10-17\",\n", "    \"Statement\": [\n", "	{\n", "	    \"Action\": \"sts:AssumeRole\",\n", "	    \"Effect\": \"Allow\",\n", "	    \"Principal\": {\n", "		\"Service\": \"batch.amazonaws.com\"\n", "	    }\n", "	}\n", "    ]\n", "}\n", "\n")),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "awsBatchServiceRoleRolePolicyAttachment", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/service-role/AWSBatchServiceRole"),
			Role:      awsBatchServiceRoleRole.Name,
		})
		if err != nil {
			return err
		}
		sampleSecurityGroup, err := ec2.NewSecurityGroup(ctx, "sampleSecurityGroup", &ec2.SecurityGroupArgs{
			Egress: ec2.SecurityGroupEgressArray{
				&ec2.SecurityGroupEgressArgs{
					CidrBlocks: pulumi.StringArray{
						pulumi.String("0.0.0.0/0"),
					},
					FromPort: pulumi.Int(0),
					Protocol: pulumi.String("-1"),
					ToPort:   pulumi.Int(0),
				},
			},
		})
		if err != nil {
			return err
		}
		sampleVpc, err := ec2.NewVpc(ctx, "sampleVpc", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.1.0.0/16"),
		})
		if err != nil {
			return err
		}
		sampleSubnet, err := ec2.NewSubnet(ctx, "sampleSubnet", &ec2.SubnetArgs{
			CidrBlock: pulumi.String("10.1.1.0/24"),
			VpcId:     sampleVpc.ID(),
		})
		if err != nil {
			return err
		}
		_, err = batch.NewComputeEnvironment(ctx, "sampleComputeEnvironment", &batch.ComputeEnvironmentArgs{
			ComputeEnvironmentName: pulumi.String("sample"),
			ComputeResources: &batch.ComputeEnvironmentComputeResourcesArgs{
				InstanceRole: ecsInstanceRoleInstanceProfile.Arn,
				InstanceTypes: pulumi.StringArray{
					pulumi.String("c4.large"),
				},
				MaxVcpus: pulumi.Int(16),
				MinVcpus: pulumi.Int(0),
				SecurityGroupIds: pulumi.StringArray{
					sampleSecurityGroup.ID(),
				},
				Subnets: pulumi.StringArray{
					sampleSubnet.ID(),
				},
				Type: pulumi.String("EC2"),
			},
			ServiceRole: awsBatchServiceRoleRole.Arn,
			Type:        pulumi.String("MANAGED"),
		}, pulumi.DependsOn([]pulumi.Resource{
			"aws_iam_role_policy_attachment.aws_batch_service_role",
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetComputeEnvironment

func GetComputeEnvironment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ComputeEnvironmentState, opts ...pulumi.ResourceOption) (*ComputeEnvironment, error)

GetComputeEnvironment gets an existing ComputeEnvironment 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 NewComputeEnvironment

func NewComputeEnvironment(ctx *pulumi.Context,
	name string, args *ComputeEnvironmentArgs, opts ...pulumi.ResourceOption) (*ComputeEnvironment, error)

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

type ComputeEnvironmentArgs

type ComputeEnvironmentArgs struct {
	// The name for your compute environment. Up to 128 letters (uppercase and lowercase), numbers, and underscores are allowed. If omitted, this provider will assign a random, unique name.
	ComputeEnvironmentName pulumi.StringPtrInput
	// Creates a unique compute environment name beginning with the specified prefix. Conflicts with `computeEnvironmentName`.
	ComputeEnvironmentNamePrefix pulumi.StringPtrInput
	// Details of the compute resources managed by the compute environment. This parameter is required for managed compute environments. See details below.
	ComputeResources ComputeEnvironmentComputeResourcesPtrInput
	// The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.
	ServiceRole pulumi.StringInput
	// The state of the compute environment. If the state is `ENABLED`, then the compute environment accepts jobs from a queue and can scale out automatically based on queues. Valid items are `ENABLED` or `DISABLED`. Defaults to `ENABLED`.
	State pulumi.StringPtrInput
	// The type of compute environment. Valid items are `EC2` or `SPOT`.
	Type pulumi.StringInput
}

The set of arguments for constructing a ComputeEnvironment resource.

func (ComputeEnvironmentArgs) ElementType

func (ComputeEnvironmentArgs) ElementType() reflect.Type

type ComputeEnvironmentComputeResources

type ComputeEnvironmentComputeResources struct {
	// The allocation strategy to use for the compute resource in case not enough instances of the best fitting instance type can be allocated. Valid items are `BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED` or `BEST_FIT`. Defaults to `BEST_FIT`. See [AWS docs](https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html) for details.
	AllocationStrategy *string `pulumi:"allocationStrategy"`
	// Integer of minimum percentage that a Spot Instance price must be when compared with the On-Demand price for that instance type before instances are launched. For example, if your bid percentage is 20% (`20`), then the Spot price must be below 20% of the current On-Demand price for that EC2 instance. This parameter is required for SPOT compute environments.
	BidPercentage *int `pulumi:"bidPercentage"`
	// The desired number of EC2 vCPUS in the compute environment.
	DesiredVcpus *int `pulumi:"desiredVcpus"`
	// The EC2 key pair that is used for instances launched in the compute environment.
	Ec2KeyPair *string `pulumi:"ec2KeyPair"`
	// The Amazon Machine Image (AMI) ID used for instances launched in the compute environment.
	ImageId *string `pulumi:"imageId"`
	// The Amazon ECS instance role applied to Amazon EC2 instances in a compute environment.
	InstanceRole string `pulumi:"instanceRole"`
	// A list of instance types that may be launched.
	InstanceTypes []string `pulumi:"instanceTypes"`
	// The launch template to use for your compute resources. See details below.
	LaunchTemplate *ComputeEnvironmentComputeResourcesLaunchTemplate `pulumi:"launchTemplate"`
	// The maximum number of EC2 vCPUs that an environment can reach.
	MaxVcpus int `pulumi:"maxVcpus"`
	// The minimum number of EC2 vCPUs that an environment should maintain.
	MinVcpus int `pulumi:"minVcpus"`
	// A list of EC2 security group that are associated with instances launched in the compute environment.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment. This parameter is required for SPOT compute environments.
	SpotIamFleetRole *string `pulumi:"spotIamFleetRole"`
	// A list of VPC subnets into which the compute resources are launched.
	Subnets []string `pulumi:"subnets"`
	// Key-value pair tags to be applied to resources that are launched in the compute environment.
	Tags map[string]string `pulumi:"tags"`
	// The type of compute environment. Valid items are `EC2` or `SPOT`.
	Type string `pulumi:"type"`
}

type ComputeEnvironmentComputeResourcesArgs

type ComputeEnvironmentComputeResourcesArgs struct {
	// The allocation strategy to use for the compute resource in case not enough instances of the best fitting instance type can be allocated. Valid items are `BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED` or `BEST_FIT`. Defaults to `BEST_FIT`. See [AWS docs](https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html) for details.
	AllocationStrategy pulumi.StringPtrInput `pulumi:"allocationStrategy"`
	// Integer of minimum percentage that a Spot Instance price must be when compared with the On-Demand price for that instance type before instances are launched. For example, if your bid percentage is 20% (`20`), then the Spot price must be below 20% of the current On-Demand price for that EC2 instance. This parameter is required for SPOT compute environments.
	BidPercentage pulumi.IntPtrInput `pulumi:"bidPercentage"`
	// The desired number of EC2 vCPUS in the compute environment.
	DesiredVcpus pulumi.IntPtrInput `pulumi:"desiredVcpus"`
	// The EC2 key pair that is used for instances launched in the compute environment.
	Ec2KeyPair pulumi.StringPtrInput `pulumi:"ec2KeyPair"`
	// The Amazon Machine Image (AMI) ID used for instances launched in the compute environment.
	ImageId pulumi.StringPtrInput `pulumi:"imageId"`
	// The Amazon ECS instance role applied to Amazon EC2 instances in a compute environment.
	InstanceRole pulumi.StringInput `pulumi:"instanceRole"`
	// A list of instance types that may be launched.
	InstanceTypes pulumi.StringArrayInput `pulumi:"instanceTypes"`
	// The launch template to use for your compute resources. See details below.
	LaunchTemplate ComputeEnvironmentComputeResourcesLaunchTemplatePtrInput `pulumi:"launchTemplate"`
	// The maximum number of EC2 vCPUs that an environment can reach.
	MaxVcpus pulumi.IntInput `pulumi:"maxVcpus"`
	// The minimum number of EC2 vCPUs that an environment should maintain.
	MinVcpus pulumi.IntInput `pulumi:"minVcpus"`
	// A list of EC2 security group that are associated with instances launched in the compute environment.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment. This parameter is required for SPOT compute environments.
	SpotIamFleetRole pulumi.StringPtrInput `pulumi:"spotIamFleetRole"`
	// A list of VPC subnets into which the compute resources are launched.
	Subnets pulumi.StringArrayInput `pulumi:"subnets"`
	// Key-value pair tags to be applied to resources that are launched in the compute environment.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// The type of compute environment. Valid items are `EC2` or `SPOT`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ComputeEnvironmentComputeResourcesArgs) ElementType

func (ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesOutput

func (i ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesOutput() ComputeEnvironmentComputeResourcesOutput

func (ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesOutputWithContext

func (i ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesOutput

func (ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesPtrOutput

func (i ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesPtrOutput() ComputeEnvironmentComputeResourcesPtrOutput

func (ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesPtrOutputWithContext

func (i ComputeEnvironmentComputeResourcesArgs) ToComputeEnvironmentComputeResourcesPtrOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesPtrOutput

type ComputeEnvironmentComputeResourcesInput

type ComputeEnvironmentComputeResourcesInput interface {
	pulumi.Input

	ToComputeEnvironmentComputeResourcesOutput() ComputeEnvironmentComputeResourcesOutput
	ToComputeEnvironmentComputeResourcesOutputWithContext(context.Context) ComputeEnvironmentComputeResourcesOutput
}

ComputeEnvironmentComputeResourcesInput is an input type that accepts ComputeEnvironmentComputeResourcesArgs and ComputeEnvironmentComputeResourcesOutput values. You can construct a concrete instance of `ComputeEnvironmentComputeResourcesInput` via:

ComputeEnvironmentComputeResourcesArgs{...}

type ComputeEnvironmentComputeResourcesLaunchTemplate

type ComputeEnvironmentComputeResourcesLaunchTemplate struct {
	// ID of the launch template. You must specify either the launch template ID or launch template name in the request, but not both.
	LaunchTemplateId *string `pulumi:"launchTemplateId"`
	// Name of the launch template.
	LaunchTemplateName *string `pulumi:"launchTemplateName"`
	// The version number of the launch template. Default: The default version of the launch template.
	Version *string `pulumi:"version"`
}

type ComputeEnvironmentComputeResourcesLaunchTemplateArgs

type ComputeEnvironmentComputeResourcesLaunchTemplateArgs struct {
	// ID of the launch template. You must specify either the launch template ID or launch template name in the request, but not both.
	LaunchTemplateId pulumi.StringPtrInput `pulumi:"launchTemplateId"`
	// Name of the launch template.
	LaunchTemplateName pulumi.StringPtrInput `pulumi:"launchTemplateName"`
	// The version number of the launch template. Default: The default version of the launch template.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ElementType

func (ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplateOutput

func (i ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplateOutput() ComputeEnvironmentComputeResourcesLaunchTemplateOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplateOutputWithContext

func (i ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplateOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesLaunchTemplateOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (i ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput() ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext

func (i ComputeEnvironmentComputeResourcesLaunchTemplateArgs) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

type ComputeEnvironmentComputeResourcesLaunchTemplateInput

type ComputeEnvironmentComputeResourcesLaunchTemplateInput interface {
	pulumi.Input

	ToComputeEnvironmentComputeResourcesLaunchTemplateOutput() ComputeEnvironmentComputeResourcesLaunchTemplateOutput
	ToComputeEnvironmentComputeResourcesLaunchTemplateOutputWithContext(context.Context) ComputeEnvironmentComputeResourcesLaunchTemplateOutput
}

ComputeEnvironmentComputeResourcesLaunchTemplateInput is an input type that accepts ComputeEnvironmentComputeResourcesLaunchTemplateArgs and ComputeEnvironmentComputeResourcesLaunchTemplateOutput values. You can construct a concrete instance of `ComputeEnvironmentComputeResourcesLaunchTemplateInput` via:

ComputeEnvironmentComputeResourcesLaunchTemplateArgs{...}

type ComputeEnvironmentComputeResourcesLaunchTemplateOutput

type ComputeEnvironmentComputeResourcesLaunchTemplateOutput struct{ *pulumi.OutputState }

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ElementType

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) LaunchTemplateId

ID of the launch template. You must specify either the launch template ID or launch template name in the request, but not both.

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) LaunchTemplateName

Name of the launch template.

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplateOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplateOutputWithContext

func (o ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplateOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesLaunchTemplateOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (o ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput() ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext

func (o ComputeEnvironmentComputeResourcesLaunchTemplateOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplateOutput) Version

The version number of the launch template. Default: The default version of the launch template.

type ComputeEnvironmentComputeResourcesLaunchTemplatePtrInput

type ComputeEnvironmentComputeResourcesLaunchTemplatePtrInput interface {
	pulumi.Input

	ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput() ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput
	ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext(context.Context) ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput
}

ComputeEnvironmentComputeResourcesLaunchTemplatePtrInput is an input type that accepts ComputeEnvironmentComputeResourcesLaunchTemplateArgs, ComputeEnvironmentComputeResourcesLaunchTemplatePtr and ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput values. You can construct a concrete instance of `ComputeEnvironmentComputeResourcesLaunchTemplatePtrInput` via:

        ComputeEnvironmentComputeResourcesLaunchTemplateArgs{...}

or:

        nil

type ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

type ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) Elem

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) ElementType

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) LaunchTemplateId

ID of the launch template. You must specify either the launch template ID or launch template name in the request, but not both.

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) LaunchTemplateName

Name of the launch template.

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext

func (o ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) ToComputeEnvironmentComputeResourcesLaunchTemplatePtrOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput

func (ComputeEnvironmentComputeResourcesLaunchTemplatePtrOutput) Version

The version number of the launch template. Default: The default version of the launch template.

type ComputeEnvironmentComputeResourcesOutput

type ComputeEnvironmentComputeResourcesOutput struct{ *pulumi.OutputState }

func (ComputeEnvironmentComputeResourcesOutput) AllocationStrategy

The allocation strategy to use for the compute resource in case not enough instances of the best fitting instance type can be allocated. Valid items are `BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED` or `BEST_FIT`. Defaults to `BEST_FIT`. See [AWS docs](https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html) for details.

func (ComputeEnvironmentComputeResourcesOutput) BidPercentage

Integer of minimum percentage that a Spot Instance price must be when compared with the On-Demand price for that instance type before instances are launched. For example, if your bid percentage is 20% (`20`), then the Spot price must be below 20% of the current On-Demand price for that EC2 instance. This parameter is required for SPOT compute environments.

func (ComputeEnvironmentComputeResourcesOutput) DesiredVcpus

The desired number of EC2 vCPUS in the compute environment.

func (ComputeEnvironmentComputeResourcesOutput) Ec2KeyPair

The EC2 key pair that is used for instances launched in the compute environment.

func (ComputeEnvironmentComputeResourcesOutput) ElementType

func (ComputeEnvironmentComputeResourcesOutput) ImageId

The Amazon Machine Image (AMI) ID used for instances launched in the compute environment.

func (ComputeEnvironmentComputeResourcesOutput) InstanceRole

The Amazon ECS instance role applied to Amazon EC2 instances in a compute environment.

func (ComputeEnvironmentComputeResourcesOutput) InstanceTypes

A list of instance types that may be launched.

func (ComputeEnvironmentComputeResourcesOutput) LaunchTemplate

The launch template to use for your compute resources. See details below.

func (ComputeEnvironmentComputeResourcesOutput) MaxVcpus

The maximum number of EC2 vCPUs that an environment can reach.

func (ComputeEnvironmentComputeResourcesOutput) MinVcpus

The minimum number of EC2 vCPUs that an environment should maintain.

func (ComputeEnvironmentComputeResourcesOutput) SecurityGroupIds

A list of EC2 security group that are associated with instances launched in the compute environment.

func (ComputeEnvironmentComputeResourcesOutput) SpotIamFleetRole

The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment. This parameter is required for SPOT compute environments.

func (ComputeEnvironmentComputeResourcesOutput) Subnets

A list of VPC subnets into which the compute resources are launched.

func (ComputeEnvironmentComputeResourcesOutput) Tags

Key-value pair tags to be applied to resources that are launched in the compute environment.

func (ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesOutput

func (o ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesOutput() ComputeEnvironmentComputeResourcesOutput

func (ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesOutputWithContext

func (o ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesOutput

func (ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesPtrOutput

func (o ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesPtrOutput() ComputeEnvironmentComputeResourcesPtrOutput

func (ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesPtrOutputWithContext

func (o ComputeEnvironmentComputeResourcesOutput) ToComputeEnvironmentComputeResourcesPtrOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesPtrOutput

func (ComputeEnvironmentComputeResourcesOutput) Type

The type of compute environment. Valid items are `EC2` or `SPOT`.

type ComputeEnvironmentComputeResourcesPtrInput

type ComputeEnvironmentComputeResourcesPtrInput interface {
	pulumi.Input

	ToComputeEnvironmentComputeResourcesPtrOutput() ComputeEnvironmentComputeResourcesPtrOutput
	ToComputeEnvironmentComputeResourcesPtrOutputWithContext(context.Context) ComputeEnvironmentComputeResourcesPtrOutput
}

ComputeEnvironmentComputeResourcesPtrInput is an input type that accepts ComputeEnvironmentComputeResourcesArgs, ComputeEnvironmentComputeResourcesPtr and ComputeEnvironmentComputeResourcesPtrOutput values. You can construct a concrete instance of `ComputeEnvironmentComputeResourcesPtrInput` via:

        ComputeEnvironmentComputeResourcesArgs{...}

or:

        nil

type ComputeEnvironmentComputeResourcesPtrOutput

type ComputeEnvironmentComputeResourcesPtrOutput struct{ *pulumi.OutputState }

func (ComputeEnvironmentComputeResourcesPtrOutput) AllocationStrategy

The allocation strategy to use for the compute resource in case not enough instances of the best fitting instance type can be allocated. Valid items are `BEST_FIT_PROGRESSIVE`, `SPOT_CAPACITY_OPTIMIZED` or `BEST_FIT`. Defaults to `BEST_FIT`. See [AWS docs](https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html) for details.

func (ComputeEnvironmentComputeResourcesPtrOutput) BidPercentage

Integer of minimum percentage that a Spot Instance price must be when compared with the On-Demand price for that instance type before instances are launched. For example, if your bid percentage is 20% (`20`), then the Spot price must be below 20% of the current On-Demand price for that EC2 instance. This parameter is required for SPOT compute environments.

func (ComputeEnvironmentComputeResourcesPtrOutput) DesiredVcpus

The desired number of EC2 vCPUS in the compute environment.

func (ComputeEnvironmentComputeResourcesPtrOutput) Ec2KeyPair

The EC2 key pair that is used for instances launched in the compute environment.

func (ComputeEnvironmentComputeResourcesPtrOutput) Elem

func (ComputeEnvironmentComputeResourcesPtrOutput) ElementType

func (ComputeEnvironmentComputeResourcesPtrOutput) ImageId

The Amazon Machine Image (AMI) ID used for instances launched in the compute environment.

func (ComputeEnvironmentComputeResourcesPtrOutput) InstanceRole

The Amazon ECS instance role applied to Amazon EC2 instances in a compute environment.

func (ComputeEnvironmentComputeResourcesPtrOutput) InstanceTypes

A list of instance types that may be launched.

func (ComputeEnvironmentComputeResourcesPtrOutput) LaunchTemplate

The launch template to use for your compute resources. See details below.

func (ComputeEnvironmentComputeResourcesPtrOutput) MaxVcpus

The maximum number of EC2 vCPUs that an environment can reach.

func (ComputeEnvironmentComputeResourcesPtrOutput) MinVcpus

The minimum number of EC2 vCPUs that an environment should maintain.

func (ComputeEnvironmentComputeResourcesPtrOutput) SecurityGroupIds

A list of EC2 security group that are associated with instances launched in the compute environment.

func (ComputeEnvironmentComputeResourcesPtrOutput) SpotIamFleetRole

The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment. This parameter is required for SPOT compute environments.

func (ComputeEnvironmentComputeResourcesPtrOutput) Subnets

A list of VPC subnets into which the compute resources are launched.

func (ComputeEnvironmentComputeResourcesPtrOutput) Tags

Key-value pair tags to be applied to resources that are launched in the compute environment.

func (ComputeEnvironmentComputeResourcesPtrOutput) ToComputeEnvironmentComputeResourcesPtrOutput

func (o ComputeEnvironmentComputeResourcesPtrOutput) ToComputeEnvironmentComputeResourcesPtrOutput() ComputeEnvironmentComputeResourcesPtrOutput

func (ComputeEnvironmentComputeResourcesPtrOutput) ToComputeEnvironmentComputeResourcesPtrOutputWithContext

func (o ComputeEnvironmentComputeResourcesPtrOutput) ToComputeEnvironmentComputeResourcesPtrOutputWithContext(ctx context.Context) ComputeEnvironmentComputeResourcesPtrOutput

func (ComputeEnvironmentComputeResourcesPtrOutput) Type

The type of compute environment. Valid items are `EC2` or `SPOT`.

type ComputeEnvironmentState

type ComputeEnvironmentState struct {
	// The Amazon Resource Name (ARN) of the compute environment.
	Arn pulumi.StringPtrInput
	// The name for your compute environment. Up to 128 letters (uppercase and lowercase), numbers, and underscores are allowed. If omitted, this provider will assign a random, unique name.
	ComputeEnvironmentName pulumi.StringPtrInput
	// Creates a unique compute environment name beginning with the specified prefix. Conflicts with `computeEnvironmentName`.
	ComputeEnvironmentNamePrefix pulumi.StringPtrInput
	// Details of the compute resources managed by the compute environment. This parameter is required for managed compute environments. See details below.
	ComputeResources ComputeEnvironmentComputeResourcesPtrInput
	// The Amazon Resource Name (ARN) of the underlying Amazon ECS cluster used by the compute environment.
	EcsClusterArn pulumi.StringPtrInput
	// The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.
	ServiceRole pulumi.StringPtrInput
	// The state of the compute environment. If the state is `ENABLED`, then the compute environment accepts jobs from a queue and can scale out automatically based on queues. Valid items are `ENABLED` or `DISABLED`. Defaults to `ENABLED`.
	State pulumi.StringPtrInput
	// The current status of the compute environment (for example, CREATING or VALID).
	Status pulumi.StringPtrInput
	// A short, human-readable string to provide additional details about the current status of the compute environment.
	StatusReason pulumi.StringPtrInput
	// The type of compute environment. Valid items are `EC2` or `SPOT`.
	Type pulumi.StringPtrInput
}

func (ComputeEnvironmentState) ElementType

func (ComputeEnvironmentState) ElementType() reflect.Type

type GetJobQueueComputeEnvironmentOrder

type GetJobQueueComputeEnvironmentOrder struct {
	ComputeEnvironment string `pulumi:"computeEnvironment"`
	Order              int    `pulumi:"order"`
}

type GetJobQueueComputeEnvironmentOrderArgs

type GetJobQueueComputeEnvironmentOrderArgs struct {
	ComputeEnvironment pulumi.StringInput `pulumi:"computeEnvironment"`
	Order              pulumi.IntInput    `pulumi:"order"`
}

func (GetJobQueueComputeEnvironmentOrderArgs) ElementType

func (GetJobQueueComputeEnvironmentOrderArgs) ToGetJobQueueComputeEnvironmentOrderOutput

func (i GetJobQueueComputeEnvironmentOrderArgs) ToGetJobQueueComputeEnvironmentOrderOutput() GetJobQueueComputeEnvironmentOrderOutput

func (GetJobQueueComputeEnvironmentOrderArgs) ToGetJobQueueComputeEnvironmentOrderOutputWithContext

func (i GetJobQueueComputeEnvironmentOrderArgs) ToGetJobQueueComputeEnvironmentOrderOutputWithContext(ctx context.Context) GetJobQueueComputeEnvironmentOrderOutput

type GetJobQueueComputeEnvironmentOrderArray

type GetJobQueueComputeEnvironmentOrderArray []GetJobQueueComputeEnvironmentOrderInput

func (GetJobQueueComputeEnvironmentOrderArray) ElementType

func (GetJobQueueComputeEnvironmentOrderArray) ToGetJobQueueComputeEnvironmentOrderArrayOutput

func (i GetJobQueueComputeEnvironmentOrderArray) ToGetJobQueueComputeEnvironmentOrderArrayOutput() GetJobQueueComputeEnvironmentOrderArrayOutput

func (GetJobQueueComputeEnvironmentOrderArray) ToGetJobQueueComputeEnvironmentOrderArrayOutputWithContext

func (i GetJobQueueComputeEnvironmentOrderArray) ToGetJobQueueComputeEnvironmentOrderArrayOutputWithContext(ctx context.Context) GetJobQueueComputeEnvironmentOrderArrayOutput

type GetJobQueueComputeEnvironmentOrderArrayInput

type GetJobQueueComputeEnvironmentOrderArrayInput interface {
	pulumi.Input

	ToGetJobQueueComputeEnvironmentOrderArrayOutput() GetJobQueueComputeEnvironmentOrderArrayOutput
	ToGetJobQueueComputeEnvironmentOrderArrayOutputWithContext(context.Context) GetJobQueueComputeEnvironmentOrderArrayOutput
}

GetJobQueueComputeEnvironmentOrderArrayInput is an input type that accepts GetJobQueueComputeEnvironmentOrderArray and GetJobQueueComputeEnvironmentOrderArrayOutput values. You can construct a concrete instance of `GetJobQueueComputeEnvironmentOrderArrayInput` via:

GetJobQueueComputeEnvironmentOrderArray{ GetJobQueueComputeEnvironmentOrderArgs{...} }

type GetJobQueueComputeEnvironmentOrderArrayOutput

type GetJobQueueComputeEnvironmentOrderArrayOutput struct{ *pulumi.OutputState }

func (GetJobQueueComputeEnvironmentOrderArrayOutput) ElementType

func (GetJobQueueComputeEnvironmentOrderArrayOutput) Index

func (GetJobQueueComputeEnvironmentOrderArrayOutput) ToGetJobQueueComputeEnvironmentOrderArrayOutput

func (o GetJobQueueComputeEnvironmentOrderArrayOutput) ToGetJobQueueComputeEnvironmentOrderArrayOutput() GetJobQueueComputeEnvironmentOrderArrayOutput

func (GetJobQueueComputeEnvironmentOrderArrayOutput) ToGetJobQueueComputeEnvironmentOrderArrayOutputWithContext

func (o GetJobQueueComputeEnvironmentOrderArrayOutput) ToGetJobQueueComputeEnvironmentOrderArrayOutputWithContext(ctx context.Context) GetJobQueueComputeEnvironmentOrderArrayOutput

type GetJobQueueComputeEnvironmentOrderInput

type GetJobQueueComputeEnvironmentOrderInput interface {
	pulumi.Input

	ToGetJobQueueComputeEnvironmentOrderOutput() GetJobQueueComputeEnvironmentOrderOutput
	ToGetJobQueueComputeEnvironmentOrderOutputWithContext(context.Context) GetJobQueueComputeEnvironmentOrderOutput
}

GetJobQueueComputeEnvironmentOrderInput is an input type that accepts GetJobQueueComputeEnvironmentOrderArgs and GetJobQueueComputeEnvironmentOrderOutput values. You can construct a concrete instance of `GetJobQueueComputeEnvironmentOrderInput` via:

GetJobQueueComputeEnvironmentOrderArgs{...}

type GetJobQueueComputeEnvironmentOrderOutput

type GetJobQueueComputeEnvironmentOrderOutput struct{ *pulumi.OutputState }

func (GetJobQueueComputeEnvironmentOrderOutput) ComputeEnvironment

func (GetJobQueueComputeEnvironmentOrderOutput) ElementType

func (GetJobQueueComputeEnvironmentOrderOutput) Order

func (GetJobQueueComputeEnvironmentOrderOutput) ToGetJobQueueComputeEnvironmentOrderOutput

func (o GetJobQueueComputeEnvironmentOrderOutput) ToGetJobQueueComputeEnvironmentOrderOutput() GetJobQueueComputeEnvironmentOrderOutput

func (GetJobQueueComputeEnvironmentOrderOutput) ToGetJobQueueComputeEnvironmentOrderOutputWithContext

func (o GetJobQueueComputeEnvironmentOrderOutput) ToGetJobQueueComputeEnvironmentOrderOutputWithContext(ctx context.Context) GetJobQueueComputeEnvironmentOrderOutput

type JobDefinition

type JobDefinition struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name of the job definition.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A valid [container properties](http://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html)
	// provided as a single valid JSON document. This parameter is required if the `type` parameter is `container`.
	ContainerProperties pulumi.StringPtrOutput `pulumi:"containerProperties"`
	// Specifies the name of the job definition.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the parameter substitution placeholders to set in the job definition.
	Parameters pulumi.StringMapOutput `pulumi:"parameters"`
	// Specifies the retry strategy to use for failed jobs that are submitted with this job definition.
	// Maximum number of `retryStrategy` is `1`.  Defined below.
	RetryStrategy JobDefinitionRetryStrategyPtrOutput `pulumi:"retryStrategy"`
	// The revision of the job definition.
	Revision pulumi.IntOutput `pulumi:"revision"`
	// Specifies the timeout for jobs so that if a job runs longer, AWS Batch terminates the job. Maximum number of `timeout` is `1`. Defined below.
	Timeout JobDefinitionTimeoutPtrOutput `pulumi:"timeout"`
	// The type of job definition.  Must be `container`
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a Batch Job Definition resource.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/batch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := batch.NewJobDefinition(ctx, "test", &batch.JobDefinitionArgs{
			ContainerProperties: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "	\"command\": [\"ls\", \"-la\"],\n", "	\"image\": \"busybox\",\n", "	\"memory\": 1024,\n", "	\"vcpus\": 1,\n", "	\"volumes\": [\n", "      {\n", "        \"host\": {\n", "          \"sourcePath\": \"/tmp\"\n", "        },\n", "        \"name\": \"tmp\"\n", "      }\n", "    ],\n", "	\"environment\": [\n", "		{\"name\": \"VARNAME\", \"value\": \"VARVAL\"}\n", "	],\n", "	\"mountPoints\": [\n", "		{\n", "          \"sourceVolume\": \"tmp\",\n", "          \"containerPath\": \"/tmp\",\n", "          \"readOnly\": false\n", "        }\n", "	],\n", "    \"ulimits\": [\n", "      {\n", "        \"hardLimit\": 1024,\n", "        \"name\": \"nofile\",\n", "        \"softLimit\": 1024\n", "      }\n", "    ]\n", "}\n", "\n")),
			Type: pulumi.String("container"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetJobDefinition

func GetJobDefinition(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *JobDefinitionState, opts ...pulumi.ResourceOption) (*JobDefinition, error)

GetJobDefinition gets an existing JobDefinition 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 NewJobDefinition

func NewJobDefinition(ctx *pulumi.Context,
	name string, args *JobDefinitionArgs, opts ...pulumi.ResourceOption) (*JobDefinition, error)

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

type JobDefinitionArgs

type JobDefinitionArgs struct {
	// A valid [container properties](http://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html)
	// provided as a single valid JSON document. This parameter is required if the `type` parameter is `container`.
	ContainerProperties pulumi.StringPtrInput
	// Specifies the name of the job definition.
	Name pulumi.StringPtrInput
	// Specifies the parameter substitution placeholders to set in the job definition.
	Parameters pulumi.StringMapInput
	// Specifies the retry strategy to use for failed jobs that are submitted with this job definition.
	// Maximum number of `retryStrategy` is `1`.  Defined below.
	RetryStrategy JobDefinitionRetryStrategyPtrInput
	// Specifies the timeout for jobs so that if a job runs longer, AWS Batch terminates the job. Maximum number of `timeout` is `1`. Defined below.
	Timeout JobDefinitionTimeoutPtrInput
	// The type of job definition.  Must be `container`
	Type pulumi.StringInput
}

The set of arguments for constructing a JobDefinition resource.

func (JobDefinitionArgs) ElementType

func (JobDefinitionArgs) ElementType() reflect.Type

type JobDefinitionRetryStrategy

type JobDefinitionRetryStrategy struct {
	// The number of times to move a job to the `RUNNABLE` status. You may specify between `1` and `10` attempts.
	Attempts *int `pulumi:"attempts"`
}

type JobDefinitionRetryStrategyArgs

type JobDefinitionRetryStrategyArgs struct {
	// The number of times to move a job to the `RUNNABLE` status. You may specify between `1` and `10` attempts.
	Attempts pulumi.IntPtrInput `pulumi:"attempts"`
}

func (JobDefinitionRetryStrategyArgs) ElementType

func (JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutput

func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput

func (JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutputWithContext

func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyOutput

func (JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutput

func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput

func (JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutputWithContext

func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput

type JobDefinitionRetryStrategyInput

type JobDefinitionRetryStrategyInput interface {
	pulumi.Input

	ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput
	ToJobDefinitionRetryStrategyOutputWithContext(context.Context) JobDefinitionRetryStrategyOutput
}

JobDefinitionRetryStrategyInput is an input type that accepts JobDefinitionRetryStrategyArgs and JobDefinitionRetryStrategyOutput values. You can construct a concrete instance of `JobDefinitionRetryStrategyInput` via:

JobDefinitionRetryStrategyArgs{...}

type JobDefinitionRetryStrategyOutput

type JobDefinitionRetryStrategyOutput struct{ *pulumi.OutputState }

func (JobDefinitionRetryStrategyOutput) Attempts

The number of times to move a job to the `RUNNABLE` status. You may specify between `1` and `10` attempts.

func (JobDefinitionRetryStrategyOutput) ElementType

func (JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutput

func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput

func (JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutputWithContext

func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyOutput

func (JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutput

func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput

func (JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext

func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput

type JobDefinitionRetryStrategyPtrInput

type JobDefinitionRetryStrategyPtrInput interface {
	pulumi.Input

	ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput
	ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Context) JobDefinitionRetryStrategyPtrOutput
}

JobDefinitionRetryStrategyPtrInput is an input type that accepts JobDefinitionRetryStrategyArgs, JobDefinitionRetryStrategyPtr and JobDefinitionRetryStrategyPtrOutput values. You can construct a concrete instance of `JobDefinitionRetryStrategyPtrInput` via:

        JobDefinitionRetryStrategyArgs{...}

or:

        nil

type JobDefinitionRetryStrategyPtrOutput

type JobDefinitionRetryStrategyPtrOutput struct{ *pulumi.OutputState }

func (JobDefinitionRetryStrategyPtrOutput) Attempts

The number of times to move a job to the `RUNNABLE` status. You may specify between `1` and `10` attempts.

func (JobDefinitionRetryStrategyPtrOutput) Elem

func (JobDefinitionRetryStrategyPtrOutput) ElementType

func (JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutput

func (o JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput

func (JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext

func (o JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput

type JobDefinitionState

type JobDefinitionState struct {
	// The Amazon Resource Name of the job definition.
	Arn pulumi.StringPtrInput
	// A valid [container properties](http://docs.aws.amazon.com/batch/latest/APIReference/API_RegisterJobDefinition.html)
	// provided as a single valid JSON document. This parameter is required if the `type` parameter is `container`.
	ContainerProperties pulumi.StringPtrInput
	// Specifies the name of the job definition.
	Name pulumi.StringPtrInput
	// Specifies the parameter substitution placeholders to set in the job definition.
	Parameters pulumi.StringMapInput
	// Specifies the retry strategy to use for failed jobs that are submitted with this job definition.
	// Maximum number of `retryStrategy` is `1`.  Defined below.
	RetryStrategy JobDefinitionRetryStrategyPtrInput
	// The revision of the job definition.
	Revision pulumi.IntPtrInput
	// Specifies the timeout for jobs so that if a job runs longer, AWS Batch terminates the job. Maximum number of `timeout` is `1`. Defined below.
	Timeout JobDefinitionTimeoutPtrInput
	// The type of job definition.  Must be `container`
	Type pulumi.StringPtrInput
}

func (JobDefinitionState) ElementType

func (JobDefinitionState) ElementType() reflect.Type

type JobDefinitionTimeout

type JobDefinitionTimeout struct {
	// The time duration in seconds after which AWS Batch terminates your jobs if they have not finished. The minimum value for the timeout is `60` seconds.
	AttemptDurationSeconds *int `pulumi:"attemptDurationSeconds"`
}

type JobDefinitionTimeoutArgs

type JobDefinitionTimeoutArgs struct {
	// The time duration in seconds after which AWS Batch terminates your jobs if they have not finished. The minimum value for the timeout is `60` seconds.
	AttemptDurationSeconds pulumi.IntPtrInput `pulumi:"attemptDurationSeconds"`
}

func (JobDefinitionTimeoutArgs) ElementType

func (JobDefinitionTimeoutArgs) ElementType() reflect.Type

func (JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutOutput

func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutOutput() JobDefinitionTimeoutOutput

func (JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutOutputWithContext

func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutOutputWithContext(ctx context.Context) JobDefinitionTimeoutOutput

func (JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutPtrOutput

func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput

func (JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutPtrOutputWithContext

func (i JobDefinitionTimeoutArgs) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput

type JobDefinitionTimeoutInput

type JobDefinitionTimeoutInput interface {
	pulumi.Input

	ToJobDefinitionTimeoutOutput() JobDefinitionTimeoutOutput
	ToJobDefinitionTimeoutOutputWithContext(context.Context) JobDefinitionTimeoutOutput
}

JobDefinitionTimeoutInput is an input type that accepts JobDefinitionTimeoutArgs and JobDefinitionTimeoutOutput values. You can construct a concrete instance of `JobDefinitionTimeoutInput` via:

JobDefinitionTimeoutArgs{...}

type JobDefinitionTimeoutOutput

type JobDefinitionTimeoutOutput struct{ *pulumi.OutputState }

func (JobDefinitionTimeoutOutput) AttemptDurationSeconds

func (o JobDefinitionTimeoutOutput) AttemptDurationSeconds() pulumi.IntPtrOutput

The time duration in seconds after which AWS Batch terminates your jobs if they have not finished. The minimum value for the timeout is `60` seconds.

func (JobDefinitionTimeoutOutput) ElementType

func (JobDefinitionTimeoutOutput) ElementType() reflect.Type

func (JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutOutput

func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutOutput() JobDefinitionTimeoutOutput

func (JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutOutputWithContext

func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutOutputWithContext(ctx context.Context) JobDefinitionTimeoutOutput

func (JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutPtrOutput

func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput

func (JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutPtrOutputWithContext

func (o JobDefinitionTimeoutOutput) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput

type JobDefinitionTimeoutPtrInput

type JobDefinitionTimeoutPtrInput interface {
	pulumi.Input

	ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput
	ToJobDefinitionTimeoutPtrOutputWithContext(context.Context) JobDefinitionTimeoutPtrOutput
}

JobDefinitionTimeoutPtrInput is an input type that accepts JobDefinitionTimeoutArgs, JobDefinitionTimeoutPtr and JobDefinitionTimeoutPtrOutput values. You can construct a concrete instance of `JobDefinitionTimeoutPtrInput` via:

        JobDefinitionTimeoutArgs{...}

or:

        nil

type JobDefinitionTimeoutPtrOutput

type JobDefinitionTimeoutPtrOutput struct{ *pulumi.OutputState }

func (JobDefinitionTimeoutPtrOutput) AttemptDurationSeconds

func (o JobDefinitionTimeoutPtrOutput) AttemptDurationSeconds() pulumi.IntPtrOutput

The time duration in seconds after which AWS Batch terminates your jobs if they have not finished. The minimum value for the timeout is `60` seconds.

func (JobDefinitionTimeoutPtrOutput) Elem

func (JobDefinitionTimeoutPtrOutput) ElementType

func (JobDefinitionTimeoutPtrOutput) ToJobDefinitionTimeoutPtrOutput

func (o JobDefinitionTimeoutPtrOutput) ToJobDefinitionTimeoutPtrOutput() JobDefinitionTimeoutPtrOutput

func (JobDefinitionTimeoutPtrOutput) ToJobDefinitionTimeoutPtrOutputWithContext

func (o JobDefinitionTimeoutPtrOutput) ToJobDefinitionTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionTimeoutPtrOutput

type JobQueue

type JobQueue struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name of the job queue.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Specifies the set of compute environments
	// mapped to a job queue and their order.  The position of the compute environments
	// in the list will dictate the order. You can associate up to 3 compute environments
	// with a job queue.
	ComputeEnvironments pulumi.StringArrayOutput `pulumi:"computeEnvironments"`
	// Specifies the name of the job queue.
	Name pulumi.StringOutput `pulumi:"name"`
	// The priority of the job queue. Job queues with a higher priority
	// are evaluated first when associated with the same compute environment.
	Priority pulumi.IntOutput `pulumi:"priority"`
	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
	State pulumi.StringOutput `pulumi:"state"`
}

Provides a Batch Job Queue resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/batch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := batch.NewJobQueue(ctx, "testQueue", &batch.JobQueueArgs{
			ComputeEnvironments: pulumi.StringArray{
				pulumi.String(aws_batch_compute_environment.Test_environment_1.Arn),
				pulumi.String(aws_batch_compute_environment.Test_environment_2.Arn),
			},
			Priority: pulumi.Int(1),
			State:    pulumi.String("ENABLED"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetJobQueue

func GetJobQueue(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *JobQueueState, opts ...pulumi.ResourceOption) (*JobQueue, error)

GetJobQueue gets an existing JobQueue 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 NewJobQueue

func NewJobQueue(ctx *pulumi.Context,
	name string, args *JobQueueArgs, opts ...pulumi.ResourceOption) (*JobQueue, error)

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

type JobQueueArgs

type JobQueueArgs struct {
	// Specifies the set of compute environments
	// mapped to a job queue and their order.  The position of the compute environments
	// in the list will dictate the order. You can associate up to 3 compute environments
	// with a job queue.
	ComputeEnvironments pulumi.StringArrayInput
	// Specifies the name of the job queue.
	Name pulumi.StringPtrInput
	// The priority of the job queue. Job queues with a higher priority
	// are evaluated first when associated with the same compute environment.
	Priority pulumi.IntInput
	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
	State pulumi.StringInput
}

The set of arguments for constructing a JobQueue resource.

func (JobQueueArgs) ElementType

func (JobQueueArgs) ElementType() reflect.Type

type JobQueueState

type JobQueueState struct {
	// The Amazon Resource Name of the job queue.
	Arn pulumi.StringPtrInput
	// Specifies the set of compute environments
	// mapped to a job queue and their order.  The position of the compute environments
	// in the list will dictate the order. You can associate up to 3 compute environments
	// with a job queue.
	ComputeEnvironments pulumi.StringArrayInput
	// Specifies the name of the job queue.
	Name pulumi.StringPtrInput
	// The priority of the job queue. Job queues with a higher priority
	// are evaluated first when associated with the same compute environment.
	Priority pulumi.IntPtrInput
	// The state of the job queue. Must be one of: `ENABLED` or `DISABLED`
	State pulumi.StringPtrInput
}

func (JobQueueState) ElementType

func (JobQueueState) ElementType() reflect.Type

type LookupComputeEnvironmentArgs

type LookupComputeEnvironmentArgs struct {
	// The name of the Batch Compute Environment
	ComputeEnvironmentName string `pulumi:"computeEnvironmentName"`
}

A collection of arguments for invoking getComputeEnvironment.

type LookupComputeEnvironmentResult

type LookupComputeEnvironmentResult struct {
	// The ARN of the compute environment.
	Arn                    string `pulumi:"arn"`
	ComputeEnvironmentName string `pulumi:"computeEnvironmentName"`
	// The ARN of the underlying Amazon ECS cluster used by the compute environment.
	EcsClusterArn string `pulumi:"ecsClusterArn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The ARN of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.
	ServiceRole string `pulumi:"serviceRole"`
	// The state of the compute environment (for example, `ENABLED` or `DISABLED`). If the state is `ENABLED`, then the compute environment accepts jobs from a queue and can scale out automatically based on queues.
	State string `pulumi:"state"`
	// The current status of the compute environment (for example, `CREATING` or `VALID`).
	Status string `pulumi:"status"`
	// A short, human-readable string to provide additional details about the current status of the compute environment.
	StatusReason string `pulumi:"statusReason"`
	// The type of the compute environment (for example, `MANAGED` or `UNMANAGED`).
	Type string `pulumi:"type"`
}

A collection of values returned by getComputeEnvironment.

func LookupComputeEnvironment

func LookupComputeEnvironment(ctx *pulumi.Context, args *LookupComputeEnvironmentArgs, opts ...pulumi.InvokeOption) (*LookupComputeEnvironmentResult, error)

The Batch Compute Environment data source allows access to details of a specific compute environment within AWS Batch.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/batch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := batch.LookupComputeEnvironment(ctx, &batch.LookupComputeEnvironmentArgs{
			ComputeEnvironmentName: "batch-mongo-production",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupJobQueueArgs

type LookupJobQueueArgs struct {
	// The name of the job queue.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getJobQueue.

type LookupJobQueueResult

type LookupJobQueueResult struct {
	// The ARN of the job queue.
	Arn string `pulumi:"arn"`
	// The compute environments that are attached to the job queue and the order in
	// which job placement is preferred. Compute environments are selected for job placement in ascending order.
	// * `compute_environment_order.#.order` - The order of the compute environment.
	// * `compute_environment_order.#.compute_environment` - The ARN of the compute environment.
	ComputeEnvironmentOrders []GetJobQueueComputeEnvironmentOrder `pulumi:"computeEnvironmentOrders"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// The priority of the job queue. Job queues with a higher priority are evaluated first when
	// associated with the same compute environment.
	Priority int `pulumi:"priority"`
	// Describes the ability of the queue to accept new jobs (for example, `ENABLED` or `DISABLED`).
	State string `pulumi:"state"`
	// The current status of the job queue (for example, `CREATING` or `VALID`).
	Status string `pulumi:"status"`
	// A short, human-readable string to provide additional details about the current status
	// of the job queue.
	StatusReason string `pulumi:"statusReason"`
}

A collection of values returned by getJobQueue.

func LookupJobQueue

func LookupJobQueue(ctx *pulumi.Context, args *LookupJobQueueArgs, opts ...pulumi.InvokeOption) (*LookupJobQueueResult, error)

The Batch Job Queue data source allows access to details of a specific job queue within AWS Batch.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/batch"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := batch.LookupJobQueue(ctx, &batch.LookupJobQueueArgs{
			Name: "tf-test-batch-job-queue",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

Jump to

Keyboard shortcuts

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