using System.Collections.Generic;
namespace Amazon.Lambda.CloudWatchEvents.BatchEvents
{
///
/// Container properties are used in job definitions to describe the container that's launched as part of a job.
///
public class ContainerProperties
{
///
/// The command that is passed to the container.
///
public List Command { 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 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 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; }
///
/// 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; }
///
/// 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; }
///
/// 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; }
}
}