/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ecs-2014-11-13.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.ECS.Model { /// /// The Linux-specific options that are applied to the container, such as Linux KernelCapabilities. /// public partial class LinuxParameters { private KernelCapabilities _capabilities; private List _devices = new List(); private bool? _initProcessEnabled; private int? _maxSwap; private int? _sharedMemorySize; private int? _swappiness; private List _tmpfs = new List(); /// /// Gets and sets the property Capabilities. /// /// The Linux capabilities for the container that are added to or dropped from the default /// configuration provided by Docker. /// /// /// /// For tasks that use the Fargate launch type, capabilities is supported /// for all platform versions but the add parameter is only supported if /// using platform version 1.4.0 or later. /// /// /// public KernelCapabilities Capabilities { get { return this._capabilities; } set { this._capabilities = value; } } // Check to see if Capabilities property is set internal bool IsSetCapabilities() { return this._capabilities != null; } /// /// Gets and sets the property Devices. /// /// 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. /// /// /// /// If you're using tasks that use the Fargate launch type, the devices parameter /// isn't supported. /// /// /// public List Devices { get { return this._devices; } set { this._devices = value; } } // Check to see if Devices property is set internal bool IsSetDevices() { return this._devices != null && this._devices.Count > 0; } /// /// Gets and sets the property InitProcessEnabled. /// /// 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 in to your container instance and run the following command: sudo /// docker version --format '{{.Server.APIVersion}}' /// /// public bool InitProcessEnabled { get { return this._initProcessEnabled.GetValueOrDefault(); } set { this._initProcessEnabled = value; } } // Check to see if InitProcessEnabled property is set internal bool IsSetInitProcessEnabled() { return this._initProcessEnabled.HasValue; } /// /// Gets and sets the property MaxSwap. /// /// The total amount of swap memory (in MiB) a container can use. This parameter will /// be translated to the --memory-swap option to docker /// run where the value would be the sum of the container memory plus the maxSwap /// value. /// /// /// /// If a maxSwap value of 0 is specified, the container will /// not use swap. Accepted values are 0 or any positive integer. If the maxSwap /// parameter is omitted, the container will 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. /// /// /// /// If you're using tasks that use the Fargate launch type, the maxSwap parameter /// isn't supported. /// /// /// /// If you're using tasks on Amazon Linux 2023 the swappiness parameter isn't /// supported. /// /// /// public int MaxSwap { get { return this._maxSwap.GetValueOrDefault(); } set { this._maxSwap = value; } } // Check to see if MaxSwap property is set internal bool IsSetMaxSwap() { return this._maxSwap.HasValue; } /// /// Gets and sets the property SharedMemorySize. /// /// The value for the size (in MiB) of the /dev/shm volume. This parameter /// maps to the --shm-size option to docker /// run. /// /// /// /// If you are using tasks that use the Fargate launch type, the sharedMemorySize /// parameter is not supported. /// /// /// public int SharedMemorySize { get { return this._sharedMemorySize.GetValueOrDefault(); } set { this._sharedMemorySize = value; } } // Check to see if SharedMemorySize property is set internal bool IsSetSharedMemorySize() { return this._sharedMemorySize.HasValue; } /// /// Gets and sets the property Swappiness. /// /// This allows you to tune a container's memory swappiness behavior. A swappiness /// value of 0 will cause swapping to not happen unless absolutely necessary. /// A swappiness value of 100 will cause pages to be swapped /// very aggressively. Accepted values are whole numbers between 0 and 100. /// If the swappiness parameter is not specified, a default value of 60 /// is used. If a value is not specified for maxSwap then this parameter /// is ignored. This parameter maps to the --memory-swappiness option to /// docker /// run. /// /// /// /// If you're using tasks that use the Fargate launch type, the swappiness /// parameter isn't supported. /// /// /// /// If you're using tasks on Amazon Linux 2023 the swappiness parameter isn't /// supported. /// /// /// public int Swappiness { get { return this._swappiness.GetValueOrDefault(); } set { this._swappiness = value; } } // Check to see if Swappiness property is set internal bool IsSetSwappiness() { return this._swappiness.HasValue; } /// /// Gets and sets the property Tmpfs. /// /// The container path, mount options, and size (in MiB) of the tmpfs mount. This parameter /// maps to the --tmpfs option to docker /// run. /// /// /// /// If you're using tasks that use the Fargate launch type, the tmpfs parameter /// isn't supported. /// /// /// public List Tmpfs { get { return this._tmpfs; } set { this._tmpfs = value; } } // Check to see if Tmpfs property is set internal bool IsSetTmpfs() { return this._tmpfs != null && this._tmpfs.Count > 0; } } }