Mounting build dir into services not working on gitlab.com
Overview
I want to run a selenium-server in the services part of gitlab-ci.yml. It should take screenshots of "storybook"-stories. Storybook can either run as server on the build-container itself, or it can create static HTML files in a directory on the build server.
I thought it would be easy to create these HTML-files and access them from the selenium image via the path /build/{user}/{project}. The docs say that the build-directory is not only mounted into the build-container, but also into the services declared in the gitlab-ci.yml file.
However, this only seems to be the case in the docker-runner, but gitlab.com uses a docker+machine runner. I have create a test-project on https://gitlab.com/nknapp/gitlab-ci-test that prints out the environment of one service and tries to list the contents of /builds/nknapp/gitlab-ci-test.
The result is, in the log, the output:
2020-06-05T08:59:58.180517377Z find: '/builds/nknapp/gitlab-ci-test/': No such file or directory
Key question(s)
- Should it be possible to access the build-directory in the service?
- Is this a bug, a missing feature, not possible or intended?
GitLab response
- This is expected behavior as it is a result of how the
dockerexecutor flow works.