Sean Eagan 299b2833b2 Pin krm function calls
This pins krm function calls to version `v2` which represents [0] [1] the latest
2.x.x semantic version. If we need to make breaking changes to any krm functions,
that can now be done by incrementing their major version and thus not
breaking these references.

[0]: https://review.opendev.org/c/airship/airshipctl/+/762924
[1]: https://review.opendev.org/c/airship/airshipctl/+/780875

Closes: #419
Change-Id: I6cf6519511c77da6cac7e46a6b56ea338bcf150c
2021-03-24 09:28:54 -05:00

105 lines
3.4 KiB
YAML

# These rules inject host-specific information from the `host-catalogue`
# into the hostgenerator-m3 function's Template plugin config.
apiVersion: airshipit.org/v1alpha1
kind: ReplacementTransformer
metadata:
name: baremetal-operator-versions-replacements
annotations:
config.kubernetes.io/function: |-
container:
image: quay.io/airshipit/replacement-transformer:v2
replacements:
# Container versions for the ironic Deployment
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.ironic.init_bootstrap.image}"
target:
objref:
kind: Deployment
name: ironic
fieldrefs: ["{.spec.template.spec.initContainers[?(.name == 'init-bootstrap')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.ironic.init_images.image}"
target:
objref:
kind: Deployment
name: ironic
fieldrefs: ["{.spec.template.spec.initContainers[?(.name == 'init-images')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.ironic.dnsmasq.image}"
target:
objref:
kind: Deployment
name: ironic
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'dnsmasq')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.ironic.httpd.image}"
target:
objref:
kind: Deployment
name: ironic
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'httpd')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.ironic.ironic.image}"
target:
objref:
kind: Deployment
name: ironic
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'ironic')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.ironic.ironic_inspector.image}"
target:
objref:
kind: Deployment
name: ironic
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'ironic-inspector')].image}"]
# Container versions for the metal3-baremetal-operator Deployment
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.metal3_baremetal_operator.baremetal_operator.image}"
target:
objref:
kind: Deployment
name: metal3-baremetal-operator
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'baremetal-operator')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.metal3_baremetal_operator.ironic_proxy.image}"
target:
objref:
kind: Deployment
name: metal3-baremetal-operator
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'ironic-proxy')].image}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-airshipctl
fieldref: "{.spec.images.baremetal_operator.metal3_baremetal_operator.ironic_inspector_proxy.image}"
target:
objref:
kind: Deployment
name: metal3-baremetal-operator
fieldrefs: ["{.spec.template.spec.containers[?(.name == 'ironic-inspector-proxy')].image}"]