Add atmosphere_image_overrides options

This is for ability to provide override values for atmosphere_images
diff --git a/.ansible-lint b/.ansible-lint
index 65e8cbd..7600462 100644
--- a/.ansible-lint
+++ b/.ansible-lint
@@ -5,7 +5,7 @@
   - charts
   - molecule
   - playbooks
-  - roles/defaults/defaults/main.ym
+  - roles/defaults/vars/main.yml
   - roles/kube_prometheus_stack/files/jsonnet
 
 warn_list:
diff --git a/Earthfile b/Earthfile
index efd12fa..197fc0d 100644
--- a/Earthfile
+++ b/Earthfile
@@ -60,10 +60,10 @@
 
 pin-images:
   FROM +build.venv.dev
-  COPY roles/defaults/defaults/main.yml /defaults.yml
+  COPY roles/defaults/vars/main.yml /defaults.yml
   COPY build/pin-images.py /usr/local/bin/pin-images
   RUN /usr/local/bin/pin-images /defaults.yml /pinned.yml
-  SAVE ARTIFACT /pinned.yml AS LOCAL roles/defaults/defaults/main.yml
+  SAVE ARTIFACT /pinned.yml AS LOCAL roles/defaults/vars/main.yml
 
 gh:
   FROM alpine:3
diff --git a/build/pin-images.py b/build/pin-images.py
index fd9b385..0f113ae 100755
--- a/build/pin-images.py
+++ b/build/pin-images.py
@@ -43,8 +43,8 @@
     yaml = YAML(typ="rt")
     data = yaml.load(args.src)
 
-    for image in data["atmosphere_images"].ca.items:
-        token = data["atmosphere_images"].ca.get(image, 2).value
+    for image in data["_atmosphere_images"].ca.items:
+        token = data["_atmosphere_images"].ca.get(image, 2).value
         if not token.startswith("# image-source: "):
             LOG.info("Skipping image %s", image)
             continue
@@ -53,7 +53,7 @@
         pinned_image = get_pinned_image(image_src)
 
         LOG.info("Pinning image %s from %s to %s", image, image_src, pinned_image)
-        data["atmosphere_images"][image] = pinned_image
+        data["_atmosphere_images"][image] = pinned_image
 
     yaml.dump(data, args.dst)
 
diff --git a/roles/defaults/defaults/main.yml b/roles/defaults/defaults/main.yml
index 585b800..1f62e11 100644
--- a/roles/defaults/defaults/main.yml
+++ b/roles/defaults/defaults/main.yml
@@ -18,172 +18,5 @@
 atmosphere_ingress_class_name: atmosphere
 atmosphere_ingress_cluster_issuer: atmosphere
 
