config/crds/bundle_v1alpha1_componentlist.yaml (95 lines of code) (raw):
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
creationTimestamp: null
labels:
controller-tools.k8s.io: "1.0"
name: componentlists.bundle.gke.io
spec:
group: bundle.gke.io
names:
kind: ComponentList
plural: componentlists
scope: Namespaced
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
items:
items:
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:
description: The specification object for the Component.
properties:
appVersion:
description: AppVersion specifies the application version that
the component provides and should have the form X.Y or X.Y.Z
(Major.Minor.Patch). The AppVersion will frequently be related
to the version of the container image used by the application
and need not be updated when a component Version field is updated,
unless the application contract changes. For example, for an
Etcd component, the version field might be something like 10.9.8,
but the app version would probalby be something like 3.3.10,
representing the version of Etcd application. In order for
component A to depend on component B, component B must specify
a Requirements object with an AppVersion. Eliding the AppVersion
prevents other components from depending on your component.
type: string
componentName:
description: ComponentName is the canonical name of this component.
For example, 'etcd' or 'kube-proxy'. It must have the same naming
properties as the Metadata.Name to allow for constructing the
name. See more at k8s.io/docs/concepts/overview/working-with-objects/names/
type: string
objects:
description: Structured Kubenetes objects that run as part of
this app, whether on the master, on the nodes, or in some other
fashio. These Kubernetes objects are inlined and must be YAML/JSON
compatible. Each must have `apiVersion`, `kind`, and `metadata`. This
is essentially equivalent to the Kubernetes `Unstructured` type.
items:
type: object
type: array
version:
description: Version is the required version for this component.
The version should be a SemVer 2 string (see https://semver.org/)
of the form X.Y.Z (Major.Minor.Patch). A major-version changes
should indicate breaking changes, minor-versions should indicate
backwards compatible features, and patch changes should indicate
backwards compatible. If there are any changes to the component,
then the version string must be incremented.
type: string
type: object
type: object
type: array
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
version: v1alpha1
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []