/// <summary> /// Initializes a new instance of the <see cref="V1Event" /> 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="Count">The number of times this event has occurred..</param> /// <param name="FirstTimestamp">The time at which the event was first recorded. (Time of server receipt is in TypeMeta.).</param> /// <param name="InvolvedObject">The object that this event is about. (required).</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="LastTimestamp">The time at which the most recent occurrence of this event was recorded..</param> /// <param name="Message">A human-readable description of the status of this operation..</param> /// <param name="Metadata">Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata (required).</param> /// <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="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(string ApiVersion = default(string), int?Count = default(int?), DateTime?FirstTimestamp = default(DateTime?), V1ObjectReference InvolvedObject = default(V1ObjectReference), string Kind = default(string), DateTime?LastTimestamp = default(DateTime?), string Message = default(string), V1ObjectMeta Metadata = default(V1ObjectMeta), string Reason = default(string), V1EventSource Source = default(V1EventSource), string Type = default(string)) { // to ensure "InvolvedObject" is required (not null) if (InvolvedObject == null) { throw new InvalidDataException("InvolvedObject is a required property for V1Event and cannot be null"); } else { this.InvolvedObject = InvolvedObject; } // to ensure "Metadata" is required (not null) if (Metadata == null) { throw new InvalidDataException("Metadata is a required property for V1Event and cannot be null"); } else { this.Metadata = Metadata; } this.ApiVersion = ApiVersion; this.Count = Count; this.FirstTimestamp = FirstTimestamp; this.Kind = Kind; this.LastTimestamp = LastTimestamp; this.Message = Message; this.Reason = Reason; this.Source = Source; this.Type = Type; }
/// <summary> /// Initializes a new instance of the <see cref="V1EndpointAddress" /> class. /// </summary> /// <param name="Hostname">The Hostname of this endpoint.</param> /// <param name="Ip">The IP of this endpoint. May not be loopback (127.0.0.0/8), link-local (169.254.0.0/16), or link-local multicast ((224.0.0.0/24). IPv6 is also accepted but not fully supported on all platforms. Also, certain kubernetes components, like kube-proxy, are not IPv6 ready. (required).</param> /// <param name="NodeName">Optional: Node hosting this endpoint. This can be used to determine endpoints local to a node..</param> /// <param name="TargetRef">Reference to object providing the endpoint..</param> public V1EndpointAddress(string Hostname = default(string), string Ip = default(string), string NodeName = default(string), V1ObjectReference TargetRef = default(V1ObjectReference)) { // to ensure "Ip" is required (not null) if (Ip == null) { throw new InvalidDataException("Ip is a required property for V1EndpointAddress and cannot be null"); } else { this.Ip = Ip; } this.Hostname = Hostname; this.NodeName = NodeName; this.TargetRef = TargetRef; }
/// <summary> /// Initializes a new instance of the <see cref="V1Binding" /> 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="Target">The target object that you want to bind to the standard object. (required).</param> public V1Binding(string ApiVersion = default(string), string Kind = default(string), V1ObjectMeta Metadata = default(V1ObjectMeta), V1ObjectReference Target = default(V1ObjectReference)) { // to ensure "Target" is required (not null) if (Target == null) { throw new InvalidDataException("Target is a required property for V1Binding and cannot be null"); } else { this.Target = Target; } this.ApiVersion = ApiVersion; this.Kind = Kind; this.Metadata = Metadata; }
/// <summary> /// Initializes a new instance of the <see cref="V1StorageOSPersistentVolumeSource" /> class. /// </summary> /// <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="_ReadOnly">Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts..</param> /// <param name="SecretRef">SecretRef specifies the secret to use for obtaining the StorageOS API credentials. If not specified, default values will be attempted..</param> /// <param name="VolumeName">VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within a namespace..</param> /// <param name="VolumeNamespace">VolumeNamespace specifies the scope of the volume within StorageOS. If no namespace is specified then the Pod's namespace will be used. This allows the Kubernetes name scoping to be mirrored within StorageOS for tighter integration. Set VolumeName to any name to override the default behaviour. Set to \"default\" if you are not using namespaces within StorageOS. Namespaces that do not pre-exist within StorageOS will be created..</param> public V1StorageOSPersistentVolumeSource(string FsType = default(string), bool?_ReadOnly = default(bool?), V1ObjectReference SecretRef = default(V1ObjectReference), string VolumeName = default(string), string VolumeNamespace = default(string)) { this.FsType = FsType; this._ReadOnly = _ReadOnly; this.SecretRef = SecretRef; this.VolumeName = VolumeName; this.VolumeNamespace = VolumeNamespace; }
/// <summary> /// Initializes a new instance of the <see cref="V1PersistentVolumeSpec" /> class. /// </summary> /// <param name="AccessModes">AccessModes contains all ways the volume can be mounted. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes.</param> /// <param name="AwsElasticBlockStore">AWSElasticBlockStore represents an AWS Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore.</param> /// <param name="AzureDisk">AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod..</param> /// <param name="AzureFile">AzureFile represents an Azure File Service mount on the host and bind mount to the pod..</param> /// <param name="Capacity">A description of the persistent volume's resources and capacity. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity.</param> /// <param name="Cephfs">CephFS represents a Ceph FS mount on the host that shares a pod's lifetime.</param> /// <param name="Cinder">Cinder represents a cinder volume attached and mounted on kubelets host machine More info: https://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md.</param> /// <param name="ClaimRef">ClaimRef is part of a bi-directional binding between PersistentVolume and PersistentVolumeClaim. Expected to be 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="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> /// <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> /// <param name="GcePersistentDisk">GCEPersistentDisk represents a GCE Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk.</param> /// <param name="Glusterfs">Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: https://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md.</param> /// <param name="HostPath">HostPath represents a directory on the host. Provisioned by a developer or tester. This is useful for single-node development and testing only! On-host storage is not supported in any way and WILL NOT WORK in a multi-node cluster. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath.</param> /// <param name="Iscsi">ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin..</param> /// <param name="Local">Local represents directly-attached storage with node affinity.</param> /// <param name="Nfs">NFS represents an NFS mount on the host. Provisioned by an admin. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs.</param> /// <param name="PersistentVolumeReclaimPolicy">What happens to a persistent volume when released from its claim. Valid options are Retain (default) and Recycle. Recycling must be supported by the volume plugin underlying this persistent volume. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#reclaiming.</param> /// <param name="PhotonPersistentDisk">PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine.</param> /// <param name="PortworxVolume">PortworxVolume represents a portworx volume attached and mounted on kubelets host machine.</param> /// <param name="Quobyte">Quobyte represents a Quobyte mount on the host that shares a pod's lifetime.</param> /// <param name="Rbd">RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md.</param> /// <param name="ScaleIO">ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes..</param> /// <param name="StorageClassName">Name of StorageClass to which this persistent volume belongs. Empty value means that this volume does not belong to any StorageClass..</param> /// <param name="Storageos">StorageOS represents a StorageOS volume 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="VsphereVolume">VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine.</param> public V1PersistentVolumeSpec(List <string> AccessModes = default(List <string>), V1AWSElasticBlockStoreVolumeSource AwsElasticBlockStore = default(V1AWSElasticBlockStoreVolumeSource), V1AzureDiskVolumeSource AzureDisk = default(V1AzureDiskVolumeSource), V1AzureFileVolumeSource AzureFile = default(V1AzureFileVolumeSource), Dictionary <string, string> Capacity = default(Dictionary <string, string>), V1CephFSVolumeSource Cephfs = default(V1CephFSVolumeSource), 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), V1NFSVolumeSource Nfs = default(V1NFSVolumeSource), string PersistentVolumeReclaimPolicy = default(string), V1PhotonPersistentDiskVolumeSource PhotonPersistentDisk = default(V1PhotonPersistentDiskVolumeSource), V1PortworxVolumeSource PortworxVolume = default(V1PortworxVolumeSource), V1QuobyteVolumeSource Quobyte = default(V1QuobyteVolumeSource), V1RBDVolumeSource Rbd = default(V1RBDVolumeSource), V1ScaleIOVolumeSource ScaleIO = default(V1ScaleIOVolumeSource), string StorageClassName = default(string), V1StorageOSPersistentVolumeSource Storageos = default(V1StorageOSPersistentVolumeSource), V1VsphereVirtualDiskVolumeSource VsphereVolume = default(V1VsphereVirtualDiskVolumeSource)) { this.AccessModes = AccessModes; this.AwsElasticBlockStore = AwsElasticBlockStore; this.AzureDisk = AzureDisk; this.AzureFile = AzureFile; this.Capacity = Capacity; this.Cephfs = Cephfs; this.Cinder = Cinder; this.ClaimRef = ClaimRef; this.Fc = Fc; this.FlexVolume = FlexVolume; this.Flocker = Flocker; this.GcePersistentDisk = GcePersistentDisk; this.Glusterfs = Glusterfs; this.HostPath = HostPath; this.Iscsi = Iscsi; this.Local = Local; this.Nfs = Nfs; this.PersistentVolumeReclaimPolicy = PersistentVolumeReclaimPolicy; this.PhotonPersistentDisk = PhotonPersistentDisk; this.PortworxVolume = PortworxVolume; this.Quobyte = Quobyte; this.Rbd = Rbd; this.ScaleIO = ScaleIO; this.StorageClassName = StorageClassName; this.Storageos = Storageos; this.VsphereVolume = VsphereVolume; }