-atmosphere_images:
-  alertmanager: quay.io/prometheus/alertmanager:v0.24.0
-  barbican_api: quay.io/vexxhost/barbican@sha256:fde302ee731cca6019feaf87400f5a377c3e38f459bc88d4c7677f2967e0939b # image-source: quay.io/vexxhost/barbican:zed
-  barbican_db_sync: quay.io/vexxhost/barbican@sha256:fde302ee731cca6019feaf87400f5a377c3e38f459bc88d4c7677f2967e0939b # image-source: quay.io/vexxhost/barbican:zed
-  bootstrap: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  ceph_config_helper: quay.io/vexxhost/libvirtd@sha256:d400204e0332dc815827e5902038a1c672446c58633ba97ede9e20f8ae9a2349 # image-source: quay.io/vexxhost/libvirtd:yoga-focal
-  cert_manager_cainjector: quay.io/jetstack/cert-manager-cainjector:v1.7.1
-  cert_manager_cli: quay.io/jetstack/cert-manager-ctl:v1.7.1
-  cert_manager_controller: quay.io/jetstack/cert-manager-controller:v1.7.1
-  cert_manager_webhook: quay.io/jetstack/cert-manager-webhook:v1.7.1
-  ceph: quay.io/ceph/ceph:v16.2.11
-  cilium_node: quay.io/cilium/cilium:v1.13.3@sha256:77176464a1e11ea7e89e984ac7db365e7af39851507e94f137dcf56c87746314
-  cilium_operator: quay.io/cilium/operator-generic:v1.13.3@sha256:fa7003cbfdf8358cb71786afebc711b26e5e44a2ed99bd4944930bba915b8910
-  cinder_api: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_backup_storage_init: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_backup: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_db_sync: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_scheduler: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_storage_init: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_volume_usage_audit: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cinder_volume: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
-  cluster_api_controller: registry.k8s.io/cluster-api/cluster-api-controller:v1.3.3
-  cluster_api_kubeadm_bootstrap_controller: registry.k8s.io/cluster-api/kubeadm-bootstrap-controller:v1.3.3
-  cluster_api_kubeadm_control_plane_controller: registry.k8s.io/cluster-api/kubeadm-control-plane-controller:v1.3.3
-  cluster_api_openstack_controller: quay.io/vexxhost/capi-openstack-controller:v0.7.1-1
-  csi_node_driver_registrar: registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.4.0
-  csi_rbd_attacher: registry.k8s.io/sig-storage/csi-attacher:v3.4.0
-  csi_rbd_plugin: quay.io/cephcsi/cephcsi:v3.5.1
-  csi_rbd_provisioner: registry.k8s.io/sig-storage/csi-provisioner:v3.1.0
-  csi_rbd_resizer: registry.k8s.io/sig-storage/csi-resizer:v1.3.0
-  csi_rbd_snapshotter: registry.k8s.io/sig-storage/csi-snapshotter:v4.2.0
-  db_drop: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  db_init: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  dep_check: quay.io/vexxhost/kubernetes-entrypoint:latest
-  designate_api: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  designate_central: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  designate_db_sync: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  designate_mdns: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  designate_producer: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  designate_sink: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  designate_worker: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
-  glance_api: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
-  glance_db_sync: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
-  glance_metadefs_load: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
-  glance_registry: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
-  glance_storage_init: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
-  grafana_sidecar: quay.io/kiwigrid/k8s-sidecar:1.19.2
-  grafana: docker.io/grafana/grafana:9.2.3
-  haproxy: docker.io/library/haproxy:2.5
-  heat_api: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  heat_cfn: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  heat_cloudwatch: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  heat_db_sync: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  heat_engine_cleaner: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  heat_engine: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  heat_purge_deleted: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  horizon_db_sync: quay.io/vexxhost/horizon@sha256:152d6cec57d241c19ef1e36abc64ff3c1a73e1c877142c067fac0e08957c96f4 # image-source: quay.io/vexxhost/horizon:zed
-  horizon: quay.io/vexxhost/horizon@sha256:152d6cec57d241c19ef1e36abc64ff3c1a73e1c877142c067fac0e08957c96f4 # image-source: quay.io/vexxhost/horizon:zed
-  ingress_nginx_controller: registry.k8s.io/ingress-nginx/controller:v1.1.1@sha256:0bc88eb15f9e7f84e8e56c14fa5735aaa488b840983f87bd79b1054190e660de
-  ingress_nginx_default_backend: registry.k8s.io/defaultbackend-amd64:1.5
-  ingress_nginx_kube_webhook_certgen: registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.1.1@sha256:64d8c73dca984af206adf9d6d7e46aa550362b1d7a01f3a0a91b20cc67868660 # noqa: yaml[line-length]
-  keepalived: us-docker.pkg.dev/vexxhost-infra/openstack/keepalived:2.0.19
-  keystone_api: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
-  keystone_credential_cleanup: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  keystone_credential_rotate: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
-  keystone_credential_setup: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
-  keystone_db_sync: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
-  keystone_domain_manage: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  keystone_fernet_rotate: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
-  keystone_fernet_setup: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
-  ks_endpoints: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  ks_service: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  ks_user: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  kube_apiserver: registry.k8s.io/kube-apiserver:v1.22.17
-  kube_controller_manager: registry.k8s.io/kube-controller-manager:v1.22.17
-  kube_coredns: registry.k8s.io/coredns/coredns:v1.8.4
-  kube_etcd: registry.k8s.io/etcd:3.5.6-0
-  kube_proxy: registry.k8s.io/kube-proxy:v1.22.17
-  kube_scheduler: registry.k8s.io/kube-scheduler:v1.22.17
-  kube_state_metrics: registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.6.0
-  libvirt: quay.io/vexxhost/libvirtd@sha256:d400204e0332dc815827e5902038a1c672446c58633ba97ede9e20f8ae9a2349 # image-source: quay.io/vexxhost/libvirtd:yoga-focal
-  local_path_provisioner_helper: docker.io/library/busybox:1.36.0
-  local_path_provisioner: docker.io/rancher/local-path-provisioner:v0.0.24
-  loki: docker.io/grafana/loki:2.7.3
-  loki_gateway: docker.io/nginxinc/nginx-unprivileged:1.19-alpine
-  magnum_api: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
-  magnum_cluster_api_proxy: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
-  magnum_conductor: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
-  magnum_db_sync: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
-  magnum_registry: docker.io/library/registry:2.7.1
-  manila_api: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
-  manila_data: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
-  manila_db_sync: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
-  manila_scheduler: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
-  manila_share: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
-  memcached: docker.io/library/memcached:1.6.17
-  neutron_bagpipe_bgp: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_coredns: docker.io/coredns/coredns:1.9.3
-  neutron_db_sync: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_dhcp: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_ironic_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_l2gw: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_l3: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_linuxbridge_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_metadata: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_netns_cleanup_cron: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_openvswitch_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_ovn_metadata: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_server: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_sriov_agent_init: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  neutron_sriov_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
-  node_feature_discovery: registry.k8s.io/nfd/node-feature-discovery:v0.11.2
-  nova_api: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_archive_deleted_rows: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_cell_setup_init: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  nova_cell_setup: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_compute_ironic: quay.io/openstack.kolla/nova-compute-ironic:zed-ubuntu-jammy
-  nova_compute_ssh: quay.io/vexxhost/nova-ssh:latest
-  nova_compute: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_conductor: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_consoleauth: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_db_sync: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_novncproxy_assets: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_novncproxy: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_placement: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_scheduler: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_service_cleaner: quay.io/vexxhost/cli:latest
-  nova_spiceproxy_assets: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  nova_spiceproxy: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
-  octavia_api: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
-  octavia_db_sync: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
-  octavia_health_manager_init: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
-  octavia_health_manager: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
-  octavia_housekeeping: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
-  octavia_worker: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
-  openvswitch_db_server: quay.io/vexxhost/openvswitch:2.17.3
-  openvswitch_vswitchd: quay.io/vexxhost/openvswitch:2.17.3
-  pause: registry.k8s.io/pause:3.8
-  percona_xtradb_cluster_haproxy: docker.io/percona/percona-xtradb-cluster-operator:1.10.0-haproxy
-  percona_xtradb_cluster_operator: docker.io/percona/percona-xtradb-cluster-operator:1.10.0
-  percona_xtradb_cluster: docker.io/percona/percona-xtradb-cluster:5.7.39-31.61
-  placement_db_sync: quay.io/vexxhost/placement@sha256:ef2f95bdc3c88504b3a2297bf314728788126008f9bafba337e53d48a7dd19c3 # image-source: quay.io/vexxhost/placement:zed
-  placement: quay.io/vexxhost/placement@sha256:ef2f95bdc3c88504b3a2297bf314728788126008f9bafba337e53d48a7dd19c3 # image-source: quay.io/vexxhost/placement:zed
-  prometheus_config_reloader: quay.io/prometheus-operator/prometheus-config-reloader:v0.60.1
-  prometheus_ethtool_exporter: quay.io/vexxhost/ethtool-exporter:5f05120a743a71adcbceb9f8ee1d43ecc7c4183a
-  prometheus_ipmi_exporter: us-docker.pkg.dev/vexxhost-infra/openstack/ipmi-exporter:1.4.0
-  prometheus_memcached_exporter: quay.io/prometheus/memcached-exporter:v0.10.0
-  prometheus_mysqld_exporter: quay.io/prometheus/mysqld-exporter:v0.14.0
-  prometheus_node_exporter: quay.io/prometheus/node-exporter:v1.3.1
-  prometheus_openstack_exporter: ghcr.io/openstack-exporter/openstack-exporter:1.6.0
-  prometheus_operator_kube_webhook_certgen: registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.3.0
-  prometheus_operator: quay.io/prometheus-operator/prometheus-operator:v0.60.1
-  prometheus_pushgateway: docker.io/prom/pushgateway:v1.4.2
-  prometheus: quay.io/prometheus/prometheus:v2.39.1
-  rabbit_init: docker.io/library/rabbitmq:3.10.2-management
-  rabbitmq_cluster_operator: docker.io/rabbitmqoperator/cluster-operator:1.13.1
-  rabbitmq_credential_updater: docker.io/rabbitmqoperator/default-user-credential-updater:1.0.2
-  rabbitmq_server: docker.io/library/rabbitmq:3.10.2-management
-  rabbitmq_topology_operator: docker.io/rabbitmqoperator/messaging-topology-operator:1.6.0
-  rook_ceph: docker.io/rook/ceph:v1.10.10
-  senlin_api: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
-  senlin_conductor: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
-  senlin_db_sync: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
-  senlin_engine_cleaner: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
-  senlin_engine: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
-  senlin_health_manager: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
-  skopeo: quay.io/skopeo/stable:latest
-  tempest_run_tests: us-docker.pkg.dev/vexxhost-infra/openstack/tempest:30.1.0-4
-  vector: docker.io/timberio/vector:0.27.0-debian
+# This is for override values in atmosphere_images
+atmosphere_image_overrides: {}
diff --git a/roles/defaults/vars/main.yml b/roles/defaults/vars/main.yml
new file mode 100644
index 0000000..6ad2394
--- /dev/null
+++ b/roles/defaults/vars/main.yml
@@ -0,0 +1,185 @@
+# Copyright (c) 2023 VEXXHOST, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+_atmosphere_images:
+  alertmanager: quay.io/prometheus/alertmanager:v0.24.0
+  barbican_api: quay.io/vexxhost/barbican@sha256:fde302ee731cca6019feaf87400f5a377c3e38f459bc88d4c7677f2967e0939b # image-source: quay.io/vexxhost/barbican:zed
+  barbican_db_sync: quay.io/vexxhost/barbican@sha256:fde302ee731cca6019feaf87400f5a377c3e38f459bc88d4c7677f2967e0939b # image-source: quay.io/vexxhost/barbican:zed
+  bootstrap: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  ceph_config_helper: quay.io/vexxhost/libvirtd@sha256:d400204e0332dc815827e5902038a1c672446c58633ba97ede9e20f8ae9a2349 # image-source: quay.io/vexxhost/libvirtd:yoga-focal
+  cert_manager_cainjector: quay.io/jetstack/cert-manager-cainjector:v1.7.1
+  cert_manager_cli: quay.io/jetstack/cert-manager-ctl:v1.7.1
+  cert_manager_controller: quay.io/jetstack/cert-manager-controller:v1.7.1
+  cert_manager_webhook: quay.io/jetstack/cert-manager-webhook:v1.7.1
+  ceph: quay.io/ceph/ceph:v16.2.11
+  cilium_node: quay.io/cilium/cilium:v1.13.3@sha256:77176464a1e11ea7e89e984ac7db365e7af39851507e94f137dcf56c87746314
+  cilium_operator: quay.io/cilium/operator-generic:v1.13.3@sha256:fa7003cbfdf8358cb71786afebc711b26e5e44a2ed99bd4944930bba915b8910
+  cinder_api: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_backup_storage_init: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_backup: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_db_sync: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_scheduler: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_storage_init: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_volume_usage_audit: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cinder_volume: quay.io/vexxhost/cinder@sha256:875bc983a9c2a2d1fb6a952d147f2474a169dc77eb9dff4741f3a185c28753fb # image-source: quay.io/vexxhost/cinder:zed
+  cluster_api_controller: registry.k8s.io/cluster-api/cluster-api-controller:v1.3.3
+  cluster_api_kubeadm_bootstrap_controller: registry.k8s.io/cluster-api/kubeadm-bootstrap-controller:v1.3.3
+  cluster_api_kubeadm_control_plane_controller: registry.k8s.io/cluster-api/kubeadm-control-plane-controller:v1.3.3
+  cluster_api_openstack_controller: quay.io/vexxhost/capi-openstack-controller:v0.7.1-1
+  csi_node_driver_registrar: registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.4.0
+  csi_rbd_attacher: registry.k8s.io/sig-storage/csi-attacher:v3.4.0
+  csi_rbd_plugin: quay.io/cephcsi/cephcsi:v3.5.1
+  csi_rbd_provisioner: registry.k8s.io/sig-storage/csi-provisioner:v3.1.0
+  csi_rbd_resizer: registry.k8s.io/sig-storage/csi-resizer:v1.3.0
+  csi_rbd_snapshotter: registry.k8s.io/sig-storage/csi-snapshotter:v4.2.0
+  db_drop: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  db_init: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  dep_check: quay.io/vexxhost/kubernetes-entrypoint:latest
+  designate_api: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  designate_central: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  designate_db_sync: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  designate_mdns: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  designate_producer: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  designate_sink: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  designate_worker: quay.io/vexxhost/designate@sha256:3f5039753555331c7f3ab8fa9f53206f185752d2cb4c3fa0e05c0b5e18540fa0 # image-source: quay.io/vexxhost/designate:zed
+  glance_api: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
+  glance_db_sync: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
+  glance_metadefs_load: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
+  glance_registry: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
+  glance_storage_init: quay.io/vexxhost/glance@sha256:32aaf33e83f7285e2ad04cb8e692068e072d9d852b6b2625742995724ec77508 # image-source: quay.io/vexxhost/glance:zed
+  grafana_sidecar: quay.io/kiwigrid/k8s-sidecar:1.19.2
+  grafana: docker.io/grafana/grafana:9.2.3
+  haproxy: docker.io/library/haproxy:2.5
+  heat_api: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  heat_cfn: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  heat_cloudwatch: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  heat_db_sync: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  heat_engine_cleaner: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  heat_engine: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  heat_purge_deleted: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  horizon_db_sync: quay.io/vexxhost/horizon@sha256:152d6cec57d241c19ef1e36abc64ff3c1a73e1c877142c067fac0e08957c96f4 # image-source: quay.io/vexxhost/horizon:zed
+  horizon: quay.io/vexxhost/horizon@sha256:152d6cec57d241c19ef1e36abc64ff3c1a73e1c877142c067fac0e08957c96f4 # image-source: quay.io/vexxhost/horizon:zed
+  ingress_nginx_controller: registry.k8s.io/ingress-nginx/controller:v1.1.1@sha256:0bc88eb15f9e7f84e8e56c14fa5735aaa488b840983f87bd79b1054190e660de
+  ingress_nginx_default_backend: registry.k8s.io/defaultbackend-amd64:1.5
+  ingress_nginx_kube_webhook_certgen: registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.1.1@sha256:64d8c73dca984af206adf9d6d7e46aa550362b1d7a01f3a0a91b20cc67868660 # noqa: yaml[line-length]
+  keepalived: us-docker.pkg.dev/vexxhost-infra/openstack/keepalived:2.0.19
+  keystone_api: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
+  keystone_credential_cleanup: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  keystone_credential_rotate: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
+  keystone_credential_setup: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
+  keystone_db_sync: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
+  keystone_domain_manage: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  keystone_fernet_rotate: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
+  keystone_fernet_setup: quay.io/vexxhost/keystone@sha256:8214ccc92d7973451509701c5728d5af614762be3b2b89b29e486f28eb68167f # image-source: quay.io/vexxhost/keystone:zed
+  ks_endpoints: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  ks_service: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  ks_user: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  kube_apiserver: registry.k8s.io/kube-apiserver:v1.22.17
+  kube_controller_manager: registry.k8s.io/kube-controller-manager:v1.22.17
+  kube_coredns: registry.k8s.io/coredns/coredns:v1.8.4
+  kube_etcd: registry.k8s.io/etcd:3.5.6-0
+  kube_proxy: registry.k8s.io/kube-proxy:v1.22.17
+  kube_scheduler: registry.k8s.io/kube-scheduler:v1.22.17
+  kube_state_metrics: registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.6.0
+  libvirt: quay.io/vexxhost/libvirtd@sha256:d400204e0332dc815827e5902038a1c672446c58633ba97ede9e20f8ae9a2349 # image-source: quay.io/vexxhost/libvirtd:yoga-focal
+  local_path_provisioner_helper: docker.io/library/busybox:1.36.0
+  local_path_provisioner: docker.io/rancher/local-path-provisioner:v0.0.24
+  loki: docker.io/grafana/loki:2.7.3
+  loki_gateway: docker.io/nginxinc/nginx-unprivileged:1.19-alpine
+  magnum_api: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
+  magnum_cluster_api_proxy: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
+  magnum_conductor: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
+  magnum_db_sync: quay.io/vexxhost/magnum@sha256:c3900fd5845d3ac6e95a8c8f48cdeaac880152482b80deff41be2bb4718670cd # image-source: quay.io/vexxhost/magnum:zed
+  magnum_registry: docker.io/library/registry:2.7.1
+  manila_api: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
+  manila_data: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
+  manila_db_sync: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
+  manila_scheduler: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
+  manila_share: quay.io/vexxhost/manila@sha256:78a258f0a632b0778d91767c4ec7b6f84e6ef1de7cf1e51e726374caa295b8f6 # image-source: quay.io/vexxhost/manila:zed
+  memcached: docker.io/library/memcached:1.6.17
+  neutron_bagpipe_bgp: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_coredns: docker.io/coredns/coredns:1.9.3
+  neutron_db_sync: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_dhcp: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_ironic_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_l2gw: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_l3: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_linuxbridge_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_metadata: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_netns_cleanup_cron: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_openvswitch_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_ovn_metadata: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_server: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_sriov_agent_init: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  neutron_sriov_agent: quay.io/vexxhost/neutron@sha256:1f7e7d9d3db9100b55243b33bd215aebec89939b8249411153fc4035db62ba93 # image-source: quay.io/vexxhost/neutron:zed
+  node_feature_discovery: registry.k8s.io/nfd/node-feature-discovery:v0.11.2
+  nova_api: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_archive_deleted_rows: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_cell_setup_init: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  nova_cell_setup: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_compute_ironic: quay.io/openstack.kolla/nova-compute-ironic:zed-ubuntu-jammy
+  nova_compute_ssh: quay.io/vexxhost/nova-ssh:latest
+  nova_compute: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_conductor: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_consoleauth: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_db_sync: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_novncproxy_assets: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_novncproxy: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_placement: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_scheduler: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_service_cleaner: quay.io/vexxhost/cli:latest
+  nova_spiceproxy_assets: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  nova_spiceproxy: quay.io/vexxhost/nova@sha256:bd4a877013053e134a33edc18546f99923a2057072328a4323683eb315acd308 # image-source: quay.io/vexxhost/nova:zed
+  octavia_api: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
+  octavia_db_sync: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
+  octavia_health_manager_init: quay.io/vexxhost/heat@sha256:755225f9a63c0968f1ceeda3a2f06c66dd8d247ff00308f549e66496aa8f59d0 # image-source: quay.io/vexxhost/heat:zed
+  octavia_health_manager: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
+  octavia_housekeeping: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
+  octavia_worker: quay.io/vexxhost/octavia@sha256:9065365ed1d731e5130dcf7d600bc8dc8ffa158093c53dd151eddfe49a29a5ee # image-source: quay.io/vexxhost/octavia:zed
+  openvswitch_db_server: quay.io/vexxhost/openvswitch:2.17.3
+  openvswitch_vswitchd: quay.io/vexxhost/openvswitch:2.17.3
+  pause: registry.k8s.io/pause:3.8
+  percona_xtradb_cluster_haproxy: docker.io/percona/percona-xtradb-cluster-operator:1.10.0-haproxy
+  percona_xtradb_cluster_operator: docker.io/percona/percona-xtradb-cluster-operator:1.10.0
+  percona_xtradb_cluster: docker.io/percona/percona-xtradb-cluster:5.7.39-31.61
+  placement_db_sync: quay.io/vexxhost/placement@sha256:ef2f95bdc3c88504b3a2297bf314728788126008f9bafba337e53d48a7dd19c3 # image-source: quay.io/vexxhost/placement:zed
+  placement: quay.io/vexxhost/placement@sha256:ef2f95bdc3c88504b3a2297bf314728788126008f9bafba337e53d48a7dd19c3 # image-source: quay.io/vexxhost/placement:zed
+  prometheus_config_reloader: quay.io/prometheus-operator/prometheus-config-reloader:v0.60.1
+  prometheus_ethtool_exporter: quay.io/vexxhost/ethtool-exporter:5f05120a743a71adcbceb9f8ee1d43ecc7c4183a
+  prometheus_ipmi_exporter: us-docker.pkg.dev/vexxhost-infra/openstack/ipmi-exporter:1.4.0
+  prometheus_memcached_exporter: quay.io/prometheus/memcached-exporter:v0.10.0
+  prometheus_mysqld_exporter: quay.io/prometheus/mysqld-exporter:v0.14.0
+  prometheus_node_exporter: quay.io/prometheus/node-exporter:v1.3.1
+  prometheus_openstack_exporter: ghcr.io/openstack-exporter/openstack-exporter:1.6.0
+  prometheus_operator_kube_webhook_certgen: registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.3.0
+  prometheus_operator: quay.io/prometheus-operator/prometheus-operator:v0.60.1
+  prometheus_pushgateway: docker.io/prom/pushgateway:v1.4.2
+  prometheus: quay.io/prometheus/prometheus:v2.39.1
+  rabbit_init: docker.io/library/rabbitmq:3.10.2-management
+  rabbitmq_cluster_operator: docker.io/rabbitmqoperator/cluster-operator:1.13.1
+  rabbitmq_credential_updater: docker.io/rabbitmqoperator/default-user-credential-updater:1.0.2
+  rabbitmq_server: docker.io/library/rabbitmq:3.10.2-management
+  rabbitmq_topology_operator: docker.io/rabbitmqoperator/messaging-topology-operator:1.6.0
+  rook_ceph: docker.io/rook/ceph:v1.10.10
+  senlin_api: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
+  senlin_conductor: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
+  senlin_db_sync: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
+  senlin_engine_cleaner: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
+  senlin_engine: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
+  senlin_health_manager: quay.io/vexxhost/senlin@sha256:66e064a6337fd86f7936d2724ae45136ee8429b486e236fb34e03874034fed70 # image-source: quay.io/vexxhost/senlin:zed
+  skopeo: quay.io/skopeo/stable:latest
+  tempest_run_tests: us-docker.pkg.dev/vexxhost-infra/openstack/tempest:30.1.0-4
+  vector: docker.io/timberio/vector:0.27.0-debian
+
+atmosphere_images: "{{ _atmosphere_images | combine(atmosphere_image_overrides, recursive=True) }}"