Hi Thomas, On 10/27/21 08:01, Thomas Huth wrote: > On 26/10/2021 16.55, Philippe Mathieu-Daudé wrote: >> Users expect images pulled from registry.gitlab.com/qemu-project/qemu/ >> to be stable. QEMU repository workflow pushes merge candidates to >> the /staging branch, and on success the same commit is pushed as >> /master. If /staging fails, we do not want to push the built images >> to the registry. Therefore limit the 'docker push' command to the >> /master branch on the mainstream CI. The fork behavior is unchanged. > > Hmmm, what if I have a patch series that updates one of the containers > and then also contains a new test that depends on the updated container? > Won't that fail in the staging branch now and make me look bad?
Good point. My understanding is: - All tests based on Docker containers pull from DOCKER_DEFAULT_REGISTRY (see tests/docker/Makefile.include). These tests can be run on CI but are principally run locally, using the ':latest' tag, which is the reason we don't want to push invalid / oudated images. - CI tests also use the Docker containers. We might want to test freshly built images. Here we should explicit the use of local tag (without using the registry prefix) in this case. Otherwise default to the latest from registry (stable). So the problem you mentioned is the second case, and should be reworked in the YAML. I will revisit the overall CI YAML for your case, but the first case seems equally important. Regards, Phil.