7222467df3
This change ensures that catalogue CRs (i.e. networking, versions) are validated when running validate_docs script. Also fixes: * problem encountered with the creation of the ironic-vars ConfigMap when a non-string data type was used as the replacement target value. * amends VersionsCatalogue schema to allow an optional 'ipam-manager' object in capi_images, necessitated by a change to the capm3 function[0]. [0] https://review.opendev.org/c/airship/airshipctl/+/780297 Closes: #476 Change-Id: Idd05eb046e411b757b7d4f7b21a9b89b6cc51bb6
95 lines
3.0 KiB
YAML
95 lines
3.0 KiB
YAML
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: versionscatalogues.airshipit.org
|
|
spec:
|
|
group: airshipit.org
|
|
names:
|
|
kind: VersionsCatalogue
|
|
plural: versionscatalogues
|
|
singular: versionscatalogue
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
served: true
|
|
storage: true
|
|
schema:
|
|
openAPIV3Schema:
|
|
type: object
|
|
properties:
|
|
spec:
|
|
type: object
|
|
properties:
|
|
helm_repositories:
|
|
type: object
|
|
additionalProperties:
|
|
type: object
|
|
properties:
|
|
url:
|
|
type: string
|
|
charts:
|
|
type: object
|
|
additionalProperties:
|
|
type: object
|
|
properties:
|
|
chart:
|
|
type: string
|
|
version:
|
|
type: string
|
|
files:
|
|
type: object
|
|
additionalProperties: # file group
|
|
type: object
|
|
additionalProperties: # file
|
|
type: object
|
|
properties:
|
|
url:
|
|
type: string
|
|
checksum:
|
|
type: string
|
|
capi_images:
|
|
type: object
|
|
additionalProperties:
|
|
type: object
|
|
required: [manager, auth_proxy]
|
|
properties:
|
|
manager:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
tag:
|
|
type: string
|
|
auth_proxy:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
tag:
|
|
type: string
|
|
ipam-manager:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
tag:
|
|
type: string
|
|
images:
|
|
type: object
|
|
additionalProperties: # image groups
|
|
type: object
|
|
additionalProperties: # Deployments in image group
|
|
type: object
|
|
additionalProperties: # images in Deployment
|
|
type: object
|
|
properties:
|
|
image:
|
|
type: string
|
|
# TODO(mfuller): add fields for 'tag' and 'hash' which
|
|
# will require a function in the replacement transformer
|
|
# to properly concatenate the complete image string, i.e.
|
|
# image/name:tag and image/name@sha256:hash
|
|
kubernetes:
|
|
type: string
|
|
|