• Русский
  • DCSMachineTemplate [infrastructure.cluster.x-k8s.io/v1beta1]

    infrastructure.cluster.x-k8s.io group

    DCSMachineTemplate is the Schema for the dcsmachinetemplates API.

    v1beta1 version
    spec object

    DCSMachineTemplateSpec defines the desired state of DCSMachineTemplate.

    template object required
    metadata object

    ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. This is a copy of customizable fields from metav1.ObjectMeta.

    ObjectMeta is embedded in Machine.Spec, MachineDeployment.Template and MachineSet.Template, which are not top-level Kubernetes objects. Given that metav1.ObjectMeta has lots of special cases and read-only fields which end up in the generated CRD validation, having it as a subset simplifies the API and some issues that can impact user experience.

    During the upgrade to controller-tools@v2 for v1alpha2, we noticed a failure would occur running Cluster API test suite against the new CRDs, specifically spec.metadata.creationTimestamp in body must be of type string: "null". The investigation showed that controller-tools@v2 behaves differently than its previous version when handling types from metav1 package.

    In more details, we found that embedded (non-top level) types that embedded metav1.ObjectMeta had validation properties, including for creationTimestamp (metav1.Time). The metav1.Time type specifies a custom json marshaller that, when IsZero() is true, returns null which breaks validation because the field isn't marked as nullable.

    In future versions, controller-tools@v2 might allow overriding the type and validation for embedded types. When that happens, this hack should be revisited.

    annotations object

    annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations

    labels object

    labels is a map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels

    spec object required

    DCSMachineSpec defines the desired state of DCSMachine.

    ipHostPoolRef object required

    LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.

    name string

    Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    location object
    name string
    type string required
    urn string
    providerID string
    resource object
    name string
    type string required
    urn string
    vmConfig object
    dcsMachineCpuSpec object required
    quantity integer required
    dcsMachineDiskSpec []object
    datastoreClusterName string
    datastoreName string
    datastoreUrn string
    format string
    mountOptions []string
    options []string
    path string
    quantity integer required
    systemVolume boolean
    wipeFilesystem boolean
    dcsMachineMemorySpec object required
    quantity integer required
    dvSwitchName string
    portGroupName string
    portGroupUrn string
    vmTemplateName string required
    vmUrn string
    status object

    DCSMachineTemplateStatus defines the observed state of DCSMachineTemplate.