using System.Collections.Generic;
namespace Amazon.Lambda.CloudWatchEvents.BatchEvents
{
///
/// An object representing the details of a container that is part of a job.
/// https://docs.aws.amazon.com/batch/latest/APIReference/API_ContainerDetail.html
///
public class ContainerDetail
{
///
/// The command that is passed to the container.
///
public List Command { get; set; }
///
/// The Amazon Resource Name (ARN) of the container instance on which the container is running.
///
public string ContainerInstanceArn { get; set; }
///
/// The environment variables to pass to a container.
/// Note: Environment variables must not start with AWS_BATCH; this naming convention is reserved
/// for variables that are set by the AWS Batch service.
///
public List Environment { get; set; }
///
/// The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume.
///
public string ExecutionRoleArn { get; set; }
///
/// The exit code to return upon completion.
///
public int ExitCode { get; set; }
///
/// The platform configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.
///
public FargatePlatformConfiguration FargatePlatformConfiguration { get; set; }
///
/// The image used to start the container.
///
public string Image { get; set; }
///
/// The instance type executing the container.
///
public string InstanceType { get; set; }
///
/// The Amazon Resource Name (ARN) associated with the job upon execution.
///
public string JobRoleArn { get; set; }
///
/// Linux-specific modifications that are applied to the container, such as details for device mappings.
///
public LinuxParameters LinuxParameters { get; set; }
///
/// The log configuration specification for the container.
///
public LogConfiguration LogConfiguration { get; set; }
///
/// The name of the CloudWatch Logs log stream associated with the container.
/// The log group for AWS Batch jobs is /aws/batch/job. Each container attempt receives a
/// log stream name when they reach the RUNNING status.
///
public string LogStreamName { get; set; }
///
/// The number of MiB of memory reserved for the job.
///
public int Memory { get; set; }
///
/// The mount points for data volumes in your container.
///
public List MountPoints { get; set; }
///
/// The network configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.
///
public NetworkConfiguration NetworkConfiguration { get; set; }
///
/// Details about the network interfaces in your container.
///
public List NetworkInterfaces { get; set; }
///
/// When this parameter is true, the container is given elevated privileges on the
/// host container instance (similar to the root user).
///
public bool Privileged { get; set; }
///
/// When this parameter is true, the container is given read-only access to its root file system.
///
public bool ReadonlyRootFilesystem { get; set; }
///
/// A short (255 max characters) human-readable string to provide additional
/// details about a running or stopped container.
///
public string Reason { get; set; }
///
/// The type and amount of resources to assign to a container. The supported resources include GPU, MEMORY, and VCPU.
///
public List ResourceRequirements { get; set; }
///
/// The secrets to pass to the container. For more information, see Specifying sensitive data in the AWS Batch User Guide.
///
public List Secrets { get; set; }
///
/// The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with the container job.
/// Each container attempt receives a task ARN when they reach the STARTING status.
///
public string TaskArn { get; set; }
///
/// A list of ulimit values to set in the container.
///
public List Ulimits { get; set; }
///
/// The user name to use inside the container.
///
public string User { get; set; }
///
/// The number of VCPUs allocated for the job.
///
public int Vcpus { get; set; }
///
/// A list of volumes associated with the job.
///
public List Volumes { get; set; }
}
}