-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Vince Prignano <[email protected]>
- Loading branch information
Showing
22 changed files
with
2,178 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,185 @@ | ||
apiVersion: apiextensions.k8s.io/v1beta1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
creationTimestamp: null | ||
labels: | ||
controller-tools.k8s.io: "1.0" | ||
name: machines.cluster.k8s.io | ||
spec: | ||
additionalPrinterColumns: | ||
- JSONPath: .spec.providerID | ||
description: Provider ID | ||
name: ProviderID | ||
type: string | ||
- JSONPath: .status.phase | ||
description: Machine status such as Terminating/Pending/Running/Failed etc | ||
name: Phase | ||
type: string | ||
- JSONPath: .status.nodeRef.name | ||
description: Node name associated with this machine | ||
name: NodeName | ||
priority: 1 | ||
type: string | ||
group: cluster.k8s.io | ||
names: | ||
kind: Machine | ||
plural: machines | ||
shortNames: | ||
- ma | ||
scope: Namespaced | ||
subresources: | ||
status: {} | ||
validation: | ||
openAPIV3Schema: | ||
properties: | ||
apiVersion: | ||
description: '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' | ||
type: string | ||
kind: | ||
description: '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' | ||
type: string | ||
metadata: | ||
type: object | ||
spec: | ||
properties: | ||
bootstrap: | ||
description: Bootstrap is a reference to a local struct which encapsulates | ||
fields to configure the Machine’s bootstrapping mechanism. | ||
type: object | ||
configSource: | ||
description: ConfigSource is used to populate in the associated Node | ||
for dynamic kubelet config. This field already exists in Node, so | ||
any updates to it in the Machine spec will be automatically copied | ||
to the linked NodeRef from the status. The rest of dynamic kubelet | ||
config support should then work as-is. | ||
type: object | ||
infrastructureRef: | ||
description: InfrastructureRef is a required reference to a custom resource | ||
offered by an infrastructure provider. | ||
type: object | ||
metadata: | ||
description: ObjectMeta will autopopulate the Node created. Use this | ||
to indicate what labels, annotations, name prefix, etc., should be | ||
used when creating the Node. | ||
type: object | ||
providerID: | ||
description: ProviderID is the identification ID of the machine provided | ||
by the provider. This field must match the provider ID as seen on | ||
the node object corresponding to this machine. This field is required | ||
by higher level consumers of cluster-api. Example use case is cluster | ||
autoscaler with cluster-api as provider. Clean-up logic in the autoscaler | ||
compares machines to nodes to find out machines at provider which | ||
could not get registered as Kubernetes nodes. With cluster-api as | ||
a generic out-of-tree provider for autoscaler, this field is required | ||
by autoscaler to be able to have a provider view of the list of machines. | ||
Another list of nodes is queried from the k8s apiserver and then a | ||
comparison is done to find out unregistered machines and are marked | ||
for delete. This field will be set by the actuators and consumed by | ||
higher level entities like autoscaler that will be interfacing with | ||
cluster-api as generic provider. | ||
type: string | ||
taints: | ||
description: The list of the taints to be applied to the corresponding | ||
Node in additive manner. This list will not overwrite any other taints | ||
added to the Node on an ongoing basis by other entities. These taints | ||
should be actively reconciled e.g. if you ask the machine controller | ||
to apply a taint and then manually remove the taint the machine controller | ||
will put it back) but not have the machine controller remove any taints | ||
items: | ||
type: object | ||
type: array | ||
version: | ||
description: Version defines the desired Kubernetes version. This field | ||
is meant to be optionally used by bootstrap providers. | ||
type: string | ||
required: | ||
- bootstrap | ||
- infrastructureRef | ||
type: object | ||
status: | ||
properties: | ||
addresses: | ||
description: Addresses is a list of addresses assigned to the machine. | ||
Queried from cloud provider, if available. | ||
items: | ||
type: object | ||
type: array | ||
bootstrap: | ||
description: Bootstrap is the state of the bootstrap provider. | ||
type: string | ||
conditions: | ||
description: 'Conditions lists the conditions synced from the node conditions | ||
of the corresponding node-object. Machine-controller is responsible | ||
for keeping conditions up-to-date. MachineSet controller will be taking | ||
these conditions as a signal to decide if machine is healthy or needs | ||
to be replaced. Refer: https://kubernetes.io/docs/concepts/architecture/nodes/#condition' | ||
items: | ||
type: object | ||
type: array | ||
errorMessage: | ||
description: ErrorMessage will be set in the event that there is a terminal | ||
problem reconciling the Machine and will contain a more verbose string | ||
suitable for logging and human consumption. This field should not | ||
be set for transitive errors that a controller faces that are expected | ||
to be fixed automatically over time (like service outages), but instead | ||
indicate that something is fundamentally wrong with the Machine's | ||
spec or the configuration of the controller, and that manual intervention | ||
is required. Examples of terminal errors would be invalid combinations | ||
of settings in the spec, values that are unsupported by the controller, | ||
or the responsible controller itself being critically misconfigured. Any | ||
transient errors that occur during the reconciliation of Machines | ||
can be added as events to the Machine object and/or logged in the | ||
controller's output. | ||
type: string | ||
errorReason: | ||
description: ErrorReason will be set in the event that there is a terminal | ||
problem reconciling the Machine and will contain a succinct value | ||
suitable for machine interpretation. This field should not be set | ||
for transitive errors that a controller faces that are expected to | ||
be fixed automatically over time (like service outages), but instead | ||
indicate that something is fundamentally wrong with the Machine's | ||
spec or the configuration of the controller, and that manual intervention | ||
is required. Examples of terminal errors would be invalid combinations | ||
of settings in the spec, values that are unsupported by the controller, | ||
or the responsible controller itself being critically misconfigured. Any | ||
transient errors that occur during the reconciliation of Machines | ||
can be added as events to the Machine object and/or logged in the | ||
controller's output. | ||
type: string | ||
infrastructure: | ||
description: Infrastructure is the state of the infrastructure provider. | ||
type: string | ||
lastUpdated: | ||
description: LastUpdated identifies when this status was last observed. | ||
format: date-time | ||
type: string | ||
nodeRef: | ||
description: NodeRef will point to the corresponding Node if it exists. | ||
type: object | ||
phase: | ||
description: Phase represents the current phase of machine actuation. | ||
E.g. Pending, Running, Terminating, Failed etc. | ||
type: string | ||
providerStatus: | ||
description: ProviderStatus details a Provider-specific status. It is | ||
recommended that providers maintain their own versioned API types | ||
that should be serialized/deserialized from this field. | ||
type: object | ||
version: | ||
description: Version specifies the current version of Kubernetes running | ||
on the corresponding Node. This is meant to be a means of bubbling | ||
up status from the Node to the Machine. It is entirely optional, but | ||
useful for end-user UX if it’s present. | ||
type: string | ||
type: object | ||
version: v1alpha2 | ||
status: | ||
acceptedNames: | ||
kind: "" | ||
plural: "" | ||
conditions: [] | ||
storedVersions: [] |
Oops, something went wrong.