Matthew Fuller 2af3485655 Fix versions-treasuremap base catalogue
Converts the base versions-treasuremap catalogue back to a
VersionsCatalogue CR and ensures it conforms to the defined
CRD schema. Updates the airshipctl reference to pull in schema
changes made in the airshipctl repo[0].

Also adds replacements for the following functions:
- dex-aio
- rook-operator

[0] https://review.opendev.org/c/airship/airshipctl/+/784620

Closes: #112
Change-Id: Ia755f07f6dc8a9344f0ed640a0f758af9d5368e8
2021-04-27 00:26:02 +00:00

169 lines
4.4 KiB
YAML

apiVersion: airshipit.org/v1alpha1
kind: ReplacementTransformer
metadata:
name: dex-aio-versions-replacements
annotations:
config.kubernetes.io/function: |-
container:
image: quay.io/airshipit/replacement-transformer:latest
replacements:
# Helm repository
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.helm_repositories.dex-aio}"
target:
objref:
kind: HelmRepository
name: dex-helm-repo
fieldrefs: ["{.spec}"]
# chart
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.charts.dex-aio.chart}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.chart.spec.chart}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.charts.dex-aio.version}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.chart.version}"]
# images
# dex image components
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.dex.tag}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.dex.tag}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.dex.name}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.dex.name}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.dex.repository}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.dex.repo}"]
# nginx image components
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.nginx.tag}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.nginx.tag}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.nginx.name}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.nginx.name}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.nginx.repository}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.nginx.repo}"]
# authenticator
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.authenticator.tag}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.authenticator.tag}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.authenticator.name}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.authenticator.name}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.authenticator.repository}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.authenticator.repo}"]
# tls_init
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.tls_init.tag}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.tls_init.tag}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.tls_init.name}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.tls_init.name}"]
- source:
objref:
kind: VersionsCatalogue
name: versions-treasuremap
fieldref: "{.spec.image_components.dex-aio.tls_init.repository}"
target:
objref:
kind: HelmRelease
name: dex-aio
fieldrefs: ["{.spec.values.images.applications.tls_init.repo}"]