apiVersion: airshipit.org/v1alpha1 kind: ReplacementTransformer metadata: name: kube-prometheus-stack-versions-replacements annotations: config.kubernetes.io/function: |- container: image: localhost/replacement-transformer replacements: # Helm Repo - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.helm_repositories.prometheus_community.url}" target: objref: kind: HelmRepository name: prometheus-community fieldrefs: ["{.spec.url}"] # Chart - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.charts.kube_prometheus_stack.chart}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.chart.spec.chart}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.charts.kube_prometheus_stack.version}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.chart.spec.version}"] # Images - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.admission_webhooks}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheusOperator.admissionWebhooks.patch.image}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.alertmanager}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.alertmanager.alertmanagerSpec.image}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.kube_state_metrics}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.kube-state-metrics.image}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.prometheus}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheus.prometheusSpec.image}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.prometheus_config_reloader}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheusOperator.prometheusConfigReloaderImage}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.prometheus_node_exporter}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheus-node-exporter.image}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.images.kube_prometheus_stack.prometheus_operator.alertmanagerDefaultBaseImage.image}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheusOperator.alertmanagerDefaultBaseImage}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.images.kube_prometheus_stack.prometheus_operator.prometheusDefaultBaseImage.image}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheusOperator.prometheusDefaultBaseImage}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.image_components.kube_prometheus_stack.prometheus_operator}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheusOperator.image}"] - source: objref: kind: VersionsCatalogue name: versions-treasuremap fieldref: "{.spec.images.kube_prometheus_stack.thanos.thanos.image}" target: objref: kind: HelmRelease name: kube-prometheus-stack fieldrefs: ["{.spec.values.prometheus.prometheusSpec.thanos.image}"]