Hello, I have a Gitlab Community Edition instance running on a Synology (via Docker), that I’m using for a Ruby on Rails project (dockerized also). To ‘deploy’, I’m using Gitlab CI and a runner (shell executor) that runs on a Mac (Gitlab versions: 12.6.2 for the Gitlab instance, 12.6, the Mac uses the last version of Mojave and the last version of Docker). The runner is triggered to commits on a given branch.
It worked fine for about a year now. Since my last update of the Ruby on Rails project (to upgrade Ruby to 2.6.5), the Gitlab Runner seems to ‘disconnect’ during the execution of the script, which causes the job to fail (timeout error). But looking at the test.log
of the Rails application, the script has actually executed properly and the next step has also been executed properly.
Here’s the script section of the .gitlab-ci.yml
file
- docker-compose -f docker-compose.base.yml -f docker-compose.test.yml build
- docker-compose -f docker-compose.base.yml -f docker-compose.test.yml run --rm web sleep 60 # to make sure that the DB is started
- docker-compose -f docker-compose.base.yml -f docker-compose.test.yml run --rm web curl -H "Content-Type:application/json" -XPOST -d '{"password":"dummypassord"}' -u neo4j:neo4j http://db:7474/user/neo4j/password # the database is cleared and the password must be changed
# the CI job log stops in the middle of this step (didn't find a reason), but the rails test.log shows that the migration completes
- docker-compose -f docker-compose.base.yml -f docker-compose.test.yml run --rm web bundle exec rails neo4j:migrate
# the rails test.log shows that this step has been completed, but it does not appear in the Gitlab job log
- docker-compose -f docker-compose.base.yml -f docker-compose.test.yml run --rm web bundle exec rails test
Does anyone have an idea of the origin of this problem (or where to search to debug it)? The fact that all steps of the script execute completely let me think that it’s rather a gitlab runner issue that a docker one. But I wouldn’t affirm it with certitude.
Thanks in advance!