regenerate with v1.9.2 (#88)

This commit is contained in:
Boshi Lian
2018-01-27 04:25:58 +08:00
committed by Brendan Burns
parent db7ed9cad1
commit f17848d3ac
128 changed files with 72972 additions and 11143 deletions

View File

@@ -1,3 +1,3 @@
export KUBERNETES_BRANCH=v1.8.4
export KUBERNETES_BRANCH=v1.9.2
export CLIENT_VERSION=0.0.1
export PACKAGE_NAME=k8s

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -13,26 +13,32 @@ namespace k8s.Models
/// <summary>
/// ServiceReference holds a reference to Service.legacy.k8s.io
/// </summary>
public partial class V1alpha1ServiceReference
public partial class Admissionregistrationv1beta1ServiceReference
{
/// <summary>
/// Initializes a new instance of the V1alpha1ServiceReference class.
/// Initializes a new instance of the
/// Admissionregistrationv1beta1ServiceReference class.
/// </summary>
public V1alpha1ServiceReference()
public Admissionregistrationv1beta1ServiceReference()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1ServiceReference class.
/// Initializes a new instance of the
/// Admissionregistrationv1beta1ServiceReference class.
/// </summary>
/// <param name="name">Name is the name of the service Required</param>
/// <param name="namespaceProperty">Namespace is the namespace of the
/// service Required</param>
public V1alpha1ServiceReference(string name, string namespaceProperty)
/// <param name="name">`name` is the name of the service.
/// Required</param>
/// <param name="namespaceProperty">`namespace` is the namespace of the
/// service. Required</param>
/// <param name="path">`path` is an optional URL path which will be
/// sent in any request to this service.</param>
public Admissionregistrationv1beta1ServiceReference(string name, string namespaceProperty, string path = default(string))
{
Name = name;
NamespaceProperty = namespaceProperty;
Path = path;
CustomInit();
}
@@ -42,17 +48,24 @@ namespace k8s.Models
partial void CustomInit();
/// <summary>
/// Gets or sets name is the name of the service Required
/// Gets or sets `name` is the name of the service. Required
/// </summary>
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets namespace is the namespace of the service Required
/// Gets or sets `namespace` is the namespace of the service. Required
/// </summary>
[JsonProperty(PropertyName = "namespace")]
public string NamespaceProperty { get; set; }
/// <summary>
/// Gets or sets `path` is an optional URL path which will be sent in
/// any request to this service.
/// </summary>
[JsonProperty(PropertyName = "path")]
public string Path { get; set; }
/// <summary>
/// Validate the object.
/// </summary>

View File

@@ -12,23 +12,25 @@ namespace k8s.Models
/// <summary>
/// ServiceReference holds a reference to Service.legacy.k8s.io
/// </summary>
public partial class V1beta1ServiceReference
public partial class Apiregistrationv1beta1ServiceReference
{
/// <summary>
/// Initializes a new instance of the V1beta1ServiceReference class.
/// Initializes a new instance of the
/// Apiregistrationv1beta1ServiceReference class.
/// </summary>
public V1beta1ServiceReference()
public Apiregistrationv1beta1ServiceReference()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1ServiceReference class.
/// Initializes a new instance of the
/// Apiregistrationv1beta1ServiceReference class.
/// </summary>
/// <param name="name">Name is the name of the service</param>
/// <param name="namespaceProperty">Namespace is the namespace of the
/// service</param>
public V1beta1ServiceReference(string name = default(string), string namespaceProperty = default(string))
public Apiregistrationv1beta1ServiceReference(string name = default(string), string namespaceProperty = default(string))
{
Name = name;
NamespaceProperty = namespaceProperty;

View File

@@ -0,0 +1,56 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// AggregationRule describes how to locate ClusterRoles to aggregate into
/// the ClusterRole
/// </summary>
public partial class V1AggregationRule
{
/// <summary>
/// Initializes a new instance of the V1AggregationRule class.
/// </summary>
public V1AggregationRule()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1AggregationRule class.
/// </summary>
/// <param name="clusterRoleSelectors">ClusterRoleSelectors holds a
/// list of selectors which will be used to find ClusterRoles and
/// create the rules. If any of the selectors match, then the
/// ClusterRole's permissions will be added</param>
public V1AggregationRule(IList<V1LabelSelector> clusterRoleSelectors = default(IList<V1LabelSelector>))
{
ClusterRoleSelectors = clusterRoleSelectors;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets clusterRoleSelectors holds a list of selectors which
/// will be used to find ClusterRoles and create the rules. If any of
/// the selectors match, then the ClusterRole's permissions will be
/// added
/// </summary>
[JsonProperty(PropertyName = "clusterRoleSelectors")]
public IList<V1LabelSelector> ClusterRoleSelectors { get; set; }
}
}

View File

@@ -36,7 +36,7 @@ namespace k8s.Models
/// <param name="fsType">Filesystem type to mount. Must be a filesystem
/// type supported by the host operating system. Ex. "ext4", "xfs",
/// "ntfs". Implicitly inferred to be "ext4" if unspecified.</param>
/// <param name="kind">Expected values Shared: mulitple blob disks per
/// <param name="kind">Expected values Shared: multiple blob disks per
/// storage account Dedicated: single blob disk per storage account
/// Managed: azure managed data disk (only in managed availability
/// set). defaults to shared</param>
@@ -86,7 +86,7 @@ namespace k8s.Models
public string FsType { get; set; }
/// <summary>
/// Gets or sets expected values Shared: mulitple blob disks per
/// Gets or sets expected values Shared: multiple blob disks per
/// storage account Dedicated: single blob disk per storage account
/// Managed: azure managed data disk (only in managed availability
/// set). defaults to shared

View File

@@ -0,0 +1,92 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// Represents storage that is managed by an external CSI volume driver
/// </summary>
public partial class V1CSIPersistentVolumeSource
{
/// <summary>
/// Initializes a new instance of the V1CSIPersistentVolumeSource
/// class.
/// </summary>
public V1CSIPersistentVolumeSource()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1CSIPersistentVolumeSource
/// class.
/// </summary>
/// <param name="driver">Driver is the name of the driver to use for
/// this volume. Required.</param>
/// <param name="volumeHandle">VolumeHandle is the unique volume name
/// returned by the CSI volume plugins CreateVolume to refer to the
/// volume on all subsequent calls. Required.</param>
/// <param name="readOnlyProperty">Optional: The value to pass to
/// ControllerPublishVolumeRequest. Defaults to false
/// (read/write).</param>
public V1CSIPersistentVolumeSource(string driver, string volumeHandle, bool? readOnlyProperty = default(bool?))
{
Driver = driver;
ReadOnlyProperty = readOnlyProperty;
VolumeHandle = volumeHandle;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets driver is the name of the driver to use for this
/// volume. Required.
/// </summary>
[JsonProperty(PropertyName = "driver")]
public string Driver { get; set; }
/// <summary>
/// Gets or sets optional: The value to pass to
/// ControllerPublishVolumeRequest. Defaults to false (read/write).
/// </summary>
[JsonProperty(PropertyName = "readOnly")]
public bool? ReadOnlyProperty { get; set; }
/// <summary>
/// Gets or sets volumeHandle is the unique volume name returned by the
/// CSI volume plugins CreateVolume to refer to the volume on all
/// subsequent calls. Required.
/// </summary>
[JsonProperty(PropertyName = "volumeHandle")]
public string VolumeHandle { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Driver == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Driver");
}
if (VolumeHandle == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "VolumeHandle");
}
}
}
}

View File

@@ -31,6 +31,10 @@ namespace k8s.Models
/// </summary>
/// <param name="rules">Rules holds all the PolicyRules for this
/// ClusterRole</param>
/// <param name="aggregationRule">AggregationRule is an optional field
/// that describes how to build the Rules for this ClusterRole. If
/// AggregationRule is set, then the Rules are controller managed and
/// direct changes to Rules will be stomped by the controller.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -42,8 +46,9 @@ namespace k8s.Models
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object's metadata.</param>
public V1ClusterRole(IList<V1PolicyRule> rules, string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
public V1ClusterRole(IList<V1PolicyRule> rules, V1AggregationRule aggregationRule = default(V1AggregationRule), string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
{
AggregationRule = aggregationRule;
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
@@ -56,6 +61,15 @@ namespace k8s.Models
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aggregationRule is an optional field that describes
/// how to build the Rules for this ClusterRole. If AggregationRule is
/// set, then the Rules are controller managed and direct changes to
/// Rules will be stomped by the controller.
/// </summary>
[JsonProperty(PropertyName = "aggregationRule")]
public V1AggregationRule AggregationRule { get; set; }
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized

View File

@@ -92,7 +92,7 @@ namespace k8s.Models
/// with. More info:
/// https://kubernetes.io/docs/concepts/policy/security-context/ More
/// info:
/// https://git.k8s.io/community/contributors/design-proposals/security_context.md</param>
/// https://kubernetes.io/docs/tasks/configure-pod-container/security-context/</param>
/// <param name="stdin">Whether this container should allocate a buffer
/// for stdin in the container runtime. If this is not set, reads from
/// stdin in the container will always result in EOF. Default is
@@ -124,13 +124,16 @@ namespace k8s.Models
/// to File. Cannot be updated.</param>
/// <param name="tty">Whether this container should allocate a TTY for
/// itself, also requires 'stdin' to be true. Default is false.</param>
/// <param name="volumeDevices">volumeDevices is the list of block
/// devices to be used by the container. This is an alpha feature and
/// may change in the future.</param>
/// <param name="volumeMounts">Pod volumes to mount into the
/// container's filesystem. Cannot be updated.</param>
/// <param name="workingDir">Container's working directory. If not
/// specified, the container runtime's default will be used, which
/// might be configured in the container image. Cannot be
/// updated.</param>
public V1Container(string name, IList<string> args = default(IList<string>), IList<string> command = default(IList<string>), IList<V1EnvVar> env = default(IList<V1EnvVar>), IList<V1EnvFromSource> envFrom = default(IList<V1EnvFromSource>), string image = default(string), string imagePullPolicy = default(string), V1Lifecycle lifecycle = default(V1Lifecycle), V1Probe livenessProbe = default(V1Probe), IList<V1ContainerPort> ports = default(IList<V1ContainerPort>), V1Probe readinessProbe = default(V1Probe), V1ResourceRequirements resources = default(V1ResourceRequirements), V1SecurityContext securityContext = default(V1SecurityContext), bool? stdin = default(bool?), bool? stdinOnce = default(bool?), string terminationMessagePath = default(string), string terminationMessagePolicy = default(string), bool? tty = default(bool?), IList<V1VolumeMount> volumeMounts = default(IList<V1VolumeMount>), string workingDir = default(string))
public V1Container(string name, IList<string> args = default(IList<string>), IList<string> command = default(IList<string>), IList<V1EnvVar> env = default(IList<V1EnvVar>), IList<V1EnvFromSource> envFrom = default(IList<V1EnvFromSource>), string image = default(string), string imagePullPolicy = default(string), V1Lifecycle lifecycle = default(V1Lifecycle), V1Probe livenessProbe = default(V1Probe), IList<V1ContainerPort> ports = default(IList<V1ContainerPort>), V1Probe readinessProbe = default(V1Probe), V1ResourceRequirements resources = default(V1ResourceRequirements), V1SecurityContext securityContext = default(V1SecurityContext), bool? stdin = default(bool?), bool? stdinOnce = default(bool?), string terminationMessagePath = default(string), string terminationMessagePolicy = default(string), bool? tty = default(bool?), IList<V1VolumeDevice> volumeDevices = default(IList<V1VolumeDevice>), IList<V1VolumeMount> volumeMounts = default(IList<V1VolumeMount>), string workingDir = default(string))
{
Args = args;
Command = command;
@@ -150,6 +153,7 @@ namespace k8s.Models
TerminationMessagePath = terminationMessagePath;
TerminationMessagePolicy = terminationMessagePolicy;
Tty = tty;
VolumeDevices = volumeDevices;
VolumeMounts = volumeMounts;
WorkingDir = workingDir;
CustomInit();
@@ -282,7 +286,7 @@ namespace k8s.Models
/// Gets or sets security options the pod should run with. More info:
/// https://kubernetes.io/docs/concepts/policy/security-context/ More
/// info:
/// https://git.k8s.io/community/contributors/design-proposals/security_context.md
/// https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
/// </summary>
[JsonProperty(PropertyName = "securityContext")]
public V1SecurityContext SecurityContext { get; set; }
@@ -340,6 +344,14 @@ namespace k8s.Models
[JsonProperty(PropertyName = "tty")]
public bool? Tty { get; set; }
/// <summary>
/// Gets or sets volumeDevices is the list of block devices to be used
/// by the container. This is an alpha feature and may change in the
/// future.
/// </summary>
[JsonProperty(PropertyName = "volumeDevices")]
public IList<V1VolumeDevice> VolumeDevices { get; set; }
/// <summary>
/// Gets or sets pod volumes to mount into the container's filesystem.
/// Cannot be updated.
@@ -399,9 +411,9 @@ namespace k8s.Models
{
ReadinessProbe.Validate();
}
if (VolumeMounts != null)
if (VolumeDevices != null)
{
foreach (var element2 in VolumeMounts)
foreach (var element2 in VolumeDevices)
{
if (element2 != null)
{
@@ -409,6 +421,16 @@ namespace k8s.Models
}
}
}
if (VolumeMounts != null)
{
foreach (var element3 in VolumeMounts)
{
if (element3 != null)
{
element3.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,127 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// ControllerRevision implements an immutable snapshot of state data.
/// Clients are responsible for serializing and deserializing the objects
/// that contain their internal state. Once a ControllerRevision has been
/// successfully created, it can not be updated. The API Server will fail
/// validation of all requests that attempt to mutate the Data field.
/// ControllerRevisions may, however, be deleted. Note that, due to its use
/// by both the DaemonSet and StatefulSet controllers for update and
/// rollback, this object is beta. However, it may be subject to name and
/// representation changes in future releases, and clients should not
/// depend on its stability. It is primarily for internal use by
/// controllers.
/// </summary>
public partial class V1ControllerRevision
{
/// <summary>
/// Initializes a new instance of the V1ControllerRevision class.
/// </summary>
public V1ControllerRevision()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ControllerRevision class.
/// </summary>
/// <param name="revision">Revision indicates the revision of the state
/// represented by Data.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="data">Data is the serialized representation of the
/// state.</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
public V1ControllerRevision(long revision, string apiVersion = default(string), RuntimeRawExtension data = default(RuntimeRawExtension), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
{
ApiVersion = apiVersion;
Data = data;
Kind = kind;
Metadata = metadata;
Revision = revision;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets data is the serialized representation of the state.
/// </summary>
[JsonProperty(PropertyName = "data")]
public RuntimeRawExtension Data { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets revision indicates the revision of the state
/// represented by Data.
/// </summary>
[JsonProperty(PropertyName = "revision")]
public long Revision { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Data != null)
{
Data.Validate();
}
if (Metadata != null)
{
Metadata.Validate();
}
}
}
}

View File

@@ -0,0 +1,117 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// ControllerRevisionList is a resource containing a list of
/// ControllerRevision objects.
/// </summary>
public partial class V1ControllerRevisionList
{
/// <summary>
/// Initializes a new instance of the V1ControllerRevisionList class.
/// </summary>
public V1ControllerRevisionList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ControllerRevisionList class.
/// </summary>
/// <param name="items">Items is the list of
/// ControllerRevisions</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
public V1ControllerRevisionList(IList<V1ControllerRevision> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets items is the list of ControllerRevisions
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1ControllerRevision> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets more info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,127 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DaemonSet represents the configuration of a daemon set.
/// </summary>
public partial class V1DaemonSet
{
/// <summary>
/// Initializes a new instance of the V1DaemonSet class.
/// </summary>
public V1DaemonSet()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DaemonSet class.
/// </summary>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
/// <param name="spec">The desired behavior of this daemon set. More
/// info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status</param>
/// <param name="status">The current status of this daemon set. This
/// data may be out of date by some window of time. Populated by the
/// system. Read-only. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status</param>
public V1DaemonSet(string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), V1DaemonSetSpec spec = default(V1DaemonSetSpec), V1DaemonSetStatus status = default(V1DaemonSetStatus))
{
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
Spec = spec;
Status = status;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets the desired behavior of this daemon set. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
/// </summary>
[JsonProperty(PropertyName = "spec")]
public V1DaemonSetSpec Spec { get; set; }
/// <summary>
/// Gets or sets the current status of this daemon set. This data may
/// be out of date by some window of time. Populated by the system.
/// Read-only. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
/// </summary>
[JsonProperty(PropertyName = "status")]
public V1DaemonSetStatus Status { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Metadata != null)
{
Metadata.Validate();
}
if (Spec != null)
{
Spec.Validate();
}
if (Status != null)
{
Status.Validate();
}
}
}
}

View File

@@ -0,0 +1,104 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DaemonSetCondition describes the state of a DaemonSet at a certain
/// point.
/// </summary>
public partial class V1DaemonSetCondition
{
/// <summary>
/// Initializes a new instance of the V1DaemonSetCondition class.
/// </summary>
public V1DaemonSetCondition()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DaemonSetCondition class.
/// </summary>
/// <param name="status">Status of the condition, one of True, False,
/// Unknown.</param>
/// <param name="type">Type of DaemonSet condition.</param>
/// <param name="lastTransitionTime">Last time the condition
/// transitioned from one status to another.</param>
/// <param name="message">A human readable message indicating details
/// about the transition.</param>
/// <param name="reason">The reason for the condition's last
/// transition.</param>
public V1DaemonSetCondition(string status, string type, System.DateTime? lastTransitionTime = default(System.DateTime?), string message = default(string), string reason = default(string))
{
LastTransitionTime = lastTransitionTime;
Message = message;
Reason = reason;
Status = status;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets last time the condition transitioned from one status
/// to another.
/// </summary>
[JsonProperty(PropertyName = "lastTransitionTime")]
public System.DateTime? LastTransitionTime { get; set; }
/// <summary>
/// Gets or sets a human readable message indicating details about the
/// transition.
/// </summary>
[JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// Gets or sets the reason for the condition's last transition.
/// </summary>
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets status of the condition, one of True, False, Unknown.
/// </summary>
[JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets type of DaemonSet condition.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Status == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Status");
}
if (Type == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Type");
}
}
}
}

View File

@@ -0,0 +1,115 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// DaemonSetList is a collection of daemon sets.
/// </summary>
public partial class V1DaemonSetList
{
/// <summary>
/// Initializes a new instance of the V1DaemonSetList class.
/// </summary>
public V1DaemonSetList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DaemonSetList class.
/// </summary>
/// <param name="items">A list of daemon sets.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
public V1DaemonSetList(IList<V1DaemonSet> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets a list of daemon sets.
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1DaemonSet> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,128 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DaemonSetSpec is the specification of a daemon set.
/// </summary>
public partial class V1DaemonSetSpec
{
/// <summary>
/// Initializes a new instance of the V1DaemonSetSpec class.
/// </summary>
public V1DaemonSetSpec()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DaemonSetSpec class.
/// </summary>
/// <param name="selector">A label query over pods that are managed by
/// the daemon set. Must match in order to be controlled. It must match
/// the pod template's labels. More info:
/// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors</param>
/// <param name="template">An object that describes the pod that will
/// be created. The DaemonSet will create exactly one copy of this pod
/// on every node that matches the template's node selector (or on
/// every node if no node selector is specified). More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template</param>
/// <param name="minReadySeconds">The minimum number of seconds for
/// which a newly created DaemonSet pod should be ready without any of
/// its container crashing, for it to be considered available. Defaults
/// to 0 (pod will be considered available as soon as it is
/// ready).</param>
/// <param name="revisionHistoryLimit">The number of old history to
/// retain to allow rollback. This is a pointer to distinguish between
/// explicit zero and not specified. Defaults to 10.</param>
/// <param name="updateStrategy">An update strategy to replace existing
/// DaemonSet pods with new pods.</param>
public V1DaemonSetSpec(V1LabelSelector selector, V1PodTemplateSpec template, int? minReadySeconds = default(int?), int? revisionHistoryLimit = default(int?), V1DaemonSetUpdateStrategy updateStrategy = default(V1DaemonSetUpdateStrategy))
{
MinReadySeconds = minReadySeconds;
RevisionHistoryLimit = revisionHistoryLimit;
Selector = selector;
Template = template;
UpdateStrategy = updateStrategy;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets the minimum number of seconds for which a newly
/// created DaemonSet pod should be ready without any of its container
/// crashing, for it to be considered available. Defaults to 0 (pod
/// will be considered available as soon as it is ready).
/// </summary>
[JsonProperty(PropertyName = "minReadySeconds")]
public int? MinReadySeconds { get; set; }
/// <summary>
/// Gets or sets the number of old history to retain to allow rollback.
/// This is a pointer to distinguish between explicit zero and not
/// specified. Defaults to 10.
/// </summary>
[JsonProperty(PropertyName = "revisionHistoryLimit")]
public int? RevisionHistoryLimit { get; set; }
/// <summary>
/// Gets or sets a label query over pods that are managed by the daemon
/// set. Must match in order to be controlled. It must match the pod
/// template's labels. More info:
/// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
/// </summary>
[JsonProperty(PropertyName = "selector")]
public V1LabelSelector Selector { get; set; }
/// <summary>
/// Gets or sets an object that describes the pod that will be created.
/// The DaemonSet will create exactly one copy of this pod on every
/// node that matches the template's node selector (or on every node if
/// no node selector is specified). More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template
/// </summary>
[JsonProperty(PropertyName = "template")]
public V1PodTemplateSpec Template { get; set; }
/// <summary>
/// Gets or sets an update strategy to replace existing DaemonSet pods
/// with new pods.
/// </summary>
[JsonProperty(PropertyName = "updateStrategy")]
public V1DaemonSetUpdateStrategy UpdateStrategy { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Selector == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Selector");
}
if (Template == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Template");
}
if (Template != null)
{
Template.Validate();
}
}
}
}

View File

@@ -0,0 +1,180 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// DaemonSetStatus represents the current status of a daemon set.
/// </summary>
public partial class V1DaemonSetStatus
{
/// <summary>
/// Initializes a new instance of the V1DaemonSetStatus class.
/// </summary>
public V1DaemonSetStatus()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DaemonSetStatus class.
/// </summary>
/// <param name="currentNumberScheduled">The number of nodes that are
/// running at least 1 daemon pod and are supposed to run the daemon
/// pod. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/</param>
/// <param name="desiredNumberScheduled">The total number of nodes that
/// should be running the daemon pod (including nodes correctly running
/// the daemon pod). More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/</param>
/// <param name="numberMisscheduled">The number of nodes that are
/// running the daemon pod, but are not supposed to run the daemon pod.
/// More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/</param>
/// <param name="numberReady">The number of nodes that should be
/// running the daemon pod and have one or more of the daemon pod
/// running and ready.</param>
/// <param name="collisionCount">Count of hash collisions for the
/// DaemonSet. The DaemonSet controller uses this field as a collision
/// avoidance mechanism when it needs to create the name for the newest
/// ControllerRevision.</param>
/// <param name="conditions">Represents the latest available
/// observations of a DaemonSet's current state.</param>
/// <param name="numberAvailable">The number of nodes that should be
/// running the daemon pod and have one or more of the daemon pod
/// running and available (ready for at least
/// spec.minReadySeconds)</param>
/// <param name="numberUnavailable">The number of nodes that should be
/// running the daemon pod and have none of the daemon pod running and
/// available (ready for at least spec.minReadySeconds)</param>
/// <param name="observedGeneration">The most recent generation
/// observed by the daemon set controller.</param>
/// <param name="updatedNumberScheduled">The total number of nodes that
/// are running updated daemon pod</param>
public V1DaemonSetStatus(int currentNumberScheduled, int desiredNumberScheduled, int numberMisscheduled, int numberReady, int? collisionCount = default(int?), IList<V1DaemonSetCondition> conditions = default(IList<V1DaemonSetCondition>), int? numberAvailable = default(int?), int? numberUnavailable = default(int?), long? observedGeneration = default(long?), int? updatedNumberScheduled = default(int?))
{
CollisionCount = collisionCount;
Conditions = conditions;
CurrentNumberScheduled = currentNumberScheduled;
DesiredNumberScheduled = desiredNumberScheduled;
NumberAvailable = numberAvailable;
NumberMisscheduled = numberMisscheduled;
NumberReady = numberReady;
NumberUnavailable = numberUnavailable;
ObservedGeneration = observedGeneration;
UpdatedNumberScheduled = updatedNumberScheduled;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets count of hash collisions for the DaemonSet. The
/// DaemonSet controller uses this field as a collision avoidance
/// mechanism when it needs to create the name for the newest
/// ControllerRevision.
/// </summary>
[JsonProperty(PropertyName = "collisionCount")]
public int? CollisionCount { get; set; }
/// <summary>
/// Gets or sets represents the latest available observations of a
/// DaemonSet's current state.
/// </summary>
[JsonProperty(PropertyName = "conditions")]
public IList<V1DaemonSetCondition> Conditions { get; set; }
/// <summary>
/// Gets or sets the number of nodes that are running at least 1 daemon
/// pod and are supposed to run the daemon pod. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
/// </summary>
[JsonProperty(PropertyName = "currentNumberScheduled")]
public int CurrentNumberScheduled { get; set; }
/// <summary>
/// Gets or sets the total number of nodes that should be running the
/// daemon pod (including nodes correctly running the daemon pod). More
/// info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
/// </summary>
[JsonProperty(PropertyName = "desiredNumberScheduled")]
public int DesiredNumberScheduled { get; set; }
/// <summary>
/// Gets or sets the number of nodes that should be running the daemon
/// pod and have one or more of the daemon pod running and available
/// (ready for at least spec.minReadySeconds)
/// </summary>
[JsonProperty(PropertyName = "numberAvailable")]
public int? NumberAvailable { get; set; }
/// <summary>
/// Gets or sets the number of nodes that are running the daemon pod,
/// but are not supposed to run the daemon pod. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
/// </summary>
[JsonProperty(PropertyName = "numberMisscheduled")]
public int NumberMisscheduled { get; set; }
/// <summary>
/// Gets or sets the number of nodes that should be running the daemon
/// pod and have one or more of the daemon pod running and ready.
/// </summary>
[JsonProperty(PropertyName = "numberReady")]
public int NumberReady { get; set; }
/// <summary>
/// Gets or sets the number of nodes that should be running the daemon
/// pod and have none of the daemon pod running and available (ready
/// for at least spec.minReadySeconds)
/// </summary>
[JsonProperty(PropertyName = "numberUnavailable")]
public int? NumberUnavailable { get; set; }
/// <summary>
/// Gets or sets the most recent generation observed by the daemon set
/// controller.
/// </summary>
[JsonProperty(PropertyName = "observedGeneration")]
public long? ObservedGeneration { get; set; }
/// <summary>
/// Gets or sets the total number of nodes that are running updated
/// daemon pod
/// </summary>
[JsonProperty(PropertyName = "updatedNumberScheduled")]
public int? UpdatedNumberScheduled { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Conditions != null)
{
foreach (var element in Conditions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,60 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DaemonSetUpdateStrategy is a struct used to control the update strategy
/// for a DaemonSet.
/// </summary>
public partial class V1DaemonSetUpdateStrategy
{
/// <summary>
/// Initializes a new instance of the V1DaemonSetUpdateStrategy class.
/// </summary>
public V1DaemonSetUpdateStrategy()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DaemonSetUpdateStrategy class.
/// </summary>
/// <param name="rollingUpdate">Rolling update config params. Present
/// only if type = "RollingUpdate".</param>
/// <param name="type">Type of daemon set update. Can be
/// "RollingUpdate" or "OnDelete". Default is RollingUpdate.</param>
public V1DaemonSetUpdateStrategy(V1RollingUpdateDaemonSet rollingUpdate = default(V1RollingUpdateDaemonSet), string type = default(string))
{
RollingUpdate = rollingUpdate;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets rolling update config params. Present only if type =
/// "RollingUpdate".
/// </summary>
[JsonProperty(PropertyName = "rollingUpdate")]
public V1RollingUpdateDaemonSet RollingUpdate { get; set; }
/// <summary>
/// Gets or sets type of daemon set update. Can be "RollingUpdate" or
/// "OnDelete". Default is RollingUpdate.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
}
}

View File

@@ -54,7 +54,10 @@ namespace k8s.Models
/// will be performed. Either this field or OrphanDependents may be
/// set, but not both. The default policy is decided by the existing
/// finalizer set in the metadata.finalizers and the resource-specific
/// default policy.</param>
/// default policy. Acceptable values are: 'Orphan' - orphan the
/// dependents; 'Background' - allow the garbage collector to delete
/// the dependents in the background; 'Foreground' - a cascading policy
/// that deletes all dependents in the foreground.</param>
public V1DeleteOptions(string apiVersion = default(string), long? gracePeriodSeconds = default(long?), string kind = default(string), bool? orphanDependents = default(bool?), V1Preconditions preconditions = default(V1Preconditions), string propagationPolicy = default(string))
{
ApiVersion = apiVersion;
@@ -123,6 +126,10 @@ namespace k8s.Models
/// Either this field or OrphanDependents may be set, but not both. The
/// default policy is decided by the existing finalizer set in the
/// metadata.finalizers and the resource-specific default policy.
/// Acceptable values are: 'Orphan' - orphan the dependents;
/// 'Background' - allow the garbage collector to delete the dependents
/// in the background; 'Foreground' - a cascading policy that deletes
/// all dependents in the foreground.
/// </summary>
[JsonProperty(PropertyName = "propagationPolicy")]
public string PropagationPolicy { get; set; }

View File

@@ -0,0 +1,115 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// Deployment enables declarative updates for Pods and ReplicaSets.
/// </summary>
public partial class V1Deployment
{
/// <summary>
/// Initializes a new instance of the V1Deployment class.
/// </summary>
public V1Deployment()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1Deployment class.
/// </summary>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object metadata.</param>
/// <param name="spec">Specification of the desired behavior of the
/// Deployment.</param>
/// <param name="status">Most recently observed status of the
/// Deployment.</param>
public V1Deployment(string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), V1DeploymentSpec spec = default(V1DeploymentSpec), V1DeploymentStatus status = default(V1DeploymentStatus))
{
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
Spec = spec;
Status = status;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard object metadata.
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets specification of the desired behavior of the
/// Deployment.
/// </summary>
[JsonProperty(PropertyName = "spec")]
public V1DeploymentSpec Spec { get; set; }
/// <summary>
/// Gets or sets most recently observed status of the Deployment.
/// </summary>
[JsonProperty(PropertyName = "status")]
public V1DeploymentStatus Status { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Metadata != null)
{
Metadata.Validate();
}
if (Spec != null)
{
Spec.Validate();
}
}
}
}

View File

@@ -0,0 +1,113 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DeploymentCondition describes the state of a deployment at a certain
/// point.
/// </summary>
public partial class V1DeploymentCondition
{
/// <summary>
/// Initializes a new instance of the V1DeploymentCondition class.
/// </summary>
public V1DeploymentCondition()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DeploymentCondition class.
/// </summary>
/// <param name="status">Status of the condition, one of True, False,
/// Unknown.</param>
/// <param name="type">Type of deployment condition.</param>
/// <param name="lastTransitionTime">Last time the condition
/// transitioned from one status to another.</param>
/// <param name="lastUpdateTime">The last time this condition was
/// updated.</param>
/// <param name="message">A human readable message indicating details
/// about the transition.</param>
/// <param name="reason">The reason for the condition's last
/// transition.</param>
public V1DeploymentCondition(string status, string type, System.DateTime? lastTransitionTime = default(System.DateTime?), System.DateTime? lastUpdateTime = default(System.DateTime?), string message = default(string), string reason = default(string))
{
LastTransitionTime = lastTransitionTime;
LastUpdateTime = lastUpdateTime;
Message = message;
Reason = reason;
Status = status;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets last time the condition transitioned from one status
/// to another.
/// </summary>
[JsonProperty(PropertyName = "lastTransitionTime")]
public System.DateTime? LastTransitionTime { get; set; }
/// <summary>
/// Gets or sets the last time this condition was updated.
/// </summary>
[JsonProperty(PropertyName = "lastUpdateTime")]
public System.DateTime? LastUpdateTime { get; set; }
/// <summary>
/// Gets or sets a human readable message indicating details about the
/// transition.
/// </summary>
[JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// Gets or sets the reason for the condition's last transition.
/// </summary>
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets status of the condition, one of True, False, Unknown.
/// </summary>
[JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets type of deployment condition.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Status == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Status");
}
if (Type == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Type");
}
}
}
}

View File

@@ -0,0 +1,113 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// DeploymentList is a list of Deployments.
/// </summary>
public partial class V1DeploymentList
{
/// <summary>
/// Initializes a new instance of the V1DeploymentList class.
/// </summary>
public V1DeploymentList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DeploymentList class.
/// </summary>
/// <param name="items">Items is the list of Deployments.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard list metadata.</param>
public V1DeploymentList(IList<V1Deployment> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets items is the list of Deployments.
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1Deployment> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard list metadata.
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,159 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DeploymentSpec is the specification of the desired behavior of the
/// Deployment.
/// </summary>
public partial class V1DeploymentSpec
{
/// <summary>
/// Initializes a new instance of the V1DeploymentSpec class.
/// </summary>
public V1DeploymentSpec()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DeploymentSpec class.
/// </summary>
/// <param name="selector">Label selector for pods. Existing
/// ReplicaSets whose pods are selected by this will be the ones
/// affected by this deployment. It must match the pod template's
/// labels.</param>
/// <param name="template">Template describes the pods that will be
/// created.</param>
/// <param name="minReadySeconds">Minimum number of seconds for which a
/// newly created pod should be ready without any of its container
/// crashing, for it to be considered available. Defaults to 0 (pod
/// will be considered available as soon as it is ready)</param>
/// <param name="paused">Indicates that the deployment is
/// paused.</param>
/// <param name="progressDeadlineSeconds">The maximum time in seconds
/// for a deployment to make progress before it is considered to be
/// failed. The deployment controller will continue to process failed
/// deployments and a condition with a ProgressDeadlineExceeded reason
/// will be surfaced in the deployment status. Note that progress will
/// not be estimated during the time a deployment is paused. Defaults
/// to 600s.</param>
/// <param name="replicas">Number of desired pods. This is a pointer to
/// distinguish between explicit zero and not specified. Defaults to
/// 1.</param>
/// <param name="revisionHistoryLimit">The number of old ReplicaSets to
/// retain to allow rollback. This is a pointer to distinguish between
/// explicit zero and not specified. Defaults to 10.</param>
/// <param name="strategy">The deployment strategy to use to replace
/// existing pods with new ones.</param>
public V1DeploymentSpec(V1LabelSelector selector, V1PodTemplateSpec template, int? minReadySeconds = default(int?), bool? paused = default(bool?), int? progressDeadlineSeconds = default(int?), int? replicas = default(int?), int? revisionHistoryLimit = default(int?), V1DeploymentStrategy strategy = default(V1DeploymentStrategy))
{
MinReadySeconds = minReadySeconds;
Paused = paused;
ProgressDeadlineSeconds = progressDeadlineSeconds;
Replicas = replicas;
RevisionHistoryLimit = revisionHistoryLimit;
Selector = selector;
Strategy = strategy;
Template = template;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets minimum number of seconds for which a newly created
/// pod should be ready without any of its container crashing, for it
/// to be considered available. Defaults to 0 (pod will be considered
/// available as soon as it is ready)
/// </summary>
[JsonProperty(PropertyName = "minReadySeconds")]
public int? MinReadySeconds { get; set; }
/// <summary>
/// Gets or sets indicates that the deployment is paused.
/// </summary>
[JsonProperty(PropertyName = "paused")]
public bool? Paused { get; set; }
/// <summary>
/// Gets or sets the maximum time in seconds for a deployment to make
/// progress before it is considered to be failed. The deployment
/// controller will continue to process failed deployments and a
/// condition with a ProgressDeadlineExceeded reason will be surfaced
/// in the deployment status. Note that progress will not be estimated
/// during the time a deployment is paused. Defaults to 600s.
/// </summary>
[JsonProperty(PropertyName = "progressDeadlineSeconds")]
public int? ProgressDeadlineSeconds { get; set; }
/// <summary>
/// Gets or sets number of desired pods. This is a pointer to
/// distinguish between explicit zero and not specified. Defaults to 1.
/// </summary>
[JsonProperty(PropertyName = "replicas")]
public int? Replicas { get; set; }
/// <summary>
/// Gets or sets the number of old ReplicaSets to retain to allow
/// rollback. This is a pointer to distinguish between explicit zero
/// and not specified. Defaults to 10.
/// </summary>
[JsonProperty(PropertyName = "revisionHistoryLimit")]
public int? RevisionHistoryLimit { get; set; }
/// <summary>
/// Gets or sets label selector for pods. Existing ReplicaSets whose
/// pods are selected by this will be the ones affected by this
/// deployment. It must match the pod template's labels.
/// </summary>
[JsonProperty(PropertyName = "selector")]
public V1LabelSelector Selector { get; set; }
/// <summary>
/// Gets or sets the deployment strategy to use to replace existing
/// pods with new ones.
/// </summary>
[JsonProperty(PropertyName = "strategy")]
public V1DeploymentStrategy Strategy { get; set; }
/// <summary>
/// Gets or sets template describes the pods that will be created.
/// </summary>
[JsonProperty(PropertyName = "template")]
public V1PodTemplateSpec Template { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Selector == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Selector");
}
if (Template == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Template");
}
if (Template != null)
{
Template.Validate();
}
}
}
}

View File

@@ -0,0 +1,133 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// DeploymentStatus is the most recently observed status of the
/// Deployment.
/// </summary>
public partial class V1DeploymentStatus
{
/// <summary>
/// Initializes a new instance of the V1DeploymentStatus class.
/// </summary>
public V1DeploymentStatus()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DeploymentStatus class.
/// </summary>
/// <param name="availableReplicas">Total number of available pods
/// (ready for at least minReadySeconds) targeted by this
/// deployment.</param>
/// <param name="collisionCount">Count of hash collisions for the
/// Deployment. The Deployment controller uses this field as a
/// collision avoidance mechanism when it needs to create the name for
/// the newest ReplicaSet.</param>
/// <param name="conditions">Represents the latest available
/// observations of a deployment's current state.</param>
/// <param name="observedGeneration">The generation observed by the
/// deployment controller.</param>
/// <param name="readyReplicas">Total number of ready pods targeted by
/// this deployment.</param>
/// <param name="replicas">Total number of non-terminated pods targeted
/// by this deployment (their labels match the selector).</param>
/// <param name="unavailableReplicas">Total number of unavailable pods
/// targeted by this deployment. This is the total number of pods that
/// are still required for the deployment to have 100% available
/// capacity. They may either be pods that are running but not yet
/// available or pods that still have not been created.</param>
/// <param name="updatedReplicas">Total number of non-terminated pods
/// targeted by this deployment that have the desired template
/// spec.</param>
public V1DeploymentStatus(int? availableReplicas = default(int?), int? collisionCount = default(int?), IList<V1DeploymentCondition> conditions = default(IList<V1DeploymentCondition>), long? observedGeneration = default(long?), int? readyReplicas = default(int?), int? replicas = default(int?), int? unavailableReplicas = default(int?), int? updatedReplicas = default(int?))
{
AvailableReplicas = availableReplicas;
CollisionCount = collisionCount;
Conditions = conditions;
ObservedGeneration = observedGeneration;
ReadyReplicas = readyReplicas;
Replicas = replicas;
UnavailableReplicas = unavailableReplicas;
UpdatedReplicas = updatedReplicas;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets total number of available pods (ready for at least
/// minReadySeconds) targeted by this deployment.
/// </summary>
[JsonProperty(PropertyName = "availableReplicas")]
public int? AvailableReplicas { get; set; }
/// <summary>
/// Gets or sets count of hash collisions for the Deployment. The
/// Deployment controller uses this field as a collision avoidance
/// mechanism when it needs to create the name for the newest
/// ReplicaSet.
/// </summary>
[JsonProperty(PropertyName = "collisionCount")]
public int? CollisionCount { get; set; }
/// <summary>
/// Gets or sets represents the latest available observations of a
/// deployment's current state.
/// </summary>
[JsonProperty(PropertyName = "conditions")]
public IList<V1DeploymentCondition> Conditions { get; set; }
/// <summary>
/// Gets or sets the generation observed by the deployment controller.
/// </summary>
[JsonProperty(PropertyName = "observedGeneration")]
public long? ObservedGeneration { get; set; }
/// <summary>
/// Gets or sets total number of ready pods targeted by this
/// deployment.
/// </summary>
[JsonProperty(PropertyName = "readyReplicas")]
public int? ReadyReplicas { get; set; }
/// <summary>
/// Gets or sets total number of non-terminated pods targeted by this
/// deployment (their labels match the selector).
/// </summary>
[JsonProperty(PropertyName = "replicas")]
public int? Replicas { get; set; }
/// <summary>
/// Gets or sets total number of unavailable pods targeted by this
/// deployment. This is the total number of pods that are still
/// required for the deployment to have 100% available capacity. They
/// may either be pods that are running but not yet available or pods
/// that still have not been created.
/// </summary>
[JsonProperty(PropertyName = "unavailableReplicas")]
public int? UnavailableReplicas { get; set; }
/// <summary>
/// Gets or sets total number of non-terminated pods targeted by this
/// deployment that have the desired template spec.
/// </summary>
[JsonProperty(PropertyName = "updatedReplicas")]
public int? UpdatedReplicas { get; set; }
}
}

View File

@@ -0,0 +1,60 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DeploymentStrategy describes how to replace existing pods with new
/// ones.
/// </summary>
public partial class V1DeploymentStrategy
{
/// <summary>
/// Initializes a new instance of the V1DeploymentStrategy class.
/// </summary>
public V1DeploymentStrategy()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1DeploymentStrategy class.
/// </summary>
/// <param name="rollingUpdate">Rolling update config params. Present
/// only if DeploymentStrategyType = RollingUpdate.</param>
/// <param name="type">Type of deployment. Can be "Recreate" or
/// "RollingUpdate". Default is RollingUpdate.</param>
public V1DeploymentStrategy(V1RollingUpdateDeployment rollingUpdate = default(V1RollingUpdateDeployment), string type = default(string))
{
RollingUpdate = rollingUpdate;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets rolling update config params. Present only if
/// DeploymentStrategyType = RollingUpdate.
/// </summary>
[JsonProperty(PropertyName = "rollingUpdate")]
public V1RollingUpdateDeployment RollingUpdate { get; set; }
/// <summary>
/// Gets or sets type of deployment. Can be "Recreate" or
/// "RollingUpdate". Default is RollingUpdate.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
}
}

View File

@@ -30,6 +30,8 @@ namespace k8s.Models
/// about.</param>
/// <param name="metadata">Standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
/// <param name="action">What action was taken/failed regarding to the
/// Regarding object.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -37,6 +39,8 @@ namespace k8s.Models
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="count">The number of times this event has
/// occurred.</param>
/// <param name="eventTime">Time when this Event was first
/// observed.</param>
/// <param name="firstTimestamp">The time at which the event was first
/// recorded. (Time of server receipt is in TypeMeta.)</param>
/// <param name="kind">Kind is a string value representing the REST
@@ -51,14 +55,24 @@ namespace k8s.Models
/// <param name="reason">This should be a short, machine understandable
/// string that gives the reason for the transition into the object's
/// current status.</param>
/// <param name="related">Optional secondary object for more complex
/// actions.</param>
/// <param name="reportingComponent">Name of the controller that
/// emitted this Event, e.g. `kubernetes.io/kubelet`.</param>
/// <param name="reportingInstance">ID of the controller instance, e.g.
/// `kubelet-xyzf`.</param>
/// <param name="series">Data about the Event series this event
/// represents or nil if it's a singleton Event.</param>
/// <param name="source">The component reporting this event. Should be
/// a short machine understandable string.</param>
/// <param name="type">Type of this event (Normal, Warning), new types
/// could be added in the future</param>
public V1Event(V1ObjectReference involvedObject, V1ObjectMeta metadata, string apiVersion = default(string), int? count = default(int?), System.DateTime? firstTimestamp = default(System.DateTime?), string kind = default(string), System.DateTime? lastTimestamp = default(System.DateTime?), string message = default(string), string reason = default(string), V1EventSource source = default(V1EventSource), string type = default(string))
public V1Event(V1ObjectReference involvedObject, V1ObjectMeta metadata, string action = default(string), string apiVersion = default(string), int? count = default(int?), System.DateTime? eventTime = default(System.DateTime?), System.DateTime? firstTimestamp = default(System.DateTime?), string kind = default(string), System.DateTime? lastTimestamp = default(System.DateTime?), string message = default(string), string reason = default(string), V1ObjectReference related = default(V1ObjectReference), string reportingComponent = default(string), string reportingInstance = default(string), V1EventSeries series = default(V1EventSeries), V1EventSource source = default(V1EventSource), string type = default(string))
{
Action = action;
ApiVersion = apiVersion;
Count = count;
EventTime = eventTime;
FirstTimestamp = firstTimestamp;
InvolvedObject = involvedObject;
Kind = kind;
@@ -66,6 +80,10 @@ namespace k8s.Models
Message = message;
Metadata = metadata;
Reason = reason;
Related = related;
ReportingComponent = reportingComponent;
ReportingInstance = reportingInstance;
Series = series;
Source = source;
Type = type;
CustomInit();
@@ -76,6 +94,13 @@ namespace k8s.Models
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets what action was taken/failed regarding to the
/// Regarding object.
/// </summary>
[JsonProperty(PropertyName = "action")]
public string Action { get; set; }
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
@@ -92,6 +117,12 @@ namespace k8s.Models
[JsonProperty(PropertyName = "count")]
public int? Count { get; set; }
/// <summary>
/// Gets or sets time when this Event was first observed.
/// </summary>
[JsonProperty(PropertyName = "eventTime")]
public System.DateTime? EventTime { get; set; }
/// <summary>
/// Gets or sets the time at which the event was first recorded. (Time
/// of server receipt is in TypeMeta.)
@@ -144,6 +175,32 @@ namespace k8s.Models
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets optional secondary object for more complex actions.
/// </summary>
[JsonProperty(PropertyName = "related")]
public V1ObjectReference Related { get; set; }
/// <summary>
/// Gets or sets name of the controller that emitted this Event, e.g.
/// `kubernetes.io/kubelet`.
/// </summary>
[JsonProperty(PropertyName = "reportingComponent")]
public string ReportingComponent { get; set; }
/// <summary>
/// Gets or sets ID of the controller instance, e.g. `kubelet-xyzf`.
/// </summary>
[JsonProperty(PropertyName = "reportingInstance")]
public string ReportingInstance { get; set; }
/// <summary>
/// Gets or sets data about the Event series this event represents or
/// nil if it's a singleton Event.
/// </summary>
[JsonProperty(PropertyName = "series")]
public V1EventSeries Series { get; set; }
/// <summary>
/// Gets or sets the component reporting this event. Should be a short
/// machine understandable string.

View File

@@ -0,0 +1,68 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// EventSeries contain information on series of events, i.e. thing that
/// was/is happening continously for some time.
/// </summary>
public partial class V1EventSeries
{
/// <summary>
/// Initializes a new instance of the V1EventSeries class.
/// </summary>
public V1EventSeries()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1EventSeries class.
/// </summary>
/// <param name="count">Number of occurrences in this series up to the
/// last heartbeat time</param>
/// <param name="lastObservedTime">Time of the last occurence
/// observed</param>
/// <param name="state">State of this Series: Ongoing or
/// Finished</param>
public V1EventSeries(int? count = default(int?), System.DateTime? lastObservedTime = default(System.DateTime?), string state = default(string))
{
Count = count;
LastObservedTime = lastObservedTime;
State = state;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets number of occurrences in this series up to the last
/// heartbeat time
/// </summary>
[JsonProperty(PropertyName = "count")]
public int? Count { get; set; }
/// <summary>
/// Gets or sets time of the last occurence observed
/// </summary>
[JsonProperty(PropertyName = "lastObservedTime")]
public System.DateTime? LastObservedTime { get; set; }
/// <summary>
/// Gets or sets state of this Series: Ongoing or Finished
/// </summary>
[JsonProperty(PropertyName = "state")]
public string State { get; set; }
}
}

View File

@@ -14,8 +14,7 @@ namespace k8s.Models
/// <summary>
/// FlexVolume represents a generic volume resource that is
/// provisioned/attached using an exec based plugin. This is an alpha
/// feature and may change in future.
/// provisioned/attached using an exec based plugin.
/// </summary>
public partial class V1FlexVolumeSource
{

View File

@@ -0,0 +1,181 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// ISCSIPersistentVolumeSource represents an ISCSI disk. ISCSI volumes can
/// only be mounted as read/write once. ISCSI volumes support ownership
/// management and SELinux relabeling.
/// </summary>
public partial class V1ISCSIPersistentVolumeSource
{
/// <summary>
/// Initializes a new instance of the V1ISCSIPersistentVolumeSource
/// class.
/// </summary>
public V1ISCSIPersistentVolumeSource()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ISCSIPersistentVolumeSource
/// class.
/// </summary>
/// <param name="iqn">Target iSCSI Qualified Name.</param>
/// <param name="lun">iSCSI Target Lun number.</param>
/// <param name="targetPortal">iSCSI Target Portal. The Portal is
/// either an IP or ip_addr:port if the port is other than default
/// (typically TCP ports 860 and 3260).</param>
/// <param name="chapAuthDiscovery">whether support iSCSI Discovery
/// CHAP authentication</param>
/// <param name="chapAuthSession">whether support iSCSI Session CHAP
/// authentication</param>
/// <param name="fsType">Filesystem type of the volume that you want to
/// mount. Tip: Ensure that the filesystem type is supported by the
/// host operating system. Examples: "ext4", "xfs", "ntfs". Implicitly
/// inferred to be "ext4" if unspecified. More info:
/// https://kubernetes.io/docs/concepts/storage/volumes#iscsi</param>
/// <param name="initiatorName">Custom iSCSI Initiator Name. If
/// initiatorName is specified with iscsiInterface simultaneously, new
/// iSCSI interface &lt;target portal&gt;:&lt;volume name&gt; will be
/// created for the connection.</param>
/// <param name="iscsiInterface">iSCSI Interface Name that uses an
/// iSCSI transport. Defaults to 'default' (tcp).</param>
/// <param name="portals">iSCSI Target Portal List. The Portal is
/// either an IP or ip_addr:port if the port is other than default
/// (typically TCP ports 860 and 3260).</param>
/// <param name="readOnlyProperty">ReadOnly here will force the
/// ReadOnly setting in VolumeMounts. Defaults to false.</param>
/// <param name="secretRef">CHAP Secret for iSCSI target and initiator
/// authentication</param>
public V1ISCSIPersistentVolumeSource(string iqn, int lun, string targetPortal, bool? chapAuthDiscovery = default(bool?), bool? chapAuthSession = default(bool?), string fsType = default(string), string initiatorName = default(string), string iscsiInterface = default(string), IList<string> portals = default(IList<string>), bool? readOnlyProperty = default(bool?), V1SecretReference secretRef = default(V1SecretReference))
{
ChapAuthDiscovery = chapAuthDiscovery;
ChapAuthSession = chapAuthSession;
FsType = fsType;
InitiatorName = initiatorName;
Iqn = iqn;
IscsiInterface = iscsiInterface;
Lun = lun;
Portals = portals;
ReadOnlyProperty = readOnlyProperty;
SecretRef = secretRef;
TargetPortal = targetPortal;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets whether support iSCSI Discovery CHAP authentication
/// </summary>
[JsonProperty(PropertyName = "chapAuthDiscovery")]
public bool? ChapAuthDiscovery { get; set; }
/// <summary>
/// Gets or sets whether support iSCSI Session CHAP authentication
/// </summary>
[JsonProperty(PropertyName = "chapAuthSession")]
public bool? ChapAuthSession { get; set; }
/// <summary>
/// Gets or sets filesystem type of the volume that you want to mount.
/// Tip: Ensure that the filesystem type is supported by the host
/// operating system. Examples: "ext4", "xfs", "ntfs". Implicitly
/// inferred to be "ext4" if unspecified. More info:
/// https://kubernetes.io/docs/concepts/storage/volumes#iscsi
/// </summary>
[JsonProperty(PropertyName = "fsType")]
public string FsType { get; set; }
/// <summary>
/// Gets or sets custom iSCSI Initiator Name. If initiatorName is
/// specified with iscsiInterface simultaneously, new iSCSI interface
/// &amp;lt;target portal&amp;gt;:&amp;lt;volume name&amp;gt; will be
/// created for the connection.
/// </summary>
[JsonProperty(PropertyName = "initiatorName")]
public string InitiatorName { get; set; }
/// <summary>
/// Gets or sets target iSCSI Qualified Name.
/// </summary>
[JsonProperty(PropertyName = "iqn")]
public string Iqn { get; set; }
/// <summary>
/// Gets or sets iSCSI Interface Name that uses an iSCSI transport.
/// Defaults to 'default' (tcp).
/// </summary>
[JsonProperty(PropertyName = "iscsiInterface")]
public string IscsiInterface { get; set; }
/// <summary>
/// Gets or sets iSCSI Target Lun number.
/// </summary>
[JsonProperty(PropertyName = "lun")]
public int Lun { get; set; }
/// <summary>
/// Gets or sets iSCSI Target Portal List. The Portal is either an IP
/// or ip_addr:port if the port is other than default (typically TCP
/// ports 860 and 3260).
/// </summary>
[JsonProperty(PropertyName = "portals")]
public IList<string> Portals { get; set; }
/// <summary>
/// Gets or sets readOnly here will force the ReadOnly setting in
/// VolumeMounts. Defaults to false.
/// </summary>
[JsonProperty(PropertyName = "readOnly")]
public bool? ReadOnlyProperty { get; set; }
/// <summary>
/// Gets or sets CHAP Secret for iSCSI target and initiator
/// authentication
/// </summary>
[JsonProperty(PropertyName = "secretRef")]
public V1SecretReference SecretRef { get; set; }
/// <summary>
/// Gets or sets iSCSI Target Portal. The Portal is either an IP or
/// ip_addr:port if the port is other than default (typically TCP ports
/// 860 and 3260).
/// </summary>
[JsonProperty(PropertyName = "targetPortal")]
public string TargetPortal { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Iqn == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Iqn");
}
if (TargetPortal == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "TargetPortal");
}
}
}
}

View File

@@ -31,8 +31,8 @@ namespace k8s.Models
/// Initializes a new instance of the V1ISCSIVolumeSource class.
/// </summary>
/// <param name="iqn">Target iSCSI Qualified Name.</param>
/// <param name="lun">iSCSI target lun number.</param>
/// <param name="targetPortal">iSCSI target portal. The portal is
/// <param name="lun">iSCSI Target Lun number.</param>
/// <param name="targetPortal">iSCSI Target Portal. The Portal is
/// either an IP or ip_addr:port if the port is other than default
/// (typically TCP ports 860 and 3260).</param>
/// <param name="chapAuthDiscovery">whether support iSCSI Discovery
@@ -44,18 +44,18 @@ namespace k8s.Models
/// host operating system. Examples: "ext4", "xfs", "ntfs". Implicitly
/// inferred to be "ext4" if unspecified. More info:
/// https://kubernetes.io/docs/concepts/storage/volumes#iscsi</param>
/// <param name="initiatorName">Custom iSCSI initiator name. If
/// <param name="initiatorName">Custom iSCSI Initiator Name. If
/// initiatorName is specified with iscsiInterface simultaneously, new
/// iSCSI interface &lt;target portal&gt;:&lt;volume name&gt; will be
/// created for the connection.</param>
/// <param name="iscsiInterface">Optional: Defaults to 'default' (tcp).
/// iSCSI interface name that uses an iSCSI transport.</param>
/// <param name="portals">iSCSI target portal List. The portal is
/// <param name="iscsiInterface">iSCSI Interface Name that uses an
/// iSCSI transport. Defaults to 'default' (tcp).</param>
/// <param name="portals">iSCSI Target Portal List. The portal is
/// either an IP or ip_addr:port if the port is other than default
/// (typically TCP ports 860 and 3260).</param>
/// <param name="readOnlyProperty">ReadOnly here will force the
/// ReadOnly setting in VolumeMounts. Defaults to false.</param>
/// <param name="secretRef">CHAP secret for iSCSI target and initiator
/// <param name="secretRef">CHAP Secret for iSCSI target and initiator
/// authentication</param>
public V1ISCSIVolumeSource(string iqn, int lun, string targetPortal, bool? chapAuthDiscovery = default(bool?), bool? chapAuthSession = default(bool?), string fsType = default(string), string initiatorName = default(string), string iscsiInterface = default(string), IList<string> portals = default(IList<string>), bool? readOnlyProperty = default(bool?), V1LocalObjectReference secretRef = default(V1LocalObjectReference))
{
@@ -101,7 +101,7 @@ namespace k8s.Models
public string FsType { get; set; }
/// <summary>
/// Gets or sets custom iSCSI initiator name. If initiatorName is
/// Gets or sets custom iSCSI Initiator Name. If initiatorName is
/// specified with iscsiInterface simultaneously, new iSCSI interface
/// &amp;lt;target portal&amp;gt;:&amp;lt;volume name&amp;gt; will be
/// created for the connection.
@@ -116,20 +116,20 @@ namespace k8s.Models
public string Iqn { get; set; }
/// <summary>
/// Gets or sets optional: Defaults to 'default' (tcp). iSCSI interface
/// name that uses an iSCSI transport.
/// Gets or sets iSCSI Interface Name that uses an iSCSI transport.
/// Defaults to 'default' (tcp).
/// </summary>
[JsonProperty(PropertyName = "iscsiInterface")]
public string IscsiInterface { get; set; }
/// <summary>
/// Gets or sets iSCSI target lun number.
/// Gets or sets iSCSI Target Lun number.
/// </summary>
[JsonProperty(PropertyName = "lun")]
public int Lun { get; set; }
/// <summary>
/// Gets or sets iSCSI target portal List. The portal is either an IP
/// Gets or sets iSCSI Target Portal List. The portal is either an IP
/// or ip_addr:port if the port is other than default (typically TCP
/// ports 860 and 3260).
/// </summary>
@@ -144,14 +144,14 @@ namespace k8s.Models
public bool? ReadOnlyProperty { get; set; }
/// <summary>
/// Gets or sets CHAP secret for iSCSI target and initiator
/// Gets or sets CHAP Secret for iSCSI target and initiator
/// authentication
/// </summary>
[JsonProperty(PropertyName = "secretRef")]
public V1LocalObjectReference SecretRef { get; set; }
/// <summary>
/// Gets or sets iSCSI target portal. The portal is either an IP or
/// Gets or sets iSCSI Target Portal. The Portal is either an IP or
/// ip_addr:port if the port is other than default (typically TCP ports
/// 860 and 3260).
/// </summary>

View File

@@ -51,7 +51,7 @@ namespace k8s.Models
/// may cause this and other jobs to not function correctly. However,
/// You may see `manualSelector=true` in jobs that were created with
/// the old `extensions/v1beta1` API. More info:
/// https://git.k8s.io/community/contributors/design-proposals/selector-generation.md</param>
/// https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector</param>
/// <param name="parallelism">Specifies the maximum desired number of
/// pods the job should run at any given time. The actual number of
/// pods running in steady state will be less than this number when
@@ -117,7 +117,7 @@ namespace k8s.Models
/// this and other jobs to not function correctly. However, You may
/// see `manualSelector=true` in jobs that were created with the old
/// `extensions/v1beta1` API. More info:
/// https://git.k8s.io/community/contributors/design-proposals/selector-generation.md
/// https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector
/// </summary>
[JsonProperty(PropertyName = "manualSelector")]
public bool? ManualSelector { get; set; }

View File

@@ -30,7 +30,7 @@ namespace k8s.Models
/// </summary>
/// <param name="items">Items is a list of LimitRange objects. More
/// info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md</param>
/// https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -69,7 +69,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets items is a list of LimitRange objects. More info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md
/// https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1LimitRange> Items { get; set; }

View File

@@ -30,7 +30,7 @@ namespace k8s.Models
/// <param name="finalizers">Finalizers is an opaque list of values
/// that must be empty to permanently remove object from storage. More
/// info:
/// https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers</param>
/// https://kubernetes.io/docs/tasks/administer-cluster/namespaces/</param>
public V1NamespaceSpec(IList<string> finalizers = default(IList<string>))
{
Finalizers = finalizers;
@@ -45,7 +45,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets finalizers is an opaque list of values that must be
/// empty to permanently remove object from storage. More info:
/// https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers
/// https://kubernetes.io/docs/tasks/administer-cluster/namespaces/
/// </summary>
[JsonProperty(PropertyName = "finalizers")]
public IList<string> Finalizers { get; set; }

View File

@@ -27,7 +27,7 @@ namespace k8s.Models
/// </summary>
/// <param name="phase">Phase is the current lifecycle phase of the
/// namespace. More info:
/// https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases</param>
/// https://kubernetes.io/docs/tasks/administer-cluster/namespaces/</param>
public V1NamespaceStatus(string phase = default(string))
{
Phase = phase;
@@ -42,7 +42,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets phase is the current lifecycle phase of the namespace.
/// More info:
/// https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases
/// https://kubernetes.io/docs/tasks/administer-cluster/namespaces/
/// </summary>
[JsonProperty(PropertyName = "phase")]
public string Phase { get; set; }

View File

@@ -55,7 +55,9 @@ namespace k8s.Models
/// by the server when a graceful deletion is requested by the user,
/// and is not directly settable by a client. The resource is expected
/// to be deleted (no longer visible from resource lists, and not
/// reachable by name) after the time in this field. Once set, this
/// reachable by name) after the time in this field, once the
/// finalizers list is empty. As long as the finalizers list contains
/// items, deletion is blocked. Once the deletionTimestamp is set, this
/// value may not be unset or be set further into the future, although
/// it may be shortened or the resource may be deleted prior to this
/// time. For example, a user may request that a pod is deleted in 30
@@ -226,12 +228,14 @@ namespace k8s.Models
/// a graceful deletion is requested by the user, and is not directly
/// settable by a client. The resource is expected to be deleted (no
/// longer visible from resource lists, and not reachable by name)
/// after the time in this field. Once set, this value may not be unset
/// or be set further into the future, although it may be shortened or
/// the resource may be deleted prior to this time. For example, a user
/// may request that a pod is deleted in 30 seconds. The Kubelet will
/// react by sending a graceful termination signal to the containers in
/// the pod. After that 30 seconds, the Kubelet will send a hard
/// after the time in this field, once the finalizers list is empty. As
/// long as the finalizers list contains items, deletion is blocked.
/// Once the deletionTimestamp is set, this value may not be unset or
/// be set further into the future, although it may be shortened or the
/// resource may be deleted prior to this time. For example, a user may
/// request that a pod is deleted in 30 seconds. The Kubelet will react
/// by sending a graceful termination signal to the containers in the
/// pod. After that 30 seconds, the Kubelet will send a hard
/// termination signal (SIGKILL) to the container and after cleanup,
/// remove the pod from the API. In the presence of network partitions,
/// this object may still exist after this timestamp, until an

View File

@@ -41,14 +41,19 @@ namespace k8s.Models
/// <param name="storageClassName">Name of the StorageClass required by
/// the claim. More info:
/// https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1</param>
/// <param name="volumeMode">volumeMode defines what type of volume is
/// required by the claim. Value of Filesystem is implied when not
/// included in claim spec. This is an alpha feature and may change in
/// the future.</param>
/// <param name="volumeName">VolumeName is the binding reference to the
/// PersistentVolume backing this claim.</param>
public V1PersistentVolumeClaimSpec(IList<string> accessModes = default(IList<string>), V1ResourceRequirements resources = default(V1ResourceRequirements), V1LabelSelector selector = default(V1LabelSelector), string storageClassName = default(string), string volumeName = default(string))
public V1PersistentVolumeClaimSpec(IList<string> accessModes = default(IList<string>), V1ResourceRequirements resources = default(V1ResourceRequirements), V1LabelSelector selector = default(V1LabelSelector), string storageClassName = default(string), string volumeMode = default(string), string volumeName = default(string))
{
AccessModes = accessModes;
Resources = resources;
Selector = selector;
StorageClassName = storageClassName;
VolumeMode = volumeMode;
VolumeName = volumeName;
CustomInit();
}
@@ -88,6 +93,14 @@ namespace k8s.Models
[JsonProperty(PropertyName = "storageClassName")]
public string StorageClassName { get; set; }
/// <summary>
/// Gets or sets volumeMode defines what type of volume is required by
/// the claim. Value of Filesystem is implied when not included in
/// claim spec. This is an alpha feature and may change in the future.
/// </summary>
[JsonProperty(PropertyName = "volumeMode")]
public string VolumeMode { get; set; }
/// <summary>
/// Gets or sets volumeName is the binding reference to the
/// PersistentVolume backing this claim.

View File

@@ -51,12 +51,14 @@ namespace k8s.Models
/// non-nil when bound. claim.VolumeName is the authoritative bind
/// between PV and PVC. More info:
/// https://kubernetes.io/docs/concepts/storage/persistent-volumes#binding</param>
/// <param name="csi">CSI represents storage that handled by an
/// external CSI driver</param>
/// <param name="fc">FC represents a Fibre Channel resource that is
/// attached to a kubelet's host machine and then exposed to the
/// pod.</param>
/// <param name="flexVolume">FlexVolume represents a generic volume
/// resource that is provisioned/attached using an exec based plugin.
/// This is an alpha feature and may change in future.</param>
/// resource that is provisioned/attached using an exec based
/// plugin.</param>
/// <param name="flocker">Flocker represents a Flocker volume attached
/// to a kubelet's host machine and exposed to the pod for its usage.
/// This depends on the Flocker control service being running</param>
@@ -110,9 +112,13 @@ namespace k8s.Models
/// that is attached to the kubelet's host machine and mounted into the
/// pod More info:
/// https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md</param>
/// <param name="volumeMode">volumeMode defines if a volume is intended
/// to be used with a formatted filesystem or to remain in raw block
/// state. Value of Filesystem is implied when not included in spec.
/// This is an alpha feature and may change in the future.</param>
/// <param name="vsphereVolume">VsphereVolume represents a vSphere
/// volume attached and mounted on kubelets host machine</param>
public V1PersistentVolumeSpec(IList<string> accessModes = default(IList<string>), V1AWSElasticBlockStoreVolumeSource awsElasticBlockStore = default(V1AWSElasticBlockStoreVolumeSource), V1AzureDiskVolumeSource azureDisk = default(V1AzureDiskVolumeSource), V1AzureFilePersistentVolumeSource azureFile = default(V1AzureFilePersistentVolumeSource), IDictionary<string, ResourceQuantity> capacity = default(IDictionary<string, ResourceQuantity>), V1CephFSPersistentVolumeSource cephfs = default(V1CephFSPersistentVolumeSource), V1CinderVolumeSource cinder = default(V1CinderVolumeSource), V1ObjectReference claimRef = default(V1ObjectReference), V1FCVolumeSource fc = default(V1FCVolumeSource), V1FlexVolumeSource flexVolume = default(V1FlexVolumeSource), V1FlockerVolumeSource flocker = default(V1FlockerVolumeSource), V1GCEPersistentDiskVolumeSource gcePersistentDisk = default(V1GCEPersistentDiskVolumeSource), V1GlusterfsVolumeSource glusterfs = default(V1GlusterfsVolumeSource), V1HostPathVolumeSource hostPath = default(V1HostPathVolumeSource), V1ISCSIVolumeSource iscsi = default(V1ISCSIVolumeSource), V1LocalVolumeSource local = default(V1LocalVolumeSource), IList<string> mountOptions = default(IList<string>), V1NFSVolumeSource nfs = default(V1NFSVolumeSource), string persistentVolumeReclaimPolicy = default(string), V1PhotonPersistentDiskVolumeSource photonPersistentDisk = default(V1PhotonPersistentDiskVolumeSource), V1PortworxVolumeSource portworxVolume = default(V1PortworxVolumeSource), V1QuobyteVolumeSource quobyte = default(V1QuobyteVolumeSource), V1RBDVolumeSource rbd = default(V1RBDVolumeSource), V1ScaleIOPersistentVolumeSource scaleIO = default(V1ScaleIOPersistentVolumeSource), string storageClassName = default(string), V1StorageOSPersistentVolumeSource storageos = default(V1StorageOSPersistentVolumeSource), V1VsphereVirtualDiskVolumeSource vsphereVolume = default(V1VsphereVirtualDiskVolumeSource))
public V1PersistentVolumeSpec(IList<string> accessModes = default(IList<string>), V1AWSElasticBlockStoreVolumeSource awsElasticBlockStore = default(V1AWSElasticBlockStoreVolumeSource), V1AzureDiskVolumeSource azureDisk = default(V1AzureDiskVolumeSource), V1AzureFilePersistentVolumeSource azureFile = default(V1AzureFilePersistentVolumeSource), IDictionary<string, ResourceQuantity> capacity = default(IDictionary<string, ResourceQuantity>), V1CephFSPersistentVolumeSource cephfs = default(V1CephFSPersistentVolumeSource), V1CinderVolumeSource cinder = default(V1CinderVolumeSource), V1ObjectReference claimRef = default(V1ObjectReference), V1CSIPersistentVolumeSource csi = default(V1CSIPersistentVolumeSource), V1FCVolumeSource fc = default(V1FCVolumeSource), V1FlexVolumeSource flexVolume = default(V1FlexVolumeSource), V1FlockerVolumeSource flocker = default(V1FlockerVolumeSource), V1GCEPersistentDiskVolumeSource gcePersistentDisk = default(V1GCEPersistentDiskVolumeSource), V1GlusterfsVolumeSource glusterfs = default(V1GlusterfsVolumeSource), V1HostPathVolumeSource hostPath = default(V1HostPathVolumeSource), V1ISCSIPersistentVolumeSource iscsi = default(V1ISCSIPersistentVolumeSource), V1LocalVolumeSource local = default(V1LocalVolumeSource), IList<string> mountOptions = default(IList<string>), V1NFSVolumeSource nfs = default(V1NFSVolumeSource), string persistentVolumeReclaimPolicy = default(string), V1PhotonPersistentDiskVolumeSource photonPersistentDisk = default(V1PhotonPersistentDiskVolumeSource), V1PortworxVolumeSource portworxVolume = default(V1PortworxVolumeSource), V1QuobyteVolumeSource quobyte = default(V1QuobyteVolumeSource), V1RBDPersistentVolumeSource rbd = default(V1RBDPersistentVolumeSource), V1ScaleIOPersistentVolumeSource scaleIO = default(V1ScaleIOPersistentVolumeSource), string storageClassName = default(string), V1StorageOSPersistentVolumeSource storageos = default(V1StorageOSPersistentVolumeSource), string volumeMode = default(string), V1VsphereVirtualDiskVolumeSource vsphereVolume = default(V1VsphereVirtualDiskVolumeSource))
{
AccessModes = accessModes;
AwsElasticBlockStore = awsElasticBlockStore;
@@ -122,6 +128,7 @@ namespace k8s.Models
Cephfs = cephfs;
Cinder = cinder;
ClaimRef = claimRef;
Csi = csi;
Fc = fc;
FlexVolume = flexVolume;
Flocker = flocker;
@@ -140,6 +147,7 @@ namespace k8s.Models
ScaleIO = scaleIO;
StorageClassName = storageClassName;
Storageos = storageos;
VolumeMode = volumeMode;
VsphereVolume = vsphereVolume;
CustomInit();
}
@@ -213,6 +221,13 @@ namespace k8s.Models
[JsonProperty(PropertyName = "claimRef")]
public V1ObjectReference ClaimRef { get; set; }
/// <summary>
/// Gets or sets CSI represents storage that handled by an external CSI
/// driver
/// </summary>
[JsonProperty(PropertyName = "csi")]
public V1CSIPersistentVolumeSource Csi { get; set; }
/// <summary>
/// Gets or sets FC represents a Fibre Channel resource that is
/// attached to a kubelet's host machine and then exposed to the pod.
@@ -222,8 +237,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets flexVolume represents a generic volume resource that
/// is provisioned/attached using an exec based plugin. This is an
/// alpha feature and may change in future.
/// is provisioned/attached using an exec based plugin.
/// </summary>
[JsonProperty(PropertyName = "flexVolume")]
public V1FlexVolumeSource FlexVolume { get; set; }
@@ -271,7 +285,7 @@ namespace k8s.Models
/// Provisioned by an admin.
/// </summary>
[JsonProperty(PropertyName = "iscsi")]
public V1ISCSIVolumeSource Iscsi { get; set; }
public V1ISCSIPersistentVolumeSource Iscsi { get; set; }
/// <summary>
/// Gets or sets local represents directly-attached storage with node
@@ -333,7 +347,7 @@ namespace k8s.Models
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md
/// </summary>
[JsonProperty(PropertyName = "rbd")]
public V1RBDVolumeSource Rbd { get; set; }
public V1RBDPersistentVolumeSource Rbd { get; set; }
/// <summary>
/// Gets or sets scaleIO represents a ScaleIO persistent volume
@@ -359,6 +373,15 @@ namespace k8s.Models
[JsonProperty(PropertyName = "storageos")]
public V1StorageOSPersistentVolumeSource Storageos { get; set; }
/// <summary>
/// Gets or sets volumeMode defines if a volume is intended to be used
/// with a formatted filesystem or to remain in raw block state. Value
/// of Filesystem is implied when not included in spec. This is an
/// alpha feature and may change in the future.
/// </summary>
[JsonProperty(PropertyName = "volumeMode")]
public string VolumeMode { get; set; }
/// <summary>
/// Gets or sets vsphereVolume represents a vSphere volume attached and
/// mounted on kubelets host machine
@@ -394,6 +417,10 @@ namespace k8s.Models
{
Cinder.Validate();
}
if (Csi != null)
{
Csi.Validate();
}
if (FlexVolume != null)
{
FlexVolume.Validate();

View File

@@ -6,6 +6,7 @@
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
@@ -16,8 +17,8 @@ namespace k8s.Models
/// to the given namespace(s)) that this pod should be co-located
/// (affinity) or not co-located (anti-affinity) with, where co-located is
/// defined as running on a node whose value of the label with key
/// &lt;topologyKey&gt; tches that of any node on which a pod of the set of
/// pods is running
/// &lt;topologyKey&gt; matches that of any node on which a pod of the set
/// of pods is running
/// </summary>
public partial class V1PodAffinityTerm
{
@@ -32,23 +33,18 @@ namespace k8s.Models
/// <summary>
/// Initializes a new instance of the V1PodAffinityTerm class.
/// </summary>
/// <param name="labelSelector">A label query over a set of resources,
/// in this case pods.</param>
/// <param name="namespaces">namespaces specifies which namespaces the
/// labelSelector applies to (matches against); null or empty list
/// means "this pod's namespace"</param>
/// <param name="topologyKey">This pod should be co-located (affinity)
/// or not co-located (anti-affinity) with the pods matching the
/// labelSelector in the specified namespaces, where co-located is
/// defined as running on a node whose value of the label with key
/// topologyKey matches that of any node on which any of the selected
/// pods is running. For PreferredDuringScheduling pod anti-affinity,
/// empty topologyKey is interpreted as "all topologies" ("all
/// topologies" here means all the topologyKeys indicated by scheduler
/// command-line argument --failure-domains); for affinity and for
/// RequiredDuringScheduling pod anti-affinity, empty topologyKey is
/// not allowed.</param>
public V1PodAffinityTerm(V1LabelSelector labelSelector = default(V1LabelSelector), IList<string> namespaces = default(IList<string>), string topologyKey = default(string))
/// pods is running. Empty topologyKey is not allowed.</param>
/// <param name="labelSelector">A label query over a set of resources,
/// in this case pods.</param>
/// <param name="namespaces">namespaces specifies which namespaces the
/// labelSelector applies to (matches against); null or empty list
/// means "this pod's namespace"</param>
public V1PodAffinityTerm(string topologyKey, V1LabelSelector labelSelector = default(V1LabelSelector), IList<string> namespaces = default(IList<string>))
{
LabelSelector = labelSelector;
Namespaces = namespaces;
@@ -81,15 +77,24 @@ namespace k8s.Models
/// co-located (anti-affinity) with the pods matching the labelSelector
/// in the specified namespaces, where co-located is defined as running
/// on a node whose value of the label with key topologyKey matches
/// that of any node on which any of the selected pods is running. For
/// PreferredDuringScheduling pod anti-affinity, empty topologyKey is
/// interpreted as "all topologies" ("all topologies" here means all
/// the topologyKeys indicated by scheduler command-line argument
/// --failure-domains); for affinity and for RequiredDuringScheduling
/// pod anti-affinity, empty topologyKey is not allowed.
/// that of any node on which any of the selected pods is running.
/// Empty topologyKey is not allowed.
/// </summary>
[JsonProperty(PropertyName = "topologyKey")]
public string TopologyKey { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (TopologyKey == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "TopologyKey");
}
}
}
}

View File

@@ -0,0 +1,80 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// PodDNSConfig defines the DNS parameters of a pod in addition to those
/// generated from DNSPolicy.
/// </summary>
public partial class V1PodDNSConfig
{
/// <summary>
/// Initializes a new instance of the V1PodDNSConfig class.
/// </summary>
public V1PodDNSConfig()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1PodDNSConfig class.
/// </summary>
/// <param name="nameservers">A list of DNS name server IP addresses.
/// This will be appended to the base nameservers generated from
/// DNSPolicy. Duplicated nameservers will be removed.</param>
/// <param name="options">A list of DNS resolver options. This will be
/// merged with the base options generated from DNSPolicy. Duplicated
/// entries will be removed. Resolution options given in Options will
/// override those that appear in the base DNSPolicy.</param>
/// <param name="searches">A list of DNS search domains for host-name
/// lookup. This will be appended to the base search paths generated
/// from DNSPolicy. Duplicated search paths will be removed.</param>
public V1PodDNSConfig(IList<string> nameservers = default(IList<string>), IList<V1PodDNSConfigOption> options = default(IList<V1PodDNSConfigOption>), IList<string> searches = default(IList<string>))
{
Nameservers = nameservers;
Options = options;
Searches = searches;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets a list of DNS name server IP addresses. This will be
/// appended to the base nameservers generated from DNSPolicy.
/// Duplicated nameservers will be removed.
/// </summary>
[JsonProperty(PropertyName = "nameservers")]
public IList<string> Nameservers { get; set; }
/// <summary>
/// Gets or sets a list of DNS resolver options. This will be merged
/// with the base options generated from DNSPolicy. Duplicated entries
/// will be removed. Resolution options given in Options will override
/// those that appear in the base DNSPolicy.
/// </summary>
[JsonProperty(PropertyName = "options")]
public IList<V1PodDNSConfigOption> Options { get; set; }
/// <summary>
/// Gets or sets a list of DNS search domains for host-name lookup.
/// This will be appended to the base search paths generated from
/// DNSPolicy. Duplicated search paths will be removed.
/// </summary>
[JsonProperty(PropertyName = "searches")]
public IList<string> Searches { get; set; }
}
}

View File

@@ -0,0 +1,53 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// PodDNSConfigOption defines DNS resolver options of a pod.
/// </summary>
public partial class V1PodDNSConfigOption
{
/// <summary>
/// Initializes a new instance of the V1PodDNSConfigOption class.
/// </summary>
public V1PodDNSConfigOption()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1PodDNSConfigOption class.
/// </summary>
/// <param name="name">Required.</param>
public V1PodDNSConfigOption(string name = default(string), string value = default(string))
{
Name = name;
Value = value;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets required.
/// </summary>
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[JsonProperty(PropertyName = "value")]
public string Value { get; set; }
}
}

View File

@@ -41,11 +41,19 @@ namespace k8s.Models
/// name="automountServiceAccountToken">AutomountServiceAccountToken
/// indicates whether a service account token should be automatically
/// mounted.</param>
/// <param name="dnsPolicy">Set DNS policy for containers within the
/// pod. One of 'ClusterFirstWithHostNet', 'ClusterFirst' or 'Default'.
/// Defaults to "ClusterFirst". To have DNS options set along with
/// hostNetwork, you have to specify DNS policy explicitly to
/// 'ClusterFirstWithHostNet'.</param>
/// <param name="dnsConfig">Specifies the DNS parameters of a pod.
/// Parameters specified here will be merged to the generated DNS
/// configuration based on DNSPolicy. This is an alpha feature
/// introduced in v1.9 and CustomPodDNS feature gate must be enabled to
/// use it.</param>
/// <param name="dnsPolicy">Set DNS policy for the pod. Defaults to
/// "ClusterFirst". Valid values are 'ClusterFirstWithHostNet',
/// 'ClusterFirst', 'Default' or 'None'. DNS parameters given in
/// DNSConfig will be merged with the policy selected with DNSPolicy.
/// To have DNS options set along with hostNetwork, you have to specify
/// DNS policy explicitly to 'ClusterFirstWithHostNet'. Note that
/// 'None' policy is an alpha feature introduced in v1.9 and
/// CustomPodDNS feature gate must be enabled to use it.</param>
/// <param name="hostAliases">HostAliases is an optional list of hosts
/// and IPs that will be injected into the pod's hosts file if
/// specified. This is only valid for non-hostNetwork pods.</param>
@@ -134,12 +142,13 @@ namespace k8s.Models
/// <param name="volumes">List of volumes that can be mounted by
/// containers belonging to the pod. More info:
/// https://kubernetes.io/docs/concepts/storage/volumes</param>
public V1PodSpec(IList<V1Container> containers, long? activeDeadlineSeconds = default(long?), V1Affinity affinity = default(V1Affinity), bool? automountServiceAccountToken = default(bool?), string dnsPolicy = default(string), IList<V1HostAlias> hostAliases = default(IList<V1HostAlias>), bool? hostIPC = default(bool?), bool? hostNetwork = default(bool?), bool? hostPID = default(bool?), string hostname = default(string), IList<V1LocalObjectReference> imagePullSecrets = default(IList<V1LocalObjectReference>), IList<V1Container> initContainers = default(IList<V1Container>), string nodeName = default(string), IDictionary<string, string> nodeSelector = default(IDictionary<string, string>), int? priority = default(int?), string priorityClassName = default(string), string restartPolicy = default(string), string schedulerName = default(string), V1PodSecurityContext securityContext = default(V1PodSecurityContext), string serviceAccount = default(string), string serviceAccountName = default(string), string subdomain = default(string), long? terminationGracePeriodSeconds = default(long?), IList<V1Toleration> tolerations = default(IList<V1Toleration>), IList<V1Volume> volumes = default(IList<V1Volume>))
public V1PodSpec(IList<V1Container> containers, long? activeDeadlineSeconds = default(long?), V1Affinity affinity = default(V1Affinity), bool? automountServiceAccountToken = default(bool?), V1PodDNSConfig dnsConfig = default(V1PodDNSConfig), string dnsPolicy = default(string), IList<V1HostAlias> hostAliases = default(IList<V1HostAlias>), bool? hostIPC = default(bool?), bool? hostNetwork = default(bool?), bool? hostPID = default(bool?), string hostname = default(string), IList<V1LocalObjectReference> imagePullSecrets = default(IList<V1LocalObjectReference>), IList<V1Container> initContainers = default(IList<V1Container>), string nodeName = default(string), IDictionary<string, string> nodeSelector = default(IDictionary<string, string>), int? priority = default(int?), string priorityClassName = default(string), string restartPolicy = default(string), string schedulerName = default(string), V1PodSecurityContext securityContext = default(V1PodSecurityContext), string serviceAccount = default(string), string serviceAccountName = default(string), string subdomain = default(string), long? terminationGracePeriodSeconds = default(long?), IList<V1Toleration> tolerations = default(IList<V1Toleration>), IList<V1Volume> volumes = default(IList<V1Volume>))
{
ActiveDeadlineSeconds = activeDeadlineSeconds;
Affinity = affinity;
AutomountServiceAccountToken = automountServiceAccountToken;
Containers = containers;
DnsConfig = dnsConfig;
DnsPolicy = dnsPolicy;
HostAliases = hostAliases;
HostIPC = hostIPC;
@@ -200,10 +209,23 @@ namespace k8s.Models
public IList<V1Container> Containers { get; set; }
/// <summary>
/// Gets or sets set DNS policy for containers within the pod. One of
/// 'ClusterFirstWithHostNet', 'ClusterFirst' or 'Default'. Defaults to
/// "ClusterFirst". To have DNS options set along with hostNetwork, you
/// have to specify DNS policy explicitly to 'ClusterFirstWithHostNet'.
/// Gets or sets specifies the DNS parameters of a pod. Parameters
/// specified here will be merged to the generated DNS configuration
/// based on DNSPolicy. This is an alpha feature introduced in v1.9 and
/// CustomPodDNS feature gate must be enabled to use it.
/// </summary>
[JsonProperty(PropertyName = "dnsConfig")]
public V1PodDNSConfig DnsConfig { get; set; }
/// <summary>
/// Gets or sets set DNS policy for the pod. Defaults to
/// "ClusterFirst". Valid values are 'ClusterFirstWithHostNet',
/// 'ClusterFirst', 'Default' or 'None'. DNS parameters given in
/// DNSConfig will be merged with the policy selected with DNSPolicy.
/// To have DNS options set along with hostNetwork, you have to specify
/// DNS policy explicitly to 'ClusterFirstWithHostNet'. Note that
/// 'None' policy is an alpha feature introduced in v1.9 and
/// CustomPodDNS feature gate must be enabled to use it.
/// </summary>
[JsonProperty(PropertyName = "dnsPolicy")]
public string DnsPolicy { get; set; }

View File

@@ -0,0 +1,156 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// Represents a Rados Block Device mount that lasts the lifetime of a pod.
/// RBD volumes support ownership management and SELinux relabeling.
/// </summary>
public partial class V1RBDPersistentVolumeSource
{
/// <summary>
/// Initializes a new instance of the V1RBDPersistentVolumeSource
/// class.
/// </summary>
public V1RBDPersistentVolumeSource()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1RBDPersistentVolumeSource
/// class.
/// </summary>
/// <param name="image">The rados image name. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
/// <param name="monitors">A collection of Ceph monitors. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
/// <param name="fsType">Filesystem type of the volume that you want to
/// mount. Tip: Ensure that the filesystem type is supported by the
/// host operating system. Examples: "ext4", "xfs", "ntfs". Implicitly
/// inferred to be "ext4" if unspecified. More info:
/// https://kubernetes.io/docs/concepts/storage/volumes#rbd</param>
/// <param name="keyring">Keyring is the path to key ring for RBDUser.
/// Default is /etc/ceph/keyring. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
/// <param name="pool">The rados pool name. Default is rbd. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
/// <param name="readOnlyProperty">ReadOnly here will force the
/// ReadOnly setting in VolumeMounts. Defaults to false. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
/// <param name="secretRef">SecretRef is name of the authentication
/// secret for RBDUser. If provided overrides keyring. Default is nil.
/// More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
/// <param name="user">The rados user name. Default is admin. More
/// info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it</param>
public V1RBDPersistentVolumeSource(string image, IList<string> monitors, string fsType = default(string), string keyring = default(string), string pool = default(string), bool? readOnlyProperty = default(bool?), V1SecretReference secretRef = default(V1SecretReference), string user = default(string))
{
FsType = fsType;
Image = image;
Keyring = keyring;
Monitors = monitors;
Pool = pool;
ReadOnlyProperty = readOnlyProperty;
SecretRef = secretRef;
User = user;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets filesystem type of the volume that you want to mount.
/// Tip: Ensure that the filesystem type is supported by the host
/// operating system. Examples: "ext4", "xfs", "ntfs". Implicitly
/// inferred to be "ext4" if unspecified. More info:
/// https://kubernetes.io/docs/concepts/storage/volumes#rbd
/// </summary>
[JsonProperty(PropertyName = "fsType")]
public string FsType { get; set; }
/// <summary>
/// Gets or sets the rados image name. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "image")]
public string Image { get; set; }
/// <summary>
/// Gets or sets keyring is the path to key ring for RBDUser. Default
/// is /etc/ceph/keyring. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "keyring")]
public string Keyring { get; set; }
/// <summary>
/// Gets or sets a collection of Ceph monitors. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "monitors")]
public IList<string> Monitors { get; set; }
/// <summary>
/// Gets or sets the rados pool name. Default is rbd. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "pool")]
public string Pool { get; set; }
/// <summary>
/// Gets or sets readOnly here will force the ReadOnly setting in
/// VolumeMounts. Defaults to false. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "readOnly")]
public bool? ReadOnlyProperty { get; set; }
/// <summary>
/// Gets or sets secretRef is name of the authentication secret for
/// RBDUser. If provided overrides keyring. Default is nil. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "secretRef")]
public V1SecretReference SecretRef { get; set; }
/// <summary>
/// Gets or sets the rados user name. Default is admin. More info:
/// https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it
/// </summary>
[JsonProperty(PropertyName = "user")]
public string User { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Image == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Image");
}
if (Monitors == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Monitors");
}
}
}
}

View File

@@ -0,0 +1,133 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// ReplicaSet ensures that a specified number of pod replicas are running
/// at any given time.
/// </summary>
public partial class V1ReplicaSet
{
/// <summary>
/// Initializes a new instance of the V1ReplicaSet class.
/// </summary>
public V1ReplicaSet()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ReplicaSet class.
/// </summary>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">If the Labels of a ReplicaSet are empty,
/// they are defaulted to be the same as the Pod(s) that the ReplicaSet
/// manages. Standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
/// <param name="spec">Spec defines the specification of the desired
/// behavior of the ReplicaSet. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status</param>
/// <param name="status">Status is the most recently observed status of
/// the ReplicaSet. This data may be out of date by some window of
/// time. Populated by the system. Read-only. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status</param>
public V1ReplicaSet(string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), V1ReplicaSetSpec spec = default(V1ReplicaSetSpec), V1ReplicaSetStatus status = default(V1ReplicaSetStatus))
{
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
Spec = spec;
Status = status;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets if the Labels of a ReplicaSet are empty, they are
/// defaulted to be the same as the Pod(s) that the ReplicaSet manages.
/// Standard object's metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets spec defines the specification of the desired behavior
/// of the ReplicaSet. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
/// </summary>
[JsonProperty(PropertyName = "spec")]
public V1ReplicaSetSpec Spec { get; set; }
/// <summary>
/// Gets or sets status is the most recently observed status of the
/// ReplicaSet. This data may be out of date by some window of time.
/// Populated by the system. Read-only. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
/// </summary>
[JsonProperty(PropertyName = "status")]
public V1ReplicaSetStatus Status { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Metadata != null)
{
Metadata.Validate();
}
if (Spec != null)
{
Spec.Validate();
}
if (Status != null)
{
Status.Validate();
}
}
}
}

View File

@@ -0,0 +1,104 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// ReplicaSetCondition describes the state of a replica set at a certain
/// point.
/// </summary>
public partial class V1ReplicaSetCondition
{
/// <summary>
/// Initializes a new instance of the V1ReplicaSetCondition class.
/// </summary>
public V1ReplicaSetCondition()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ReplicaSetCondition class.
/// </summary>
/// <param name="status">Status of the condition, one of True, False,
/// Unknown.</param>
/// <param name="type">Type of replica set condition.</param>
/// <param name="lastTransitionTime">The last time the condition
/// transitioned from one status to another.</param>
/// <param name="message">A human readable message indicating details
/// about the transition.</param>
/// <param name="reason">The reason for the condition's last
/// transition.</param>
public V1ReplicaSetCondition(string status, string type, System.DateTime? lastTransitionTime = default(System.DateTime?), string message = default(string), string reason = default(string))
{
LastTransitionTime = lastTransitionTime;
Message = message;
Reason = reason;
Status = status;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets the last time the condition transitioned from one
/// status to another.
/// </summary>
[JsonProperty(PropertyName = "lastTransitionTime")]
public System.DateTime? LastTransitionTime { get; set; }
/// <summary>
/// Gets or sets a human readable message indicating details about the
/// transition.
/// </summary>
[JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// Gets or sets the reason for the condition's last transition.
/// </summary>
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets status of the condition, one of True, False, Unknown.
/// </summary>
[JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets type of replica set condition.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Status == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Status");
}
if (Type == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Type");
}
}
}
}

View File

@@ -0,0 +1,117 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// ReplicaSetList is a collection of ReplicaSets.
/// </summary>
public partial class V1ReplicaSetList
{
/// <summary>
/// Initializes a new instance of the V1ReplicaSetList class.
/// </summary>
public V1ReplicaSetList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ReplicaSetList class.
/// </summary>
/// <param name="items">List of ReplicaSets. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
public V1ReplicaSetList(IList<V1ReplicaSet> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets list of ReplicaSets. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1ReplicaSet> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,114 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// ReplicaSetSpec is the specification of a ReplicaSet.
/// </summary>
public partial class V1ReplicaSetSpec
{
/// <summary>
/// Initializes a new instance of the V1ReplicaSetSpec class.
/// </summary>
public V1ReplicaSetSpec()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ReplicaSetSpec class.
/// </summary>
/// <param name="selector">Selector is a label query over pods that
/// should match the replica count. Label keys and values that must
/// match in order to be controlled by this replica set. It must match
/// the pod template's labels. More info:
/// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors</param>
/// <param name="minReadySeconds">Minimum number of seconds for which a
/// newly created pod should be ready without any of its container
/// crashing, for it to be considered available. Defaults to 0 (pod
/// will be considered available as soon as it is ready)</param>
/// <param name="replicas">Replicas is the number of desired replicas.
/// This is a pointer to distinguish between explicit zero and
/// unspecified. Defaults to 1. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller</param>
/// <param name="template">Template is the object that describes the
/// pod that will be created if insufficient replicas are detected.
/// More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template</param>
public V1ReplicaSetSpec(V1LabelSelector selector, int? minReadySeconds = default(int?), int? replicas = default(int?), V1PodTemplateSpec template = default(V1PodTemplateSpec))
{
MinReadySeconds = minReadySeconds;
Replicas = replicas;
Selector = selector;
Template = template;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets minimum number of seconds for which a newly created
/// pod should be ready without any of its container crashing, for it
/// to be considered available. Defaults to 0 (pod will be considered
/// available as soon as it is ready)
/// </summary>
[JsonProperty(PropertyName = "minReadySeconds")]
public int? MinReadySeconds { get; set; }
/// <summary>
/// Gets or sets replicas is the number of desired replicas. This is a
/// pointer to distinguish between explicit zero and unspecified.
/// Defaults to 1. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller
/// </summary>
[JsonProperty(PropertyName = "replicas")]
public int? Replicas { get; set; }
/// <summary>
/// Gets or sets selector is a label query over pods that should match
/// the replica count. Label keys and values that must match in order
/// to be controlled by this replica set. It must match the pod
/// template's labels. More info:
/// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
/// </summary>
[JsonProperty(PropertyName = "selector")]
public V1LabelSelector Selector { get; set; }
/// <summary>
/// Gets or sets template is the object that describes the pod that
/// will be created if insufficient replicas are detected. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template
/// </summary>
[JsonProperty(PropertyName = "template")]
public V1PodTemplateSpec Template { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Selector == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Selector");
}
if (Template != null)
{
Template.Validate();
}
}
}
}

View File

@@ -0,0 +1,122 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// ReplicaSetStatus represents the current status of a ReplicaSet.
/// </summary>
public partial class V1ReplicaSetStatus
{
/// <summary>
/// Initializes a new instance of the V1ReplicaSetStatus class.
/// </summary>
public V1ReplicaSetStatus()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1ReplicaSetStatus class.
/// </summary>
/// <param name="replicas">Replicas is the most recently oberved number
/// of replicas. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller</param>
/// <param name="availableReplicas">The number of available replicas
/// (ready for at least minReadySeconds) for this replica set.</param>
/// <param name="conditions">Represents the latest available
/// observations of a replica set's current state.</param>
/// <param name="fullyLabeledReplicas">The number of pods that have
/// labels matching the labels of the pod template of the
/// replicaset.</param>
/// <param name="observedGeneration">ObservedGeneration reflects the
/// generation of the most recently observed ReplicaSet.</param>
/// <param name="readyReplicas">The number of ready replicas for this
/// replica set.</param>
public V1ReplicaSetStatus(int replicas, int? availableReplicas = default(int?), IList<V1ReplicaSetCondition> conditions = default(IList<V1ReplicaSetCondition>), int? fullyLabeledReplicas = default(int?), long? observedGeneration = default(long?), int? readyReplicas = default(int?))
{
AvailableReplicas = availableReplicas;
Conditions = conditions;
FullyLabeledReplicas = fullyLabeledReplicas;
ObservedGeneration = observedGeneration;
ReadyReplicas = readyReplicas;
Replicas = replicas;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets the number of available replicas (ready for at least
/// minReadySeconds) for this replica set.
/// </summary>
[JsonProperty(PropertyName = "availableReplicas")]
public int? AvailableReplicas { get; set; }
/// <summary>
/// Gets or sets represents the latest available observations of a
/// replica set's current state.
/// </summary>
[JsonProperty(PropertyName = "conditions")]
public IList<V1ReplicaSetCondition> Conditions { get; set; }
/// <summary>
/// Gets or sets the number of pods that have labels matching the
/// labels of the pod template of the replicaset.
/// </summary>
[JsonProperty(PropertyName = "fullyLabeledReplicas")]
public int? FullyLabeledReplicas { get; set; }
/// <summary>
/// Gets or sets observedGeneration reflects the generation of the most
/// recently observed ReplicaSet.
/// </summary>
[JsonProperty(PropertyName = "observedGeneration")]
public long? ObservedGeneration { get; set; }
/// <summary>
/// Gets or sets the number of ready replicas for this replica set.
/// </summary>
[JsonProperty(PropertyName = "readyReplicas")]
public int? ReadyReplicas { get; set; }
/// <summary>
/// Gets or sets replicas is the most recently oberved number of
/// replicas. More info:
/// https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller
/// </summary>
[JsonProperty(PropertyName = "replicas")]
public int Replicas { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Conditions != null)
{
foreach (var element in Conditions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -30,7 +30,7 @@ namespace k8s.Models
/// </summary>
/// <param name="items">Items is a list of ResourceQuota objects. More
/// info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md</param>
/// https://kubernetes.io/docs/concepts/policy/resource-quotas/</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -69,7 +69,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets items is a list of ResourceQuota objects. More info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md
/// https://kubernetes.io/docs/concepts/policy/resource-quotas/
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1ResourceQuota> Items { get; set; }

View File

@@ -29,7 +29,7 @@ namespace k8s.Models
/// </summary>
/// <param name="hard">Hard is the set of desired hard limits for each
/// named resource. More info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md</param>
/// https://kubernetes.io/docs/concepts/policy/resource-quotas/</param>
/// <param name="scopes">A collection of filters that must match each
/// object tracked by a quota. If not specified, the quota matches all
/// objects.</param>
@@ -48,7 +48,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets hard is the set of desired hard limits for each named
/// resource. More info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md
/// https://kubernetes.io/docs/concepts/policy/resource-quotas/
/// </summary>
[JsonProperty(PropertyName = "hard")]
public IDictionary<string, ResourceQuantity> Hard { get; set; }

View File

@@ -29,7 +29,7 @@ namespace k8s.Models
/// </summary>
/// <param name="hard">Hard is the set of enforced hard limits for each
/// named resource. More info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md</param>
/// https://kubernetes.io/docs/concepts/policy/resource-quotas/</param>
/// <param name="used">Used is the current observed total usage of the
/// resource in the namespace.</param>
public V1ResourceQuotaStatus(IDictionary<string, ResourceQuantity> hard = default(IDictionary<string, ResourceQuantity>), IDictionary<string, ResourceQuantity> used = default(IDictionary<string, ResourceQuantity>))
@@ -47,7 +47,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets hard is the set of enforced hard limits for each named
/// resource. More info:
/// https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md
/// https://kubernetes.io/docs/concepts/policy/resource-quotas/
/// </summary>
[JsonProperty(PropertyName = "hard")]
public IDictionary<string, ResourceQuantity> Hard { get; set; }

View File

@@ -41,8 +41,9 @@ namespace k8s.Models
/// of names that the rule applies to. An empty set means that
/// everything is allowed. "*" means all.</param>
/// <param name="resources">Resources is a list of resources this rule
/// applies to. ResourceAll represents all resources. "*" means
/// all.</param>
/// applies to. "*" means all in the specified apiGroups.
/// "*/foo" represents the subresource 'foo' for all resources in the
/// specified apiGroups.</param>
public V1ResourceRule(IList<string> verbs, IList<string> apiGroups = default(IList<string>), IList<string> resourceNames = default(IList<string>), IList<string> resources = default(IList<string>))
{
ApiGroups = apiGroups;
@@ -76,7 +77,9 @@ namespace k8s.Models
/// <summary>
/// Gets or sets resources is a list of resources this rule applies to.
/// ResourceAll represents all resources. "*" means all.
/// "*" means all in the specified apiGroups.
/// "*/foo" represents the subresource 'foo' for all resources in the
/// specified apiGroups.
/// </summary>
[JsonProperty(PropertyName = "resources")]
public IList<string> Resources { get; set; }

View File

@@ -0,0 +1,73 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// Spec to control the desired behavior of daemon set rolling update.
/// </summary>
public partial class V1RollingUpdateDaemonSet
{
/// <summary>
/// Initializes a new instance of the V1RollingUpdateDaemonSet class.
/// </summary>
public V1RollingUpdateDaemonSet()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1RollingUpdateDaemonSet class.
/// </summary>
/// <param name="maxUnavailable">The maximum number of DaemonSet pods
/// that can be unavailable during the update. Value can be an absolute
/// number (ex: 5) or a percentage of total number of DaemonSet pods at
/// the start of the update (ex: 10%). Absolute number is calculated
/// from percentage by rounding up. This cannot be 0. Default value is
/// 1. Example: when this is set to 30%, at most 30% of the total
/// number of nodes that should be running the daemon pod (i.e.
/// status.desiredNumberScheduled) can have their pods stopped for an
/// update at any given time. The update starts by stopping at most 30%
/// of those DaemonSet pods and then brings up new DaemonSet pods in
/// their place. Once the new pods are available, it then proceeds onto
/// other DaemonSet pods, thus ensuring that at least 70% of original
/// number of DaemonSet pods are available at all times during the
/// update.</param>
public V1RollingUpdateDaemonSet(IntstrIntOrString maxUnavailable = default(IntstrIntOrString))
{
MaxUnavailable = maxUnavailable;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets the maximum number of DaemonSet pods that can be
/// unavailable during the update. Value can be an absolute number (ex:
/// 5) or a percentage of total number of DaemonSet pods at the start
/// of the update (ex: 10%). Absolute number is calculated from
/// percentage by rounding up. This cannot be 0. Default value is 1.
/// Example: when this is set to 30%, at most 30% of the total number
/// of nodes that should be running the daemon pod (i.e.
/// status.desiredNumberScheduled) can have their pods stopped for an
/// update at any given time. The update starts by stopping at most 30%
/// of those DaemonSet pods and then brings up new DaemonSet pods in
/// their place. Once the new pods are available, it then proceeds onto
/// other DaemonSet pods, thus ensuring that at least 70% of original
/// number of DaemonSet pods are available at all times during the
/// update.
/// </summary>
[JsonProperty(PropertyName = "maxUnavailable")]
public IntstrIntOrString MaxUnavailable { get; set; }
}
}

View File

@@ -0,0 +1,93 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// Spec to control the desired behavior of rolling update.
/// </summary>
public partial class V1RollingUpdateDeployment
{
/// <summary>
/// Initializes a new instance of the V1RollingUpdateDeployment class.
/// </summary>
public V1RollingUpdateDeployment()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1RollingUpdateDeployment class.
/// </summary>
/// <param name="maxSurge">The maximum number of pods that can be
/// scheduled above the desired number of pods. Value can be an
/// absolute number (ex: 5) or a percentage of desired pods (ex: 10%).
/// This can not be 0 if MaxUnavailable is 0. Absolute number is
/// calculated from percentage by rounding up. Defaults to 25%.
/// Example: when this is set to 30%, the new RC can be scaled up
/// immediately when the rolling update starts, such that the total
/// number of old and new pods do not exceed 130% of desired pods. Once
/// old pods have been killed, new RC can be scaled up further,
/// ensuring that total number of pods running at any time during the
/// update is atmost 130% of desired pods.</param>
/// <param name="maxUnavailable">The maximum number of pods that can be
/// unavailable during the update. Value can be an absolute number (ex:
/// 5) or a percentage of desired pods (ex: 10%). Absolute number is
/// calculated from percentage by rounding down. This can not be 0 if
/// MaxSurge is 0. Defaults to 25%. Example: when this is set to 30%,
/// the old RC can be scaled down to 70% of desired pods immediately
/// when the rolling update starts. Once new pods are ready, old RC can
/// be scaled down further, followed by scaling up the new RC, ensuring
/// that the total number of pods available at all times during the
/// update is at least 70% of desired pods.</param>
public V1RollingUpdateDeployment(IntstrIntOrString maxSurge = default(IntstrIntOrString), IntstrIntOrString maxUnavailable = default(IntstrIntOrString))
{
MaxSurge = maxSurge;
MaxUnavailable = maxUnavailable;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets the maximum number of pods that can be scheduled above
/// the desired number of pods. Value can be an absolute number (ex: 5)
/// or a percentage of desired pods (ex: 10%). This can not be 0 if
/// MaxUnavailable is 0. Absolute number is calculated from percentage
/// by rounding up. Defaults to 25%. Example: when this is set to 30%,
/// the new RC can be scaled up immediately when the rolling update
/// starts, such that the total number of old and new pods do not
/// exceed 130% of desired pods. Once old pods have been killed, new RC
/// can be scaled up further, ensuring that total number of pods
/// running at any time during the update is atmost 130% of desired
/// pods.
/// </summary>
[JsonProperty(PropertyName = "maxSurge")]
public IntstrIntOrString MaxSurge { get; set; }
/// <summary>
/// Gets or sets the maximum number of pods that can be unavailable
/// during the update. Value can be an absolute number (ex: 5) or a
/// percentage of desired pods (ex: 10%). Absolute number is calculated
/// from percentage by rounding down. This can not be 0 if MaxSurge is
/// 0. Defaults to 25%. Example: when this is set to 30%, the old RC
/// can be scaled down to 70% of desired pods immediately when the
/// rolling update starts. Once new pods are ready, old RC can be
/// scaled down further, followed by scaling up the new RC, ensuring
/// that the total number of pods available at all times during the
/// update is at least 70% of desired pods.
/// </summary>
[JsonProperty(PropertyName = "maxUnavailable")]
public IntstrIntOrString MaxUnavailable { get; set; }
}
}

View File

@@ -0,0 +1,52 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// RollingUpdateStatefulSetStrategy is used to communicate parameter for
/// RollingUpdateStatefulSetStrategyType.
/// </summary>
public partial class V1RollingUpdateStatefulSetStrategy
{
/// <summary>
/// Initializes a new instance of the
/// V1RollingUpdateStatefulSetStrategy class.
/// </summary>
public V1RollingUpdateStatefulSetStrategy()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the
/// V1RollingUpdateStatefulSetStrategy class.
/// </summary>
/// <param name="partition">Partition indicates the ordinal at which
/// the StatefulSet should be partitioned. Default value is 0.</param>
public V1RollingUpdateStatefulSetStrategy(int? partition = default(int?))
{
Partition = partition;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets partition indicates the ordinal at which the
/// StatefulSet should be partitioned. Default value is 0.
/// </summary>
[JsonProperty(PropertyName = "partition")]
public int? Partition { get; set; }
}
}

View File

@@ -45,8 +45,9 @@ namespace k8s.Models
/// of the Kubernetes system.</param>
/// <param name="externalName">externalName is the external reference
/// that kubedns or equivalent will return as a CNAME record for this
/// service. No proxying will be involved. Must be a valid DNS name and
/// requires Type to be ExternalName.</param>
/// service. No proxying will be involved. Must be a valid RFC-1123
/// hostname (https://tools.ietf.org/html/rfc1123) and requires Type to
/// be ExternalName.</param>
/// <param name="externalTrafficPolicy">externalTrafficPolicy denotes
/// if this Service desires to route external traffic to node-local or
/// cluster-wide endpoints. "Local" preserves the client source IP and
@@ -164,8 +165,9 @@ namespace k8s.Models
/// <summary>
/// Gets or sets externalName is the external reference that kubedns or
/// equivalent will return as a CNAME record for this service. No
/// proxying will be involved. Must be a valid DNS name and requires
/// Type to be ExternalName.
/// proxying will be involved. Must be a valid RFC-1123 hostname
/// (https://tools.ietf.org/html/rfc1123) and requires Type to be
/// ExternalName.
/// </summary>
[JsonProperty(PropertyName = "externalName")]
public string ExternalName { get; set; }

View File

@@ -0,0 +1,124 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// StatefulSet represents a set of pods with consistent identities.
/// Identities are defined as:
/// - Network: A single stable DNS and hostname.
/// - Storage: As many VolumeClaims as requested.
/// The StatefulSet guarantees that a given network identity will always
/// map to the same storage identity.
/// </summary>
public partial class V1StatefulSet
{
/// <summary>
/// Initializes a new instance of the V1StatefulSet class.
/// </summary>
public V1StatefulSet()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1StatefulSet class.
/// </summary>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="spec">Spec defines the desired identities of pods in
/// this set.</param>
/// <param name="status">Status is the current status of Pods in this
/// StatefulSet. This data may be out of date by some window of
/// time.</param>
public V1StatefulSet(string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), V1StatefulSetSpec spec = default(V1StatefulSetSpec), V1StatefulSetStatus status = default(V1StatefulSetStatus))
{
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
Spec = spec;
Status = status;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets spec defines the desired identities of pods in this
/// set.
/// </summary>
[JsonProperty(PropertyName = "spec")]
public V1StatefulSetSpec Spec { get; set; }
/// <summary>
/// Gets or sets status is the current status of Pods in this
/// StatefulSet. This data may be out of date by some window of time.
/// </summary>
[JsonProperty(PropertyName = "status")]
public V1StatefulSetStatus Status { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Metadata != null)
{
Metadata.Validate();
}
if (Spec != null)
{
Spec.Validate();
}
if (Status != null)
{
Status.Validate();
}
}
}
}

View File

@@ -0,0 +1,104 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// StatefulSetCondition describes the state of a statefulset at a certain
/// point.
/// </summary>
public partial class V1StatefulSetCondition
{
/// <summary>
/// Initializes a new instance of the V1StatefulSetCondition class.
/// </summary>
public V1StatefulSetCondition()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1StatefulSetCondition class.
/// </summary>
/// <param name="status">Status of the condition, one of True, False,
/// Unknown.</param>
/// <param name="type">Type of statefulset condition.</param>
/// <param name="lastTransitionTime">Last time the condition
/// transitioned from one status to another.</param>
/// <param name="message">A human readable message indicating details
/// about the transition.</param>
/// <param name="reason">The reason for the condition's last
/// transition.</param>
public V1StatefulSetCondition(string status, string type, System.DateTime? lastTransitionTime = default(System.DateTime?), string message = default(string), string reason = default(string))
{
LastTransitionTime = lastTransitionTime;
Message = message;
Reason = reason;
Status = status;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets last time the condition transitioned from one status
/// to another.
/// </summary>
[JsonProperty(PropertyName = "lastTransitionTime")]
public System.DateTime? LastTransitionTime { get; set; }
/// <summary>
/// Gets or sets a human readable message indicating details about the
/// transition.
/// </summary>
[JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// Gets or sets the reason for the condition's last transition.
/// </summary>
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets status of the condition, one of True, False, Unknown.
/// </summary>
[JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets type of statefulset condition.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Status == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Status");
}
if (Type == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Type");
}
}
}
}

View File

@@ -0,0 +1,109 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// StatefulSetList is a collection of StatefulSets.
/// </summary>
public partial class V1StatefulSetList
{
/// <summary>
/// Initializes a new instance of the V1StatefulSetList class.
/// </summary>
public V1StatefulSetList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1StatefulSetList class.
/// </summary>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
public V1StatefulSetList(IList<V1StatefulSet> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1StatefulSet> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,212 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// A StatefulSetSpec is the specification of a StatefulSet.
/// </summary>
public partial class V1StatefulSetSpec
{
/// <summary>
/// Initializes a new instance of the V1StatefulSetSpec class.
/// </summary>
public V1StatefulSetSpec()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1StatefulSetSpec class.
/// </summary>
/// <param name="selector">selector is a label query over pods that
/// should match the replica count. It must match the pod template's
/// labels. More info:
/// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors</param>
/// <param name="serviceName">serviceName is the name of the service
/// that governs this StatefulSet. This service must exist before the
/// StatefulSet, and is responsible for the network identity of the
/// set. Pods get DNS/hostnames that follow the pattern:
/// pod-specific-string.serviceName.default.svc.cluster.local where
/// "pod-specific-string" is managed by the StatefulSet
/// controller.</param>
/// <param name="template">template is the object that describes the
/// pod that will be created if insufficient replicas are detected.
/// Each pod stamped out by the StatefulSet will fulfill this Template,
/// but have a unique identity from the rest of the
/// StatefulSet.</param>
/// <param name="podManagementPolicy">podManagementPolicy controls how
/// pods are created during initial scale up, when replacing pods on
/// nodes, or when scaling down. The default policy is `OrderedReady`,
/// where pods are created in increasing order (pod-0, then pod-1, etc)
/// and the controller will wait until each pod is ready before
/// continuing. When scaling down, the pods are removed in the opposite
/// order. The alternative policy is `Parallel` which will create pods
/// in parallel to match the desired scale without waiting, and on
/// scale down will delete all pods at once.</param>
/// <param name="replicas">replicas is the desired number of replicas
/// of the given Template. These are replicas in the sense that they
/// are instantiations of the same Template, but individual replicas
/// also have a consistent identity. If unspecified, defaults to
/// 1.</param>
/// <param name="revisionHistoryLimit">revisionHistoryLimit is the
/// maximum number of revisions that will be maintained in the
/// StatefulSet's revision history. The revision history consists of
/// all revisions not represented by a currently applied
/// StatefulSetSpec version. The default value is 10.</param>
/// <param name="updateStrategy">updateStrategy indicates the
/// StatefulSetUpdateStrategy that will be employed to update Pods in
/// the StatefulSet when a revision is made to Template.</param>
/// <param name="volumeClaimTemplates">volumeClaimTemplates is a list
/// of claims that pods are allowed to reference. The StatefulSet
/// controller is responsible for mapping network identities to claims
/// in a way that maintains the identity of a pod. Every claim in this
/// list must have at least one matching (by name) volumeMount in one
/// container in the template. A claim in this list takes precedence
/// over any volumes in the template, with the same name.</param>
public V1StatefulSetSpec(V1LabelSelector selector, string serviceName, V1PodTemplateSpec template, string podManagementPolicy = default(string), int? replicas = default(int?), int? revisionHistoryLimit = default(int?), V1StatefulSetUpdateStrategy updateStrategy = default(V1StatefulSetUpdateStrategy), IList<V1PersistentVolumeClaim> volumeClaimTemplates = default(IList<V1PersistentVolumeClaim>))
{
PodManagementPolicy = podManagementPolicy;
Replicas = replicas;
RevisionHistoryLimit = revisionHistoryLimit;
Selector = selector;
ServiceName = serviceName;
Template = template;
UpdateStrategy = updateStrategy;
VolumeClaimTemplates = volumeClaimTemplates;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets podManagementPolicy controls how pods are created
/// during initial scale up, when replacing pods on nodes, or when
/// scaling down. The default policy is `OrderedReady`, where pods are
/// created in increasing order (pod-0, then pod-1, etc) and the
/// controller will wait until each pod is ready before continuing.
/// When scaling down, the pods are removed in the opposite order. The
/// alternative policy is `Parallel` which will create pods in parallel
/// to match the desired scale without waiting, and on scale down will
/// delete all pods at once.
/// </summary>
[JsonProperty(PropertyName = "podManagementPolicy")]
public string PodManagementPolicy { get; set; }
/// <summary>
/// Gets or sets replicas is the desired number of replicas of the
/// given Template. These are replicas in the sense that they are
/// instantiations of the same Template, but individual replicas also
/// have a consistent identity. If unspecified, defaults to 1.
/// </summary>
[JsonProperty(PropertyName = "replicas")]
public int? Replicas { get; set; }
/// <summary>
/// Gets or sets revisionHistoryLimit is the maximum number of
/// revisions that will be maintained in the StatefulSet's revision
/// history. The revision history consists of all revisions not
/// represented by a currently applied StatefulSetSpec version. The
/// default value is 10.
/// </summary>
[JsonProperty(PropertyName = "revisionHistoryLimit")]
public int? RevisionHistoryLimit { get; set; }
/// <summary>
/// Gets or sets selector is a label query over pods that should match
/// the replica count. It must match the pod template's labels. More
/// info:
/// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
/// </summary>
[JsonProperty(PropertyName = "selector")]
public V1LabelSelector Selector { get; set; }
/// <summary>
/// Gets or sets serviceName is the name of the service that governs
/// this StatefulSet. This service must exist before the StatefulSet,
/// and is responsible for the network identity of the set. Pods get
/// DNS/hostnames that follow the pattern:
/// pod-specific-string.serviceName.default.svc.cluster.local where
/// "pod-specific-string" is managed by the StatefulSet controller.
/// </summary>
[JsonProperty(PropertyName = "serviceName")]
public string ServiceName { get; set; }
/// <summary>
/// Gets or sets template is the object that describes the pod that
/// will be created if insufficient replicas are detected. Each pod
/// stamped out by the StatefulSet will fulfill this Template, but have
/// a unique identity from the rest of the StatefulSet.
/// </summary>
[JsonProperty(PropertyName = "template")]
public V1PodTemplateSpec Template { get; set; }
/// <summary>
/// Gets or sets updateStrategy indicates the StatefulSetUpdateStrategy
/// that will be employed to update Pods in the StatefulSet when a
/// revision is made to Template.
/// </summary>
[JsonProperty(PropertyName = "updateStrategy")]
public V1StatefulSetUpdateStrategy UpdateStrategy { get; set; }
/// <summary>
/// Gets or sets volumeClaimTemplates is a list of claims that pods are
/// allowed to reference. The StatefulSet controller is responsible for
/// mapping network identities to claims in a way that maintains the
/// identity of a pod. Every claim in this list must have at least one
/// matching (by name) volumeMount in one container in the template. A
/// claim in this list takes precedence over any volumes in the
/// template, with the same name.
/// </summary>
[JsonProperty(PropertyName = "volumeClaimTemplates")]
public IList<V1PersistentVolumeClaim> VolumeClaimTemplates { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Selector == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Selector");
}
if (ServiceName == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "ServiceName");
}
if (Template == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Template");
}
if (Template != null)
{
Template.Validate();
}
if (VolumeClaimTemplates != null)
{
foreach (var element in VolumeClaimTemplates)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,166 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// StatefulSetStatus represents the current state of a StatefulSet.
/// </summary>
public partial class V1StatefulSetStatus
{
/// <summary>
/// Initializes a new instance of the V1StatefulSetStatus class.
/// </summary>
public V1StatefulSetStatus()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1StatefulSetStatus class.
/// </summary>
/// <param name="replicas">replicas is the number of Pods created by
/// the StatefulSet controller.</param>
/// <param name="collisionCount">collisionCount is the count of hash
/// collisions for the StatefulSet. The StatefulSet controller uses
/// this field as a collision avoidance mechanism when it needs to
/// create the name for the newest ControllerRevision.</param>
/// <param name="conditions">Represents the latest available
/// observations of a statefulset's current state.</param>
/// <param name="currentReplicas">currentReplicas is the number of Pods
/// created by the StatefulSet controller from the StatefulSet version
/// indicated by currentRevision.</param>
/// <param name="currentRevision">currentRevision, if not empty,
/// indicates the version of the StatefulSet used to generate Pods in
/// the sequence [0,currentReplicas).</param>
/// <param name="observedGeneration">observedGeneration is the most
/// recent generation observed for this StatefulSet. It corresponds to
/// the StatefulSet's generation, which is updated on mutation by the
/// API Server.</param>
/// <param name="readyReplicas">readyReplicas is the number of Pods
/// created by the StatefulSet controller that have a Ready
/// Condition.</param>
/// <param name="updateRevision">updateRevision, if not empty,
/// indicates the version of the StatefulSet used to generate Pods in
/// the sequence [replicas-updatedReplicas,replicas)</param>
/// <param name="updatedReplicas">updatedReplicas is the number of Pods
/// created by the StatefulSet controller from the StatefulSet version
/// indicated by updateRevision.</param>
public V1StatefulSetStatus(int replicas, int? collisionCount = default(int?), IList<V1StatefulSetCondition> conditions = default(IList<V1StatefulSetCondition>), int? currentReplicas = default(int?), string currentRevision = default(string), long? observedGeneration = default(long?), int? readyReplicas = default(int?), string updateRevision = default(string), int? updatedReplicas = default(int?))
{
CollisionCount = collisionCount;
Conditions = conditions;
CurrentReplicas = currentReplicas;
CurrentRevision = currentRevision;
ObservedGeneration = observedGeneration;
ReadyReplicas = readyReplicas;
Replicas = replicas;
UpdateRevision = updateRevision;
UpdatedReplicas = updatedReplicas;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets collisionCount is the count of hash collisions for the
/// StatefulSet. The StatefulSet controller uses this field as a
/// collision avoidance mechanism when it needs to create the name for
/// the newest ControllerRevision.
/// </summary>
[JsonProperty(PropertyName = "collisionCount")]
public int? CollisionCount { get; set; }
/// <summary>
/// Gets or sets represents the latest available observations of a
/// statefulset's current state.
/// </summary>
[JsonProperty(PropertyName = "conditions")]
public IList<V1StatefulSetCondition> Conditions { get; set; }
/// <summary>
/// Gets or sets currentReplicas is the number of Pods created by the
/// StatefulSet controller from the StatefulSet version indicated by
/// currentRevision.
/// </summary>
[JsonProperty(PropertyName = "currentReplicas")]
public int? CurrentReplicas { get; set; }
/// <summary>
/// Gets or sets currentRevision, if not empty, indicates the version
/// of the StatefulSet used to generate Pods in the sequence
/// [0,currentReplicas).
/// </summary>
[JsonProperty(PropertyName = "currentRevision")]
public string CurrentRevision { get; set; }
/// <summary>
/// Gets or sets observedGeneration is the most recent generation
/// observed for this StatefulSet. It corresponds to the StatefulSet's
/// generation, which is updated on mutation by the API Server.
/// </summary>
[JsonProperty(PropertyName = "observedGeneration")]
public long? ObservedGeneration { get; set; }
/// <summary>
/// Gets or sets readyReplicas is the number of Pods created by the
/// StatefulSet controller that have a Ready Condition.
/// </summary>
[JsonProperty(PropertyName = "readyReplicas")]
public int? ReadyReplicas { get; set; }
/// <summary>
/// Gets or sets replicas is the number of Pods created by the
/// StatefulSet controller.
/// </summary>
[JsonProperty(PropertyName = "replicas")]
public int Replicas { get; set; }
/// <summary>
/// Gets or sets updateRevision, if not empty, indicates the version of
/// the StatefulSet used to generate Pods in the sequence
/// [replicas-updatedReplicas,replicas)
/// </summary>
[JsonProperty(PropertyName = "updateRevision")]
public string UpdateRevision { get; set; }
/// <summary>
/// Gets or sets updatedReplicas is the number of Pods created by the
/// StatefulSet controller from the StatefulSet version indicated by
/// updateRevision.
/// </summary>
[JsonProperty(PropertyName = "updatedReplicas")]
public int? UpdatedReplicas { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Conditions != null)
{
foreach (var element in Conditions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,64 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet
/// controller will use to perform updates. It includes any additional
/// parameters necessary to perform the update for the indicated strategy.
/// </summary>
public partial class V1StatefulSetUpdateStrategy
{
/// <summary>
/// Initializes a new instance of the V1StatefulSetUpdateStrategy
/// class.
/// </summary>
public V1StatefulSetUpdateStrategy()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1StatefulSetUpdateStrategy
/// class.
/// </summary>
/// <param name="rollingUpdate">RollingUpdate is used to communicate
/// parameters when Type is
/// RollingUpdateStatefulSetStrategyType.</param>
/// <param name="type">Type indicates the type of the
/// StatefulSetUpdateStrategy. Default is RollingUpdate.</param>
public V1StatefulSetUpdateStrategy(V1RollingUpdateStatefulSetStrategy rollingUpdate = default(V1RollingUpdateStatefulSetStrategy), string type = default(string))
{
RollingUpdate = rollingUpdate;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets rollingUpdate is used to communicate parameters when
/// Type is RollingUpdateStatefulSetStrategyType.
/// </summary>
[JsonProperty(PropertyName = "rollingUpdate")]
public V1RollingUpdateStatefulSetStrategy RollingUpdate { get; set; }
/// <summary>
/// Gets or sets type indicates the type of the
/// StatefulSetUpdateStrategy. Default is RollingUpdate.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
}
}

View File

@@ -58,7 +58,12 @@ namespace k8s.Models
/// <param name="reclaimPolicy">Dynamically provisioned
/// PersistentVolumes of this storage class are created with this
/// reclaimPolicy. Defaults to Delete.</param>
public V1StorageClass(string provisioner, bool? allowVolumeExpansion = default(bool?), string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), IList<string> mountOptions = default(IList<string>), IDictionary<string, string> parameters = default(IDictionary<string, string>), string reclaimPolicy = default(string))
/// <param name="volumeBindingMode">VolumeBindingMode indicates how
/// PersistentVolumeClaims should be provisioned and bound. When
/// unset, VolumeBindingImmediate is used. This field is alpha-level
/// and is only honored by servers that enable the VolumeScheduling
/// feature.</param>
public V1StorageClass(string provisioner, bool? allowVolumeExpansion = default(bool?), string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), IList<string> mountOptions = default(IList<string>), IDictionary<string, string> parameters = default(IDictionary<string, string>), string reclaimPolicy = default(string), string volumeBindingMode = default(string))
{
AllowVolumeExpansion = allowVolumeExpansion;
ApiVersion = apiVersion;
@@ -68,6 +73,7 @@ namespace k8s.Models
Parameters = parameters;
Provisioner = provisioner;
ReclaimPolicy = reclaimPolicy;
VolumeBindingMode = volumeBindingMode;
CustomInit();
}
@@ -140,6 +146,15 @@ namespace k8s.Models
[JsonProperty(PropertyName = "reclaimPolicy")]
public string ReclaimPolicy { get; set; }
/// <summary>
/// Gets or sets volumeBindingMode indicates how PersistentVolumeClaims
/// should be provisioned and bound. When unset,
/// VolumeBindingImmediate is used. This field is alpha-level and is
/// only honored by servers that enable the VolumeScheduling feature.
/// </summary>
[JsonProperty(PropertyName = "volumeBindingMode")]
public string VolumeBindingMode { get; set; }
/// <summary>
/// Validate the object.
/// </summary>

View File

@@ -27,8 +27,12 @@ namespace k8s.Models
/// Initializes a new instance of the V1SubjectAccessReviewStatus
/// class.
/// </summary>
/// <param name="allowed">Allowed is required. True if the action
/// would be allowed, false otherwise.</param>
/// <param name="allowed">Allowed is required. True if the action would
/// be allowed, false otherwise.</param>
/// <param name="denied">Denied is optional. True if the action would
/// be denied, otherwise false. If both allowed is false and denied is
/// false, then the authorizer has no opinion on whether to authorize
/// the action. Denied may not be true if Allowed is true.</param>
/// <param name="evaluationError">EvaluationError is an indication that
/// some error occurred during the authorization check. It is entirely
/// possible to get an error and be able to continue determine
@@ -37,9 +41,10 @@ namespace k8s.Models
/// reason about the request.</param>
/// <param name="reason">Reason is optional. It indicates why a
/// request was allowed or denied.</param>
public V1SubjectAccessReviewStatus(bool allowed, string evaluationError = default(string), string reason = default(string))
public V1SubjectAccessReviewStatus(bool allowed, bool? denied = default(bool?), string evaluationError = default(string), string reason = default(string))
{
Allowed = allowed;
Denied = denied;
EvaluationError = evaluationError;
Reason = reason;
CustomInit();
@@ -51,12 +56,21 @@ namespace k8s.Models
partial void CustomInit();
/// <summary>
/// Gets or sets allowed is required. True if the action would be
/// Gets or sets allowed is required. True if the action would be
/// allowed, false otherwise.
/// </summary>
[JsonProperty(PropertyName = "allowed")]
public bool Allowed { get; set; }
/// <summary>
/// Gets or sets denied is optional. True if the action would be
/// denied, otherwise false. If both allowed is false and denied is
/// false, then the authorizer has no opinion on whether to authorize
/// the action. Denied may not be true if Allowed is true.
/// </summary>
[JsonProperty(PropertyName = "denied")]
public bool? Denied { get; set; }
/// <summary>
/// Gets or sets evaluationError is an indication that some error
/// occurred during the authorization check. It is entirely possible to

View File

@@ -54,8 +54,8 @@ namespace k8s.Models
/// attached to a kubelet's host machine and then exposed to the
/// pod.</param>
/// <param name="flexVolume">FlexVolume represents a generic volume
/// resource that is provisioned/attached using an exec based plugin.
/// This is an alpha feature and may change in future.</param>
/// resource that is provisioned/attached using an exec based
/// plugin.</param>
/// <param name="flocker">Flocker represents a Flocker volume attached
/// to a kubelet's host machine. This depends on the Flocker control
/// service being running</param>
@@ -214,8 +214,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets flexVolume represents a generic volume resource that
/// is provisioned/attached using an exec based plugin. This is an
/// alpha feature and may change in future.
/// is provisioned/attached using an exec based plugin.
/// </summary>
[JsonProperty(PropertyName = "flexVolume")]
public V1FlexVolumeSource FlexVolume { get; set; }

View File

@@ -0,0 +1,78 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// volumeDevice describes a mapping of a raw block device within a
/// container.
/// </summary>
public partial class V1VolumeDevice
{
/// <summary>
/// Initializes a new instance of the V1VolumeDevice class.
/// </summary>
public V1VolumeDevice()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1VolumeDevice class.
/// </summary>
/// <param name="devicePath">devicePath is the path inside of the
/// container that the device will be mapped to.</param>
/// <param name="name">name must match the name of a
/// persistentVolumeClaim in the pod</param>
public V1VolumeDevice(string devicePath, string name)
{
DevicePath = devicePath;
Name = name;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets devicePath is the path inside of the container that
/// the device will be mapped to.
/// </summary>
[JsonProperty(PropertyName = "devicePath")]
public string DevicePath { get; set; }
/// <summary>
/// Gets or sets name must match the name of a persistentVolumeClaim in
/// the pod
/// </summary>
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (DevicePath == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "DevicePath");
}
if (Name == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Name");
}
}
}
}

View File

@@ -69,6 +69,10 @@ namespace k8s.Models
{
throw new ValidationException(ValidationRules.CannotBeNull, "PodAffinityTerm");
}
if (PodAffinityTerm != null)
{
PodAffinityTerm.Validate();
}
}
}
}

View File

@@ -1,89 +0,0 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// AdmissionHookClientConfig contains the information to make a TLS
/// connection with the webhook
/// </summary>
public partial class V1alpha1AdmissionHookClientConfig
{
/// <summary>
/// Initializes a new instance of the V1alpha1AdmissionHookClientConfig
/// class.
/// </summary>
public V1alpha1AdmissionHookClientConfig()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1AdmissionHookClientConfig
/// class.
/// </summary>
/// <param name="caBundle">CABundle is a PEM encoded CA bundle which
/// will be used to validate webhook's server certificate.
/// Required</param>
/// <param name="service">Service is a reference to the service for
/// this webhook. If there is only one port open for the service, that
/// port will be used. If there are multiple ports open, port 443 will
/// be used if it is open, otherwise it is an error. Required</param>
public V1alpha1AdmissionHookClientConfig(byte[] caBundle, V1alpha1ServiceReference service)
{
CaBundle = caBundle;
Service = service;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets cABundle is a PEM encoded CA bundle which will be used
/// to validate webhook's server certificate. Required
/// </summary>
[JsonProperty(PropertyName = "caBundle")]
public byte[] CaBundle { get; set; }
/// <summary>
/// Gets or sets service is a reference to the service for this
/// webhook. If there is only one port open for the service, that port
/// will be used. If there are multiple ports open, port 443 will be
/// used if it is open, otherwise it is an error. Required
/// </summary>
[JsonProperty(PropertyName = "service")]
public V1alpha1ServiceReference Service { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (CaBundle == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "CaBundle");
}
if (Service == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Service");
}
if (Service != null)
{
Service.Validate();
}
}
}
}

View File

@@ -0,0 +1,56 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// AggregationRule describes how to locate ClusterRoles to aggregate into
/// the ClusterRole
/// </summary>
public partial class V1alpha1AggregationRule
{
/// <summary>
/// Initializes a new instance of the V1alpha1AggregationRule class.
/// </summary>
public V1alpha1AggregationRule()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1AggregationRule class.
/// </summary>
/// <param name="clusterRoleSelectors">ClusterRoleSelectors holds a
/// list of selectors which will be used to find ClusterRoles and
/// create the rules. If any of the selectors match, then the
/// ClusterRole's permissions will be added</param>
public V1alpha1AggregationRule(IList<V1LabelSelector> clusterRoleSelectors = default(IList<V1LabelSelector>))
{
ClusterRoleSelectors = clusterRoleSelectors;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets clusterRoleSelectors holds a list of selectors which
/// will be used to find ClusterRoles and create the rules. If any of
/// the selectors match, then the ClusterRole's permissions will be
/// added
/// </summary>
[JsonProperty(PropertyName = "clusterRoleSelectors")]
public IList<V1LabelSelector> ClusterRoleSelectors { get; set; }
}
}

View File

@@ -31,6 +31,10 @@ namespace k8s.Models
/// </summary>
/// <param name="rules">Rules holds all the PolicyRules for this
/// ClusterRole</param>
/// <param name="aggregationRule">AggregationRule is an optional field
/// that describes how to build the Rules for this ClusterRole. If
/// AggregationRule is set, then the Rules are controller managed and
/// direct changes to Rules will be stomped by the controller.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -42,8 +46,9 @@ namespace k8s.Models
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object's metadata.</param>
public V1alpha1ClusterRole(IList<V1alpha1PolicyRule> rules, string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
public V1alpha1ClusterRole(IList<V1alpha1PolicyRule> rules, V1alpha1AggregationRule aggregationRule = default(V1alpha1AggregationRule), string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
{
AggregationRule = aggregationRule;
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
@@ -56,6 +61,15 @@ namespace k8s.Models
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aggregationRule is an optional field that describes
/// how to build the Rules for this ClusterRole. If AggregationRule is
/// set, then the Rules are controller managed and direct changes to
/// Rules will be stomped by the controller.
/// </summary>
[JsonProperty(PropertyName = "aggregationRule")]
public V1alpha1AggregationRule AggregationRule { get; set; }
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized

View File

@@ -1,114 +0,0 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// ExternalAdmissionHook describes an external admission webhook and the
/// resources and operations it applies to.
/// </summary>
public partial class V1alpha1ExternalAdmissionHook
{
/// <summary>
/// Initializes a new instance of the V1alpha1ExternalAdmissionHook
/// class.
/// </summary>
public V1alpha1ExternalAdmissionHook()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1ExternalAdmissionHook
/// class.
/// </summary>
/// <param name="clientConfig">ClientConfig defines how to communicate
/// with the hook. Required</param>
/// <param name="name">The name of the external admission webhook. Name
/// should be fully qualified, e.g., imagepolicy.kubernetes.io, where
/// "imagepolicy" is the name of the webhook, and kubernetes.io is the
/// name of the organization. Required.</param>
/// <param name="failurePolicy">FailurePolicy defines how unrecognized
/// errors from the admission endpoint are handled - allowed values are
/// Ignore or Fail. Defaults to Ignore.</param>
/// <param name="rules">Rules describes what operations on what
/// resources/subresources the webhook cares about. The webhook cares
/// about an operation if it matches _any_ Rule.</param>
public V1alpha1ExternalAdmissionHook(V1alpha1AdmissionHookClientConfig clientConfig, string name, string failurePolicy = default(string), IList<V1alpha1RuleWithOperations> rules = default(IList<V1alpha1RuleWithOperations>))
{
ClientConfig = clientConfig;
FailurePolicy = failurePolicy;
Name = name;
Rules = rules;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets clientConfig defines how to communicate with the hook.
/// Required
/// </summary>
[JsonProperty(PropertyName = "clientConfig")]
public V1alpha1AdmissionHookClientConfig ClientConfig { get; set; }
/// <summary>
/// Gets or sets failurePolicy defines how unrecognized errors from the
/// admission endpoint are handled - allowed values are Ignore or Fail.
/// Defaults to Ignore.
/// </summary>
[JsonProperty(PropertyName = "failurePolicy")]
public string FailurePolicy { get; set; }
/// <summary>
/// Gets or sets the name of the external admission webhook. Name
/// should be fully qualified, e.g., imagepolicy.kubernetes.io, where
/// "imagepolicy" is the name of the webhook, and kubernetes.io is the
/// name of the organization. Required.
/// </summary>
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets rules describes what operations on what
/// resources/subresources the webhook cares about. The webhook cares
/// about an operation if it matches _any_ Rule.
/// </summary>
[JsonProperty(PropertyName = "rules")]
public IList<V1alpha1RuleWithOperations> Rules { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (ClientConfig == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "ClientConfig");
}
if (Name == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Name");
}
if (ClientConfig != null)
{
ClientConfig.Validate();
}
}
}
}

View File

@@ -0,0 +1,132 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// VolumeAttachment captures the intent to attach or detach the specified
/// volume to/from the specified node.
///
/// VolumeAttachment objects are non-namespaced.
/// </summary>
public partial class V1alpha1VolumeAttachment
{
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachment class.
/// </summary>
public V1alpha1VolumeAttachment()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachment class.
/// </summary>
/// <param name="spec">Specification of the desired attach/detach
/// volume behavior. Populated by the Kubernetes system.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
/// <param name="status">Status of the VolumeAttachment request.
/// Populated by the entity completing the attach or detach operation,
/// i.e. the external-attacher.</param>
public V1alpha1VolumeAttachment(V1alpha1VolumeAttachmentSpec spec, string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), V1alpha1VolumeAttachmentStatus status = default(V1alpha1VolumeAttachmentStatus))
{
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
Spec = spec;
Status = status;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard object metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets specification of the desired attach/detach volume
/// behavior. Populated by the Kubernetes system.
/// </summary>
[JsonProperty(PropertyName = "spec")]
public V1alpha1VolumeAttachmentSpec Spec { get; set; }
/// <summary>
/// Gets or sets status of the VolumeAttachment request. Populated by
/// the entity completing the attach or detach operation, i.e. the
/// external-attacher.
/// </summary>
[JsonProperty(PropertyName = "status")]
public V1alpha1VolumeAttachmentStatus Status { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Spec == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Spec");
}
if (Metadata != null)
{
Metadata.Validate();
}
if (Spec != null)
{
Spec.Validate();
}
if (Status != null)
{
Status.Validate();
}
}
}
}

View File

@@ -0,0 +1,117 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// VolumeAttachmentList is a collection of VolumeAttachment objects.
/// </summary>
public partial class V1alpha1VolumeAttachmentList
{
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentList
/// class.
/// </summary>
public V1alpha1VolumeAttachmentList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentList
/// class.
/// </summary>
/// <param name="items">Items is the list of VolumeAttachments</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard list metadata More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
public V1alpha1VolumeAttachmentList(IList<V1alpha1VolumeAttachment> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets items is the list of VolumeAttachments
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1alpha1VolumeAttachment> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard list metadata More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,53 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// VolumeAttachmentSource represents a volume that should be attached.
/// Right now only PersistenVolumes can be attached via external attacher,
/// in future we may allow also inline volumes in pods. Exactly one member
/// can be set.
/// </summary>
public partial class V1alpha1VolumeAttachmentSource
{
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentSource
/// class.
/// </summary>
public V1alpha1VolumeAttachmentSource()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentSource
/// class.
/// </summary>
/// <param name="persistentVolumeName">Name of the persistent volume to
/// attach.</param>
public V1alpha1VolumeAttachmentSource(string persistentVolumeName = default(string))
{
PersistentVolumeName = persistentVolumeName;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets name of the persistent volume to attach.
/// </summary>
[JsonProperty(PropertyName = "persistentVolumeName")]
public string PersistentVolumeName { get; set; }
}
}

View File

@@ -0,0 +1,94 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// VolumeAttachmentSpec is the specification of a VolumeAttachment
/// request.
/// </summary>
public partial class V1alpha1VolumeAttachmentSpec
{
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentSpec
/// class.
/// </summary>
public V1alpha1VolumeAttachmentSpec()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentSpec
/// class.
/// </summary>
/// <param name="attacher">Attacher indicates the name of the volume
/// driver that MUST handle this request. This is the name returned by
/// GetPluginName().</param>
/// <param name="nodeName">The node that the volume should be attached
/// to.</param>
/// <param name="source">Source represents the volume that should be
/// attached.</param>
public V1alpha1VolumeAttachmentSpec(string attacher, string nodeName, V1alpha1VolumeAttachmentSource source)
{
Attacher = attacher;
NodeName = nodeName;
Source = source;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets attacher indicates the name of the volume driver that
/// MUST handle this request. This is the name returned by
/// GetPluginName().
/// </summary>
[JsonProperty(PropertyName = "attacher")]
public string Attacher { get; set; }
/// <summary>
/// Gets or sets the node that the volume should be attached to.
/// </summary>
[JsonProperty(PropertyName = "nodeName")]
public string NodeName { get; set; }
/// <summary>
/// Gets or sets source represents the volume that should be attached.
/// </summary>
[JsonProperty(PropertyName = "source")]
public V1alpha1VolumeAttachmentSource Source { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Attacher == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Attacher");
}
if (NodeName == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "NodeName");
}
if (Source == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Source");
}
}
}
}

View File

@@ -0,0 +1,106 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// VolumeAttachmentStatus is the status of a VolumeAttachment request.
/// </summary>
public partial class V1alpha1VolumeAttachmentStatus
{
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentStatus
/// class.
/// </summary>
public V1alpha1VolumeAttachmentStatus()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeAttachmentStatus
/// class.
/// </summary>
/// <param name="attached">Indicates the volume is successfully
/// attached. This field must only be set by the entity completing the
/// attach operation, i.e. the external-attacher.</param>
/// <param name="attachError">The last error encountered during attach
/// operation, if any. This field must only be set by the entity
/// completing the attach operation, i.e. the
/// external-attacher.</param>
/// <param name="attachmentMetadata">Upon successful attach, this field
/// is populated with any information returned by the attach operation
/// that must be passed into subsequent WaitForAttach or Mount calls.
/// This field must only be set by the entity completing the attach
/// operation, i.e. the external-attacher.</param>
/// <param name="detachError">The last error encountered during detach
/// operation, if any. This field must only be set by the entity
/// completing the detach operation, i.e. the
/// external-attacher.</param>
public V1alpha1VolumeAttachmentStatus(bool attached, V1alpha1VolumeError attachError = default(V1alpha1VolumeError), IDictionary<string, string> attachmentMetadata = default(IDictionary<string, string>), V1alpha1VolumeError detachError = default(V1alpha1VolumeError))
{
AttachError = attachError;
Attached = attached;
AttachmentMetadata = attachmentMetadata;
DetachError = detachError;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets the last error encountered during attach operation, if
/// any. This field must only be set by the entity completing the
/// attach operation, i.e. the external-attacher.
/// </summary>
[JsonProperty(PropertyName = "attachError")]
public V1alpha1VolumeError AttachError { get; set; }
/// <summary>
/// Gets or sets indicates the volume is successfully attached. This
/// field must only be set by the entity completing the attach
/// operation, i.e. the external-attacher.
/// </summary>
[JsonProperty(PropertyName = "attached")]
public bool Attached { get; set; }
/// <summary>
/// Gets or sets upon successful attach, this field is populated with
/// any information returned by the attach operation that must be
/// passed into subsequent WaitForAttach or Mount calls. This field
/// must only be set by the entity completing the attach operation,
/// i.e. the external-attacher.
/// </summary>
[JsonProperty(PropertyName = "attachmentMetadata")]
public IDictionary<string, string> AttachmentMetadata { get; set; }
/// <summary>
/// Gets or sets the last error encountered during detach operation, if
/// any. This field must only be set by the entity completing the
/// detach operation, i.e. the external-attacher.
/// </summary>
[JsonProperty(PropertyName = "detachError")]
public V1alpha1VolumeError DetachError { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
}
}
}

View File

@@ -0,0 +1,59 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// VolumeError captures an error encountered during a volume operation.
/// </summary>
public partial class V1alpha1VolumeError
{
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeError class.
/// </summary>
public V1alpha1VolumeError()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1alpha1VolumeError class.
/// </summary>
/// <param name="message">String detailing the error encountered during
/// Attach or Detach operation. This string maybe logged, so it should
/// not contain sensitive information.</param>
/// <param name="time">Time the error was encountered.</param>
public V1alpha1VolumeError(string message = default(string), System.DateTime? time = default(System.DateTime?))
{
Message = message;
Time = time;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets string detailing the error encountered during Attach
/// or Detach operation. This string maybe logged, so it should not
/// contain sensitive information.
/// </summary>
[JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// Gets or sets time the error was encountered.
/// </summary>
[JsonProperty(PropertyName = "time")]
public System.DateTime? Time { get; set; }
}
}

View File

@@ -33,7 +33,7 @@ namespace k8s.Models
/// certificate.</param>
/// <param name="groupPriorityMinimum">GroupPriorityMininum is the
/// priority this group should have at least. Higher priority means
/// that the group is prefered by clients over lower priority ones.
/// that the group is preferred by clients over lower priority ones.
/// Note that other versions of this group might specify even higher
/// GroupPriorityMininum values such that the whole group gets a higher
/// priority. The primary sort is based on GroupPriorityMinimum,
@@ -62,7 +62,7 @@ namespace k8s.Models
/// instead.</param>
/// <param name="version">Version is the API version this server hosts.
/// For example, "v1"</param>
public V1beta1APIServiceSpec(byte[] caBundle, int groupPriorityMinimum, V1beta1ServiceReference service, int versionPriority, string group = default(string), bool? insecureSkipTLSVerify = default(bool?), string version = default(string))
public V1beta1APIServiceSpec(byte[] caBundle, int groupPriorityMinimum, Apiregistrationv1beta1ServiceReference service, int versionPriority, string group = default(string), bool? insecureSkipTLSVerify = default(bool?), string version = default(string))
{
CaBundle = caBundle;
Group = group;
@@ -94,7 +94,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets groupPriorityMininum is the priority this group should
/// have at least. Higher priority means that the group is prefered by
/// have at least. Higher priority means that the group is preferred by
/// clients over lower priority ones. Note that other versions of this
/// group might specify even higher GroupPriorityMininum values such
/// that the whole group gets a higher priority. The primary sort is
@@ -123,7 +123,7 @@ namespace k8s.Models
/// chain to be fulfilled.
/// </summary>
[JsonProperty(PropertyName = "service")]
public V1beta1ServiceReference Service { get; set; }
public Apiregistrationv1beta1ServiceReference Service { get; set; }
/// <summary>
/// Gets or sets version is the API version this server hosts. For

View File

@@ -0,0 +1,56 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// AggregationRule describes how to locate ClusterRoles to aggregate into
/// the ClusterRole
/// </summary>
public partial class V1beta1AggregationRule
{
/// <summary>
/// Initializes a new instance of the V1beta1AggregationRule class.
/// </summary>
public V1beta1AggregationRule()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1AggregationRule class.
/// </summary>
/// <param name="clusterRoleSelectors">ClusterRoleSelectors holds a
/// list of selectors which will be used to find ClusterRoles and
/// create the rules. If any of the selectors match, then the
/// ClusterRole's permissions will be added</param>
public V1beta1AggregationRule(IList<V1LabelSelector> clusterRoleSelectors = default(IList<V1LabelSelector>))
{
ClusterRoleSelectors = clusterRoleSelectors;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets clusterRoleSelectors holds a list of selectors which
/// will be used to find ClusterRoles and create the rules. If any of
/// the selectors match, then the ClusterRole's permissions will be
/// added
/// </summary>
[JsonProperty(PropertyName = "clusterRoleSelectors")]
public IList<V1LabelSelector> ClusterRoleSelectors { get; set; }
}
}

View File

@@ -0,0 +1,63 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// AllowedFlexVolume represents a single Flexvolume that is allowed to be
/// used.
/// </summary>
public partial class V1beta1AllowedFlexVolume
{
/// <summary>
/// Initializes a new instance of the V1beta1AllowedFlexVolume class.
/// </summary>
public V1beta1AllowedFlexVolume()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1AllowedFlexVolume class.
/// </summary>
/// <param name="driver">Driver is the name of the Flexvolume
/// driver.</param>
public V1beta1AllowedFlexVolume(string driver)
{
Driver = driver;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets driver is the name of the Flexvolume driver.
/// </summary>
[JsonProperty(PropertyName = "driver")]
public string Driver { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Driver == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Driver");
}
}
}
}

View File

@@ -31,6 +31,10 @@ namespace k8s.Models
/// </summary>
/// <param name="rules">Rules holds all the PolicyRules for this
/// ClusterRole</param>
/// <param name="aggregationRule">AggregationRule is an optional field
/// that describes how to build the Rules for this ClusterRole. If
/// AggregationRule is set, then the Rules are controller managed and
/// direct changes to Rules will be stomped by the controller.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -42,8 +46,9 @@ namespace k8s.Models
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object's metadata.</param>
public V1beta1ClusterRole(IList<V1beta1PolicyRule> rules, string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
public V1beta1ClusterRole(IList<V1beta1PolicyRule> rules, V1beta1AggregationRule aggregationRule = default(V1beta1AggregationRule), string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
{
AggregationRule = aggregationRule;
ApiVersion = apiVersion;
Kind = kind;
Metadata = metadata;
@@ -56,6 +61,15 @@ namespace k8s.Models
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aggregationRule is an optional field that describes
/// how to build the Rules for this ClusterRole. If AggregationRule is
/// set, then the Rules are controller managed and direct changes to
/// Rules will be stomped by the controller.
/// </summary>
[JsonProperty(PropertyName = "aggregationRule")]
public V1beta1AggregationRule AggregationRule { get; set; }
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized

View File

@@ -32,7 +32,11 @@ namespace k8s.Models
/// <param name="schedule">The schedule in Cron format, see
/// https://en.wikipedia.org/wiki/Cron.</param>
/// <param name="concurrencyPolicy">Specifies how to treat concurrent
/// executions of a Job. Defaults to Allow.</param>
/// executions of a Job. Valid values are: - "Allow" (default): allows
/// CronJobs to run concurrently; - "Forbid": forbids concurrent runs,
/// skipping next run if previous run hasn't finished yet; - "Replace":
/// cancels currently running job and replaces it with a new
/// one</param>
/// <param name="failedJobsHistoryLimit">The number of failed finished
/// jobs to retain. This is a pointer to distinguish between explicit
/// zero and not specified. Defaults to 1.</param>
@@ -64,7 +68,10 @@ namespace k8s.Models
/// <summary>
/// Gets or sets specifies how to treat concurrent executions of a Job.
/// Defaults to Allow.
/// Valid values are: - "Allow" (default): allows CronJobs to run
/// concurrently; - "Forbid": forbids concurrent runs, skipping next
/// run if previous run hasn't finished yet; - "Replace": cancels
/// currently running job and replaces it with a new one
/// </summary>
[JsonProperty(PropertyName = "concurrencyPolicy")]
public string ConcurrencyPolicy { get; set; }

View File

@@ -38,9 +38,7 @@ namespace k8s.Models
/// <param name="version">Version is the version this resource belongs
/// in</param>
/// <param name="validation">Validation describes the validation
/// methods for CustomResources This field is alpha-level and should
/// only be sent to servers that enable the CustomResourceValidation
/// feature.</param>
/// methods for CustomResources</param>
public V1beta1CustomResourceDefinitionSpec(string group, V1beta1CustomResourceDefinitionNames names, string scope, string version, V1beta1CustomResourceValidation validation = default(V1beta1CustomResourceValidation))
{
Group = group;
@@ -78,8 +76,7 @@ namespace k8s.Models
/// <summary>
/// Gets or sets validation describes the validation methods for
/// CustomResources This field is alpha-level and should only be sent
/// to servers that enable the CustomResourceValidation feature.
/// CustomResources
/// </summary>
[JsonProperty(PropertyName = "validation")]
public V1beta1CustomResourceValidation Validation { get; set; }

View File

@@ -0,0 +1,104 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DaemonSetCondition describes the state of a DaemonSet at a certain
/// point.
/// </summary>
public partial class V1beta1DaemonSetCondition
{
/// <summary>
/// Initializes a new instance of the V1beta1DaemonSetCondition class.
/// </summary>
public V1beta1DaemonSetCondition()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1DaemonSetCondition class.
/// </summary>
/// <param name="status">Status of the condition, one of True, False,
/// Unknown.</param>
/// <param name="type">Type of DaemonSet condition.</param>
/// <param name="lastTransitionTime">Last time the condition
/// transitioned from one status to another.</param>
/// <param name="message">A human readable message indicating details
/// about the transition.</param>
/// <param name="reason">The reason for the condition's last
/// transition.</param>
public V1beta1DaemonSetCondition(string status, string type, System.DateTime? lastTransitionTime = default(System.DateTime?), string message = default(string), string reason = default(string))
{
LastTransitionTime = lastTransitionTime;
Message = message;
Reason = reason;
Status = status;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets last time the condition transitioned from one status
/// to another.
/// </summary>
[JsonProperty(PropertyName = "lastTransitionTime")]
public System.DateTime? LastTransitionTime { get; set; }
/// <summary>
/// Gets or sets a human readable message indicating details about the
/// transition.
/// </summary>
[JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// Gets or sets the reason for the condition's last transition.
/// </summary>
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets status of the condition, one of True, False, Unknown.
/// </summary>
[JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets type of DaemonSet condition.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Status == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Status");
}
if (Type == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Type");
}
}
}
}

View File

@@ -7,6 +7,8 @@
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
@@ -44,6 +46,8 @@ namespace k8s.Models
/// DaemonSet. The DaemonSet controller uses this field as a collision
/// avoidance mechanism when it needs to create the name for the newest
/// ControllerRevision.</param>
/// <param name="conditions">Represents the latest available
/// observations of a DaemonSet's current state.</param>
/// <param name="numberAvailable">The number of nodes that should be
/// running the daemon pod and have one or more of the daemon pod
/// running and available (ready for at least
@@ -55,9 +59,10 @@ namespace k8s.Models
/// observed by the daemon set controller.</param>
/// <param name="updatedNumberScheduled">The total number of nodes that
/// are running updated daemon pod</param>
public V1beta1DaemonSetStatus(int currentNumberScheduled, int desiredNumberScheduled, int numberMisscheduled, int numberReady, int? collisionCount = default(int?), int? numberAvailable = default(int?), int? numberUnavailable = default(int?), long? observedGeneration = default(long?), int? updatedNumberScheduled = default(int?))
public V1beta1DaemonSetStatus(int currentNumberScheduled, int desiredNumberScheduled, int numberMisscheduled, int numberReady, int? collisionCount = default(int?), IList<V1beta1DaemonSetCondition> conditions = default(IList<V1beta1DaemonSetCondition>), int? numberAvailable = default(int?), int? numberUnavailable = default(int?), long? observedGeneration = default(long?), int? updatedNumberScheduled = default(int?))
{
CollisionCount = collisionCount;
Conditions = conditions;
CurrentNumberScheduled = currentNumberScheduled;
DesiredNumberScheduled = desiredNumberScheduled;
NumberAvailable = numberAvailable;
@@ -83,6 +88,13 @@ namespace k8s.Models
[JsonProperty(PropertyName = "collisionCount")]
public int? CollisionCount { get; set; }
/// <summary>
/// Gets or sets represents the latest available observations of a
/// DaemonSet's current state.
/// </summary>
[JsonProperty(PropertyName = "conditions")]
public IList<V1beta1DaemonSetCondition> Conditions { get; set; }
/// <summary>
/// Gets or sets the number of nodes that are running at least 1 daemon
/// pod and are supposed to run the daemon pod. More info:
@@ -153,7 +165,16 @@ namespace k8s.Models
/// </exception>
public virtual void Validate()
{
//Nothing to validate
if (Conditions != null)
{
foreach (var element in Conditions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,240 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// Event is a report of an event somewhere in the cluster. It generally
/// denotes some state change in the system.
/// </summary>
public partial class V1beta1Event
{
/// <summary>
/// Initializes a new instance of the V1beta1Event class.
/// </summary>
public V1beta1Event()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1Event class.
/// </summary>
/// <param name="eventTime">Required. Time when this Event was first
/// observed.</param>
/// <param name="action">What action was taken/failed regarding to the
/// regarding object.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="deprecatedCount">Deprecated field assuring backward
/// compatibility with core.v1 Event type</param>
/// <param name="deprecatedFirstTimestamp">Deprecated field assuring
/// backward compatibility with core.v1 Event type</param>
/// <param name="deprecatedLastTimestamp">Deprecated field assuring
/// backward compatibility with core.v1 Event type</param>
/// <param name="deprecatedSource">Deprecated field assuring backward
/// compatibility with core.v1 Event type</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="note">Optional. A human-readable description of the
/// status of this operation. Maximal length of the note is 1kB, but
/// libraries should be prepared to handle values up to 64kB.</param>
/// <param name="reason">Why the action was taken.</param>
/// <param name="regarding">The object this Event is about. In most
/// cases it's an Object reporting controller implements. E.g.
/// ReplicaSetController implements ReplicaSets and this event is
/// emitted because it acts on some changes in a ReplicaSet
/// object.</param>
/// <param name="related">Optional secondary object for more complex
/// actions. E.g. when regarding object triggers a creation or deletion
/// of related object.</param>
/// <param name="reportingController">Name of the controller that
/// emitted this Event, e.g. `kubernetes.io/kubelet`.</param>
/// <param name="reportingInstance">ID of the controller instance, e.g.
/// `kubelet-xyzf`.</param>
/// <param name="series">Data about the Event series this event
/// represents or nil if it's a singleton Event.</param>
/// <param name="type">Type of this event (Normal, Warning), new types
/// could be added in the future.</param>
public V1beta1Event(System.DateTime eventTime, string action = default(string), string apiVersion = default(string), int? deprecatedCount = default(int?), System.DateTime? deprecatedFirstTimestamp = default(System.DateTime?), System.DateTime? deprecatedLastTimestamp = default(System.DateTime?), V1EventSource deprecatedSource = default(V1EventSource), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), string note = default(string), string reason = default(string), V1ObjectReference regarding = default(V1ObjectReference), V1ObjectReference related = default(V1ObjectReference), string reportingController = default(string), string reportingInstance = default(string), V1beta1EventSeries series = default(V1beta1EventSeries), string type = default(string))
{
Action = action;
ApiVersion = apiVersion;
DeprecatedCount = deprecatedCount;
DeprecatedFirstTimestamp = deprecatedFirstTimestamp;
DeprecatedLastTimestamp = deprecatedLastTimestamp;
DeprecatedSource = deprecatedSource;
EventTime = eventTime;
Kind = kind;
Metadata = metadata;
Note = note;
Reason = reason;
Regarding = regarding;
Related = related;
ReportingController = reportingController;
ReportingInstance = reportingInstance;
Series = series;
Type = type;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets what action was taken/failed regarding to the
/// regarding object.
/// </summary>
[JsonProperty(PropertyName = "action")]
public string Action { get; set; }
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets deprecated field assuring backward compatibility with
/// core.v1 Event type
/// </summary>
[JsonProperty(PropertyName = "deprecatedCount")]
public int? DeprecatedCount { get; set; }
/// <summary>
/// Gets or sets deprecated field assuring backward compatibility with
/// core.v1 Event type
/// </summary>
[JsonProperty(PropertyName = "deprecatedFirstTimestamp")]
public System.DateTime? DeprecatedFirstTimestamp { get; set; }
/// <summary>
/// Gets or sets deprecated field assuring backward compatibility with
/// core.v1 Event type
/// </summary>
[JsonProperty(PropertyName = "deprecatedLastTimestamp")]
public System.DateTime? DeprecatedLastTimestamp { get; set; }
/// <summary>
/// Gets or sets deprecated field assuring backward compatibility with
/// core.v1 Event type
/// </summary>
[JsonProperty(PropertyName = "deprecatedSource")]
public V1EventSource DeprecatedSource { get; set; }
/// <summary>
/// Gets or sets required. Time when this Event was first observed.
/// </summary>
[JsonProperty(PropertyName = "eventTime")]
public System.DateTime EventTime { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets optional. A human-readable description of the status
/// of this operation. Maximal length of the note is 1kB, but libraries
/// should be prepared to handle values up to 64kB.
/// </summary>
[JsonProperty(PropertyName = "note")]
public string Note { get; set; }
/// <summary>
/// Gets or sets why the action was taken.
/// </summary>
[JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets the object this Event is about. In most cases it's an
/// Object reporting controller implements. E.g. ReplicaSetController
/// implements ReplicaSets and this event is emitted because it acts on
/// some changes in a ReplicaSet object.
/// </summary>
[JsonProperty(PropertyName = "regarding")]
public V1ObjectReference Regarding { get; set; }
/// <summary>
/// Gets or sets optional secondary object for more complex actions.
/// E.g. when regarding object triggers a creation or deletion of
/// related object.
/// </summary>
[JsonProperty(PropertyName = "related")]
public V1ObjectReference Related { get; set; }
/// <summary>
/// Gets or sets name of the controller that emitted this Event, e.g.
/// `kubernetes.io/kubelet`.
/// </summary>
[JsonProperty(PropertyName = "reportingController")]
public string ReportingController { get; set; }
/// <summary>
/// Gets or sets ID of the controller instance, e.g. `kubelet-xyzf`.
/// </summary>
[JsonProperty(PropertyName = "reportingInstance")]
public string ReportingInstance { get; set; }
/// <summary>
/// Gets or sets data about the Event series this event represents or
/// nil if it's a singleton Event.
/// </summary>
[JsonProperty(PropertyName = "series")]
public V1beta1EventSeries Series { get; set; }
/// <summary>
/// Gets or sets type of this event (Normal, Warning), new types could
/// be added in the future.
/// </summary>
[JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="Microsoft.Rest.ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Metadata != null)
{
Metadata.Validate();
}
if (Series != null)
{
Series.Validate();
}
}
}
}

View File

@@ -0,0 +1,115 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// EventList is a list of Event objects.
/// </summary>
public partial class V1beta1EventList
{
/// <summary>
/// Initializes a new instance of the V1beta1EventList class.
/// </summary>
public V1beta1EventList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1EventList class.
/// </summary>
/// <param name="items">Items is a list of schema objects.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
/// CamelCase. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata</param>
public V1beta1EventList(IList<V1beta1Event> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
Kind = kind;
Metadata = metadata;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets aPIVersion defines the versioned schema of this
/// representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
/// </summary>
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets items is a list of schema objects.
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1beta1Event> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
/// the client submits requests to. Cannot be updated. In CamelCase.
/// More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
/// </summary>
[JsonProperty(PropertyName = "kind")]
public string Kind { get; set; }
/// <summary>
/// Gets or sets standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
/// </summary>
[JsonProperty(PropertyName = "metadata")]
public V1ListMeta Metadata { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (Items == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "Items");
}
if (Items != null)
{
foreach (var element in Items)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}

View File

@@ -0,0 +1,84 @@
// <auto-generated>
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
// </auto-generated>
namespace k8s.Models
{
using Microsoft.Rest;
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// EventSeries contain information on series of events, i.e. thing that
/// was/is happening continously for some time.
/// </summary>
public partial class V1beta1EventSeries
{
/// <summary>
/// Initializes a new instance of the V1beta1EventSeries class.
/// </summary>
public V1beta1EventSeries()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the V1beta1EventSeries class.
/// </summary>
/// <param name="count">Number of occurrences in this series up to the
/// last heartbeat time</param>
/// <param name="lastObservedTime">Time when last Event from the series
/// was seen before last heartbeat.</param>
/// <param name="state">Information whether this series is ongoing or
/// finished.</param>
public V1beta1EventSeries(int count, System.DateTime lastObservedTime, string state)
{
Count = count;
LastObservedTime = lastObservedTime;
State = state;
CustomInit();
}
/// <summary>
/// An initialization method that performs custom operations like setting defaults
/// </summary>
partial void CustomInit();
/// <summary>
/// Gets or sets number of occurrences in this series up to the last
/// heartbeat time
/// </summary>
[JsonProperty(PropertyName = "count")]
public int Count { get; set; }
/// <summary>
/// Gets or sets time when last Event from the series was seen before
/// last heartbeat.
/// </summary>
[JsonProperty(PropertyName = "lastObservedTime")]
public System.DateTime LastObservedTime { get; set; }
/// <summary>
/// Gets or sets information whether this series is ongoing or
/// finished.
/// </summary>
[JsonProperty(PropertyName = "state")]
public string State { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
/// <exception cref="ValidationException">
/// Thrown if validation fails
/// </exception>
public virtual void Validate()
{
if (State == null)
{
throw new ValidationException(ValidationRules.CannotBeNull, "State");
}
}
}
}

View File

@@ -13,10 +13,11 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// IPBlock describes a particular CIDR (Ex. "192.168.1.1/24") that is
/// allowed to the pods matched by a NetworkPolicySpec's podSelector. The
/// except entry describes CIDRs that should not be included within this
/// rule.
/// DEPRECATED 1.9 - This group version of IPBlock is deprecated by
/// networking/v1/IPBlock. IPBlock describes a particular CIDR (Ex.
/// "192.168.1.1/24") that is allowed to the pods matched by a
/// NetworkPolicySpec's podSelector. The except entry describes CIDRs that
/// should not be included within this rule.
/// </summary>
public partial class V1beta1IPBlock
{

View File

@@ -12,32 +12,29 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// ExternalAdmissionHookConfiguration describes the configuration of
/// initializers.
/// MutatingWebhookConfiguration describes the configuration of and
/// admission webhook that accept or reject and may change the object.
/// </summary>
public partial class V1alpha1ExternalAdmissionHookConfiguration
public partial class V1beta1MutatingWebhookConfiguration
{
/// <summary>
/// Initializes a new instance of the
/// V1alpha1ExternalAdmissionHookConfiguration class.
/// V1beta1MutatingWebhookConfiguration class.
/// </summary>
public V1alpha1ExternalAdmissionHookConfiguration()
public V1beta1MutatingWebhookConfiguration()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the
/// V1alpha1ExternalAdmissionHookConfiguration class.
/// V1beta1MutatingWebhookConfiguration class.
/// </summary>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
/// values. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#resources</param>
/// <param name="externalAdmissionHooks">ExternalAdmissionHooks is a
/// list of external admission webhooks and the affected resources and
/// operations.</param>
/// <param name="kind">Kind is a string value representing the REST
/// resource this object represents. Servers may infer this from the
/// endpoint the client submits requests to. Cannot be updated. In
@@ -45,12 +42,14 @@ namespace k8s.Models
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard object metadata; More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.</param>
public V1alpha1ExternalAdmissionHookConfiguration(string apiVersion = default(string), IList<V1alpha1ExternalAdmissionHook> externalAdmissionHooks = default(IList<V1alpha1ExternalAdmissionHook>), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta))
/// <param name="webhooks">Webhooks is a list of webhooks and the
/// affected resources and operations.</param>
public V1beta1MutatingWebhookConfiguration(string apiVersion = default(string), string kind = default(string), V1ObjectMeta metadata = default(V1ObjectMeta), IList<V1beta1Webhook> webhooks = default(IList<V1beta1Webhook>))
{
ApiVersion = apiVersion;
ExternalAdmissionHooks = externalAdmissionHooks;
Kind = kind;
Metadata = metadata;
Webhooks = webhooks;
CustomInit();
}
@@ -69,13 +68,6 @@ namespace k8s.Models
[JsonProperty(PropertyName = "apiVersion")]
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets externalAdmissionHooks is a list of external admission
/// webhooks and the affected resources and operations.
/// </summary>
[JsonProperty(PropertyName = "externalAdmissionHooks")]
public IList<V1alpha1ExternalAdmissionHook> ExternalAdmissionHooks { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource
/// this object represents. Servers may infer this from the endpoint
@@ -93,6 +85,13 @@ namespace k8s.Models
[JsonProperty(PropertyName = "metadata")]
public V1ObjectMeta Metadata { get; set; }
/// <summary>
/// Gets or sets webhooks is a list of webhooks and the affected
/// resources and operations.
/// </summary>
[JsonProperty(PropertyName = "webhooks")]
public IList<V1beta1Webhook> Webhooks { get; set; }
/// <summary>
/// Validate the object.
/// </summary>
@@ -101,9 +100,13 @@ namespace k8s.Models
/// </exception>
public virtual void Validate()
{
if (ExternalAdmissionHooks != null)
if (Metadata != null)
{
foreach (var element in ExternalAdmissionHooks)
Metadata.Validate();
}
if (Webhooks != null)
{
foreach (var element in Webhooks)
{
if (element != null)
{
@@ -111,10 +114,6 @@ namespace k8s.Models
}
}
}
if (Metadata != null)
{
Metadata.Validate();
}
}
}
}

View File

@@ -13,26 +13,25 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// ExternalAdmissionHookConfigurationList is a list of
/// ExternalAdmissionHookConfiguration.
/// MutatingWebhookConfigurationList is a list of
/// MutatingWebhookConfiguration.
/// </summary>
public partial class V1alpha1ExternalAdmissionHookConfigurationList
public partial class V1beta1MutatingWebhookConfigurationList
{
/// <summary>
/// Initializes a new instance of the
/// V1alpha1ExternalAdmissionHookConfigurationList class.
/// V1beta1MutatingWebhookConfigurationList class.
/// </summary>
public V1alpha1ExternalAdmissionHookConfigurationList()
public V1beta1MutatingWebhookConfigurationList()
{
CustomInit();
}
/// <summary>
/// Initializes a new instance of the
/// V1alpha1ExternalAdmissionHookConfigurationList class.
/// V1beta1MutatingWebhookConfigurationList class.
/// </summary>
/// <param name="items">List of
/// ExternalAdmissionHookConfiguration.</param>
/// <param name="items">List of MutatingWebhookConfiguration.</param>
/// <param name="apiVersion">APIVersion defines the versioned schema of
/// this representation of an object. Servers should convert recognized
/// schemas to the latest internal value, and may reject unrecognized
@@ -45,7 +44,7 @@ namespace k8s.Models
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
/// <param name="metadata">Standard list metadata. More info:
/// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds</param>
public V1alpha1ExternalAdmissionHookConfigurationList(IList<V1alpha1ExternalAdmissionHookConfiguration> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
public V1beta1MutatingWebhookConfigurationList(IList<V1beta1MutatingWebhookConfiguration> items, string apiVersion = default(string), string kind = default(string), V1ListMeta metadata = default(V1ListMeta))
{
ApiVersion = apiVersion;
Items = items;
@@ -70,10 +69,10 @@ namespace k8s.Models
public string ApiVersion { get; set; }
/// <summary>
/// Gets or sets list of ExternalAdmissionHookConfiguration.
/// Gets or sets list of MutatingWebhookConfiguration.
/// </summary>
[JsonProperty(PropertyName = "items")]
public IList<V1alpha1ExternalAdmissionHookConfiguration> Items { get; set; }
public IList<V1beta1MutatingWebhookConfiguration> Items { get; set; }
/// <summary>
/// Gets or sets kind is a string value representing the REST resource

View File

@@ -10,8 +10,9 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// NetworkPolicy describes what network traffic is allowed for a set of
/// Pods
/// DEPRECATED 1.9 - This group version of NetworkPolicy is deprecated by
/// networking/v1/NetworkPolicy. NetworkPolicy describes what network
/// traffic is allowed for a set of Pods
/// </summary>
public partial class V1beta1NetworkPolicy
{

View File

@@ -12,6 +12,8 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// DEPRECATED 1.9 - This group version of NetworkPolicyEgressRule is
/// deprecated by networking/v1/NetworkPolicyEgressRule.
/// NetworkPolicyEgressRule describes a particular set of traffic that is
/// allowed out of pods matched by a NetworkPolicySpec's podSelector. The
/// traffic must match both ports and to. This type is beta-level in 1.8

View File

@@ -12,8 +12,10 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// This NetworkPolicyIngressRule matches traffic if and only if the
/// traffic matches both ports AND from.
/// DEPRECATED 1.9 - This group version of NetworkPolicyIngressRule is
/// deprecated by networking/v1/NetworkPolicyIngressRule. This
/// NetworkPolicyIngressRule matches traffic if and only if the traffic
/// matches both ports AND from.
/// </summary>
public partial class V1beta1NetworkPolicyIngressRule
{

View File

@@ -13,7 +13,9 @@ namespace k8s.Models
using System.Linq;
/// <summary>
/// Network Policy List is a list of NetworkPolicy objects.
/// DEPRECATED 1.9 - This group version of NetworkPolicyList is deprecated
/// by networking/v1/NetworkPolicyList. Network Policy List is a list of
/// NetworkPolicy objects.
/// </summary>
public partial class V1beta1NetworkPolicyList
{

View File

@@ -9,6 +9,10 @@ namespace k8s.Models
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DEPRECATED 1.9 - This group version of NetworkPolicyPeer is deprecated
/// by networking/v1/NetworkPolicyPeer.
/// </summary>
public partial class V1beta1NetworkPolicyPeer
{
/// <summary>

View File

@@ -9,6 +9,10 @@ namespace k8s.Models
using Newtonsoft.Json;
using System.Linq;
/// <summary>
/// DEPRECATED 1.9 - This group version of NetworkPolicyPort is deprecated
/// by networking/v1/NetworkPolicyPort.
/// </summary>
public partial class V1beta1NetworkPolicyPort
{
/// <summary>

View File

@@ -12,6 +12,10 @@ namespace k8s.Models
using System.Collections.Generic;
using System.Linq;
/// <summary>
/// DEPRECATED 1.9 - This group version of NetworkPolicySpec is deprecated
/// by networking/v1/NetworkPolicySpec.
/// </summary>
public partial class V1beta1NetworkPolicySpec
{
/// <summary>

View File

@@ -47,13 +47,19 @@ namespace k8s.Models
/// Capabilities in this field may be added at the pod author's
/// discretion. You must not list a capability in both
/// AllowedCapabilities and RequiredDropCapabilities.</param>
/// <param name="allowedFlexVolumes">AllowedFlexVolumes is a whitelist
/// of allowed Flexvolumes. Empty or nil indicates that all
/// Flexvolumes may be used. This parameter is effective only when the
/// usage of the Flexvolumes is allowed in the "Volumes" field.</param>
/// <param name="allowedHostPaths">is a white list of allowed host
/// paths. Empty indicates that all host paths may be used.</param>
/// <param name="defaultAddCapabilities">DefaultAddCapabilities is the
/// default set of capabilities that will be added to the container
/// unless the pod spec specifically drops the capability. You may not
/// list a capabiility in both DefaultAddCapabilities and
/// RequiredDropCapabilities.</param>
/// list a capability in both DefaultAddCapabilities and
/// RequiredDropCapabilities. Capabilities added here are implicitly
/// allowed, and need not be included in the AllowedCapabilities
/// list.</param>
/// <param
/// name="defaultAllowPrivilegeEscalation">DefaultAllowPrivilegeEscalation
/// controls the default setting for whether a process can gain more
@@ -79,10 +85,11 @@ namespace k8s.Models
/// are required to be dropped and cannot be added.</param>
/// <param name="volumes">volumes is a white list of allowed volume
/// plugins. Empty indicates that all plugins may be used.</param>
public V1beta1PodSecurityPolicySpec(V1beta1FSGroupStrategyOptions fsGroup, V1beta1RunAsUserStrategyOptions runAsUser, V1beta1SELinuxStrategyOptions seLinux, V1beta1SupplementalGroupsStrategyOptions supplementalGroups, bool? allowPrivilegeEscalation = default(bool?), IList<string> allowedCapabilities = default(IList<string>), IList<V1beta1AllowedHostPath> allowedHostPaths = default(IList<V1beta1AllowedHostPath>), IList<string> defaultAddCapabilities = default(IList<string>), bool? defaultAllowPrivilegeEscalation = default(bool?), bool? hostIPC = default(bool?), bool? hostNetwork = default(bool?), bool? hostPID = default(bool?), IList<V1beta1HostPortRange> hostPorts = default(IList<V1beta1HostPortRange>), bool? privileged = default(bool?), bool? readOnlyRootFilesystem = default(bool?), IList<string> requiredDropCapabilities = default(IList<string>), IList<string> volumes = default(IList<string>))
public V1beta1PodSecurityPolicySpec(V1beta1FSGroupStrategyOptions fsGroup, V1beta1RunAsUserStrategyOptions runAsUser, V1beta1SELinuxStrategyOptions seLinux, V1beta1SupplementalGroupsStrategyOptions supplementalGroups, bool? allowPrivilegeEscalation = default(bool?), IList<string> allowedCapabilities = default(IList<string>), IList<V1beta1AllowedFlexVolume> allowedFlexVolumes = default(IList<V1beta1AllowedFlexVolume>), IList<V1beta1AllowedHostPath> allowedHostPaths = default(IList<V1beta1AllowedHostPath>), IList<string> defaultAddCapabilities = default(IList<string>), bool? defaultAllowPrivilegeEscalation = default(bool?), bool? hostIPC = default(bool?), bool? hostNetwork = default(bool?), bool? hostPID = default(bool?), IList<V1beta1HostPortRange> hostPorts = default(IList<V1beta1HostPortRange>), bool? privileged = default(bool?), bool? readOnlyRootFilesystem = default(bool?), IList<string> requiredDropCapabilities = default(IList<string>), IList<string> volumes = default(IList<string>))
{
AllowPrivilegeEscalation = allowPrivilegeEscalation;
AllowedCapabilities = allowedCapabilities;
AllowedFlexVolumes = allowedFlexVolumes;
AllowedHostPaths = allowedHostPaths;
DefaultAddCapabilities = defaultAddCapabilities;
DefaultAllowPrivilegeEscalation = defaultAllowPrivilegeEscalation;
@@ -124,6 +131,15 @@ namespace k8s.Models
[JsonProperty(PropertyName = "allowedCapabilities")]
public IList<string> AllowedCapabilities { get; set; }
/// <summary>
/// Gets or sets allowedFlexVolumes is a whitelist of allowed
/// Flexvolumes. Empty or nil indicates that all Flexvolumes may be
/// used. This parameter is effective only when the usage of the
/// Flexvolumes is allowed in the "Volumes" field.
/// </summary>
[JsonProperty(PropertyName = "allowedFlexVolumes")]
public IList<V1beta1AllowedFlexVolume> AllowedFlexVolumes { get; set; }
/// <summary>
/// Gets or sets is a white list of allowed host paths. Empty indicates
/// that all host paths may be used.
@@ -135,8 +151,9 @@ namespace k8s.Models
/// Gets or sets defaultAddCapabilities is the default set of
/// capabilities that will be added to the container unless the pod
/// spec specifically drops the capability. You may not list a
/// capabiility in both DefaultAddCapabilities and
/// RequiredDropCapabilities.
/// capability in both DefaultAddCapabilities and
/// RequiredDropCapabilities. Capabilities added here are implicitly
/// allowed, and need not be included in the AllowedCapabilities list.
/// </summary>
[JsonProperty(PropertyName = "defaultAddCapabilities")]
public IList<string> DefaultAddCapabilities { get; set; }
@@ -262,9 +279,9 @@ namespace k8s.Models
{
throw new ValidationException(ValidationRules.CannotBeNull, "SupplementalGroups");
}
if (HostPorts != null)
if (AllowedFlexVolumes != null)
{
foreach (var element in HostPorts)
foreach (var element in AllowedFlexVolumes)
{
if (element != null)
{
@@ -272,6 +289,16 @@ namespace k8s.Models
}
}
}
if (HostPorts != null)
{
foreach (var element1 in HostPorts)
{
if (element1 != null)
{
element1.Validate();
}
}
}
if (RunAsUser != null)
{
RunAsUser.Validate();

View File

@@ -48,7 +48,9 @@ namespace k8s.Models
/// of names that the rule applies to. An empty set means that
/// everything is allowed.</param>
/// <param name="resources">Resources is a list of resources this rule
/// applies to. ResourceAll represents all resources.</param>
/// applies to. '*' represents all resources in the specified
/// apiGroups. '*/foo' represents the subresource 'foo' for all
/// resources in the specified apiGroups.</param>
public V1beta1PolicyRule(IList<string> verbs, IList<string> apiGroups = default(IList<string>), IList<string> nonResourceURLs = default(IList<string>), IList<string> resourceNames = default(IList<string>), IList<string> resources = default(IList<string>))
{
ApiGroups = apiGroups;
@@ -95,7 +97,9 @@ namespace k8s.Models
/// <summary>
/// Gets or sets resources is a list of resources this rule applies to.
/// ResourceAll represents all resources.
/// '*' represents all resources in the specified apiGroups. '*/foo'
/// represents the subresource 'foo' for all resources in the specified
/// apiGroups.
/// </summary>
[JsonProperty(PropertyName = "resources")]
public IList<string> Resources { get; set; }

Some files were not shown because too many files have changed in this diff Show More