using System.Collections.Generic;
namespace Amazon.Lambda.CloudWatchEvents.BatchEvents
{
///
/// Linux-specific modifications that are applied to the container, such as details for device mappings.
///
public class LinuxParameters
{
///
/// Any host devices to expose to the container. This parameter maps to Devices in the
/// Create a container
/// section of the Docker Remote API and the --device option to docker run.
///
public List Devices { get; set; }
///
/// If true, run an init process inside the container that forwards signals and reaps processes.
/// This parameter maps to the --init option to docker run.
/// This parameter requires version 1.25 of the Docker Remote API or greater on your container instance.
/// To check the Docker Remote API version on your container instance, log into your container instance and run the following command:
/// sudo docker version | grep "Server API version"
///
public bool InitProcessEnabled { get; set; }
///
/// The total amount of swap memory (in MiB) a container can use. This parameter is translated to the --memory-swap option to
/// docker run where the value is the sum of the container memory plus the maxSwap value.
/// For more information, see --memory-swap details in the Docker documentation.
///
/// If a maxSwap value of 0 is specified, the container doesn't use swap. Accepted values are 0 or any positive integer.
/// If the maxSwap parameter is omitted, the container doesn't use the swap configuration for the container instance it is running on. A maxSwap
/// value must be set for the swappiness parameter to be used.
///
///
public int MaxSwap { get; set; }
///
/// The value for the size (in MiB) of the /dev/shm volume. This parameter maps to the --shm-size option to docker run.
///
public int SharedMemorySize { get; set; }
///
/// This allows you to tune a container's memory swappiness behavior. A swappiness value of 0 causes swapping not to happen unless absolutely necessary.
/// A swappiness value of 100 causes pages to be swapped very aggressively. Accepted values are whole numbers between 0 and 100.
/// If the swappiness parameter isn't specified, a default value of 60 is used. If a value isn't specified for maxSwap, then this parameter is ignored.
/// If maxSwap is set to 0, the container doesn't use swap. This parameter maps to the --memory-swappiness option to docker run.
///
public int Swappiness { get; set; }
///
/// The container path, mount options, and size (in MiB) of the tmpfs mount. This parameter maps to the --tmpfs option to docker run.
///
public List Tmpfs { get; set; }
}
}