This refactors docker executor in:
- how we interact with Docker Executor,
- we create predefined/build containers as needed, instead of pre-creating them,
- optimises the welcome message,
- optimises images SHAs,
- adds verbose logging (stack trace) when https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/2347 happens to make it easier to debug.
What does this MR do?
Why was this MR needed?
Are there points in the code the reviewer needs to double check?
Does this MR meet the acceptance criteria?
-
Documentation created/updated - Tests
-
Added for this feature/bug -
All builds are passing
-
-
Branch has no merge conflicts with master
(if you do - rebase it please)
What are the relevant issue numbers?
Related to https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/2347