219b29f1a6
* add documentation for gcp provider (capg) * add manifests for gcp provider (capg) * add cluster templates for control plane and workers * add site definition to use gcp provider (capg) with control plane and workers Zuul Gate Scripts: https://review.opendev.org/#/c/749165/ Change-Id: I3ea07fcafe49fc2698d9d961222550c45b40cd66
196 lines
8.8 KiB
YAML
196 lines
8.8 KiB
YAML
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.2.6
|
|
creationTimestamp: null
|
|
name: gcpmachines.infrastructure.cluster.x-k8s.io
|
|
spec:
|
|
group: infrastructure.cluster.x-k8s.io
|
|
names:
|
|
categories:
|
|
- cluster-api
|
|
kind: GCPMachine
|
|
listKind: GCPMachineList
|
|
plural: gcpmachines
|
|
singular: gcpmachine
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- description: Cluster to which this GCPMachine belongs
|
|
jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name
|
|
name: Cluster
|
|
type: string
|
|
- description: GCE instance state
|
|
jsonPath: .status.instanceState
|
|
name: State
|
|
type: string
|
|
- description: Machine ready status
|
|
jsonPath: .status.ready
|
|
name: Ready
|
|
type: string
|
|
- description: GCE instance ID
|
|
jsonPath: .spec.providerID
|
|
name: InstanceID
|
|
type: string
|
|
- description: Machine object which owns with this GCPMachine
|
|
jsonPath: .metadata.ownerReferences[?(@.kind=="Machine")].name
|
|
name: Machine
|
|
type: string
|
|
name: v1alpha3
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: GCPMachine is the Schema for the gcpmachines API
|
|
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/sig-architecture/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/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: GCPMachineSpec defines the desired state of GCPMachine
|
|
properties:
|
|
additionalLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: AdditionalLabels is an optional set of tags to add to
|
|
an instance, in addition to the ones added by default by the GCP
|
|
provider. If both the GCPCluster and the GCPMachine specify the
|
|
same tag name with different values, the GCPMachine's value takes
|
|
precedence.
|
|
type: object
|
|
additionalNetworkTags:
|
|
description: AdditionalNetworkTags is a list of network tags that
|
|
should be applied to the instance. These tags are set in addition
|
|
to any network tags defined at the cluster level or in the actuator.
|
|
items:
|
|
type: string
|
|
type: array
|
|
image:
|
|
description: Image is the full reference to a valid image to be used
|
|
for this machine. Takes precedence over ImageFamily.
|
|
type: string
|
|
imageFamily:
|
|
description: ImageFamily is the full reference to a valid image family
|
|
to be used for this machine.
|
|
type: string
|
|
instanceType:
|
|
description: 'InstanceType is the type of instance to create. Example:
|
|
n1.standard-2'
|
|
type: string
|
|
providerID:
|
|
description: ProviderID is the unique identifier as specified by the
|
|
cloud provider.
|
|
type: string
|
|
publicIP:
|
|
description: PublicIP specifies whether the instance should get a
|
|
public IP. Set this to true if you don't have a NAT instances or
|
|
Cloud Nat setup.
|
|
type: boolean
|
|
rootDeviceSize:
|
|
description: RootDeviceSize is the size of the root volume in GB.
|
|
Defaults to 30.
|
|
format: int64
|
|
type: integer
|
|
serviceAccounts:
|
|
description: 'ServiceAccount specifies the service account email and
|
|
which scopes to assign to the machine. Defaults to: email: "default",
|
|
scope: []{compute.CloudPlatformScope}'
|
|
properties:
|
|
email:
|
|
description: 'Email: Email address of the service account.'
|
|
type: string
|
|
scopes:
|
|
description: 'Scopes: The list of scopes to be made available
|
|
for this service account.'
|
|
items:
|
|
type: string
|
|
type: array
|
|
type: object
|
|
subnet:
|
|
description: Subnet is a reference to the subnetwork to use for this
|
|
instance. If not specified, the first subnetwork retrieved from
|
|
the Cluster Region and Network is picked.
|
|
type: string
|
|
required:
|
|
- instanceType
|
|
type: object
|
|
status:
|
|
description: GCPMachineStatus defines the observed state of GCPMachine
|
|
properties:
|
|
addresses:
|
|
description: Addresses contains the GCP instance associated addresses.
|
|
items:
|
|
description: NodeAddress contains information for the node's address.
|
|
properties:
|
|
address:
|
|
description: The node address.
|
|
type: string
|
|
type:
|
|
description: Node address type, one of Hostname, ExternalIP
|
|
or InternalIP.
|
|
type: string
|
|
required:
|
|
- address
|
|
- type
|
|
type: object
|
|
type: array
|
|
failureMessage:
|
|
description: "FailureMessage 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. \n 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. \n 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
|
|
failureReason:
|
|
description: "FailureReason 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. \n 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. \n 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
|
|
instanceState:
|
|
description: InstanceStatus is the status of the GCP instance for
|
|
this machine.
|
|
type: string
|
|
ready:
|
|
description: Ready is true when the provider resource is ready.
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|