Hi Kostis, thanks for your reply. It’s disappointing to hear that codefresh does not have a good story with regards to docker-compose.
I have to say I completely disagree with your assertion that tests using docker-compose are inherently “flaky”. As explained in the article you linked about startup order, cloud services should be built with resilience in mind and should not break if one of their dependencies is temporarily unavailable, whether that be due to startup ordering or due to temporary network issues. I would flip it around and say that if your tests require special control of startup ordering/timing, that’s a red flag on how resillient your services will be in production!
The issue I face with re-using my docker-compose file, is that every build will have a dynamically generated tag (via CF_BRANCH_TAG_NORMALIZED), so therefore I cannot hardcode a particular image name/tag in my docker-compose file for the services I am testing - it needs to be passed in somehow. I tried this already with environment variables but codefresh complains it cannot read the docker-compose.yaml file - I presume this is down to the syntax differences in environment variables? Is there any other solution that I am not seeing?