// // Code generated by Microsoft (R) AutoRest Code Generator. // Changes may cause incorrect behavior and will be lost if the code is // regenerated. // namespace k8s.Models { using Newtonsoft.Json; using System.Collections; using System.Collections.Generic; using System.Linq; /// /// Adapts a ConfigMap into a volume. /// /// The contents of the target ConfigMap's Data field will be presented in /// a volume as files using the keys in the Data field as the file names, /// unless the items element is populated with specific mappings of keys to /// paths. ConfigMap volumes support ownership management and SELinux /// relabeling. /// public partial class V1ConfigMapVolumeSource { /// /// Initializes a new instance of the V1ConfigMapVolumeSource class. /// public V1ConfigMapVolumeSource() { CustomInit(); } /// /// Initializes a new instance of the V1ConfigMapVolumeSource class. /// /// Optional: mode bits used to set /// permissions on created files by default. Must be an octal value /// between 0000 and 0777 or a decimal value between 0 and 511. YAML /// accepts both octal and decimal values, JSON requires decimal values /// for mode bits. Defaults to 0644. Directories within the path are /// not affected by this setting. This might be in conflict with other /// options that affect the file mode, like fsGroup, and the result can /// be other mode bits set. /// If unspecified, each key-value pair in the Data /// field of the referenced ConfigMap will be projected into the volume /// as a file whose name is the key and content is the value. If /// specified, the listed keys will be projected into the specified /// paths, and unlisted keys will not be present. If a key is specified /// which is not present in the ConfigMap, the volume setup will error /// unless it is marked optional. Paths must be relative and may not /// contain the '..' path or start with '..'. /// Name of the referent. More info: /// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names /// Specify whether the ConfigMap or its keys /// must be defined public V1ConfigMapVolumeSource(int? defaultMode = default(int?), IList items = default(IList), string name = default(string), bool? optional = default(bool?)) { DefaultMode = defaultMode; Items = items; Name = name; Optional = optional; CustomInit(); } /// /// An initialization method that performs custom operations like setting defaults /// partial void CustomInit(); /// /// Gets or sets optional: mode bits used to set permissions on created /// files by default. Must be an octal value between 0000 and 0777 or a /// decimal value between 0 and 511. YAML accepts both octal and /// decimal values, JSON requires decimal values for mode bits. /// Defaults to 0644. Directories within the path are not affected by /// this setting. This might be in conflict with other options that /// affect the file mode, like fsGroup, and the result can be other /// mode bits set. /// [JsonProperty(PropertyName = "defaultMode")] public int? DefaultMode { get; set; } /// /// Gets or sets if unspecified, each key-value pair in the Data field /// of the referenced ConfigMap will be projected into the volume as a /// file whose name is the key and content is the value. If specified, /// the listed keys will be projected into the specified paths, and /// unlisted keys will not be present. If a key is specified which is /// not present in the ConfigMap, the volume setup will error unless it /// is marked optional. Paths must be relative and may not contain the /// '..' path or start with '..'. /// [JsonProperty(PropertyName = "items")] public IList Items { get; set; } /// /// Gets or sets name of the referent. More info: /// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names /// [JsonProperty(PropertyName = "name")] public string Name { get; set; } /// /// Gets or sets specify whether the ConfigMap or its keys must be /// defined /// [JsonProperty(PropertyName = "optional")] public bool? Optional { get; set; } } }