If the build and test pipelines are running on the same host as the deployed site, we need to make sure that we don't run with similar docker compose project names.
Edited
Designs
Child items ...
Show closed items
Linked items 0
Link issues together to show that they're related.
Learn more.
There has been the issue, which only came to light when the following conditions all applied at the same time:
a web site project contained tests that required a composer project, e.g. behat or cypress tests
the pipelines for that project are running on the same physical host as the deployed site
In that scenario, which we haven't had in years, just happened now as we added such tests to one of the portals that indeed has its pipelines on the same host. What happened then is that the docker composer project name had been the same for both the pipeline and the deployed project. That, of course, caused a terrible conflict. IN fact, not only one but many.
We've resolved this by prefixing deployed project names with drupal_. So, if a docker compose project had been called lakedrops_main, this will now be called drupal_lakedrops_main. The pipeline projects remain unchanged, i.e. that example is still called lakedrops_main.
This change requires the following manual change to each deployed website, that uses this framework:
go to the deployed project root directory
call docker compose down
edit the docker-compose.yml file and prefix the project name in line 3 with drupal_
call docker compose up -d
After that, all should continue working as before.