# Improvements to failover registry in Content Provider jobs ## Introduction In Content provider jobs, we build openstack services containers by using the single source of truth tripleo-containers.yaml coming from tripleo-common. tripleo-container.yaml also contains non-tripleo containers like ceph daemon, grafana, prometheous, alertmanager, node-exporter. Currently we pull these containers from quay.ceph.io registry by using non-tripleo-container.yaml playbook and push it to local registry in content provider job. If quay.ceph.io fails then it pulls from rdo-registry and docker.io. ## Current Issues. * When quay.ceph.io is down then we need to pull the containers from rdo-registry but it also fails because the containers with latest tag does not exists. * On dockerhub, their namespaces are different from quay.ceph.io so dockerhub failover does work. * We also pushed a set of container of quay.io/tripleoci but we never use that * Currently all these containers are synced manually by copy-quay script running in toolbox. * It means our failover registry implementations needs more love. ## Things to do * By using tripleo-containers.yaml as a single source of truth, make sure we update all the non-tripleo containers on these failover registeries after each promotion. * Add quay.io/tripleoci as a first failover, then rdo registry and then docker hub. * Map the quay.ceph.io non-tripleo container namespace to dockerhub namespace so that dockerhub works as expected.