# Changes to promoter container push due to new container workflow
## What is old container build workflow?
* tripleo-ci containers-build role is used to build containers using kolla.
* there container_config = "" is used for train, ussuri and master
* https://opendev.org/openstack/tripleo-ci/src/branch/master/roles/build-containers/tasks/main.yaml#L21
* for older releases[queens, rocky, pike]:
* container_config: "--config-file $TRIPLEO_COMMON_PATH/container-images/overcloud_containers.yaml"
Currently promoter relies on https://opendev.org/openstack/tripleo-common/src/branch/master/container-images/overcloud_containers.yaml.j2 to get the container list by parsing name_prefix and name_suffix.
* Above container_config is used with python-tripleoclient command
* https://opendev.org/openstack/tripleo-ci/src/branch/master/roles/build-containers/templates/build.sh.j2#L11
* openstack overcloud container image build {{ container_config }}\
## In promoter side How containers are pushed to docker.io?
on promoter side:
* "containers_list_path": "container-images/overcloud_containers.yaml.j2" is used
https://github.com/rdo-infra/ci-config/blob/master/ci-scripts/dlrnapi_promoter/config.py#L58 to generate the container lists using
name_prefix and name_suffix from https://opendev.org/openstack/tripleo-common/src/branch/master/container-images/overcloud_containers.yaml.j2.
and then containers are pushed to docker.io
## What got changed on arrival of new container workflow?
* In tripleo-ci build-containers role side, with introduction to new container flow, https://opendev.org/openstack/tripleo-common/src/branch/master/container-images/tripleo_containers.yaml is the source of truth.
* It is used while building containers https://opendev.org/openstack/tripleo-ci/src/branch/master/roles/build-containers/templates/build.sh.j2#L79
## What problems it is causing now?
Since overcloud_containers.yaml and tripleo_containers.yaml have different set of containers which leading to false positive exclude while pushing the containers. It needs to be fixed.
## How to fix it?
* Chnage the promoter config to https://github.com/rdo-infra/ci-config/blob/master/ci-scripts/dlrnapi_promoter/config.py#L58 to use overcloud_containers.yaml and tripleo_containers.yaml files instead of .j2 files.
It requires changes in the codebase on promoter side, how it downloads the container.