Add shell executor concurrency caching example
What does this MR do?
Adds a new cache configuration example which avoids issues when using the shell executor and where build file paths vary on subsequent job runs due to the inclusion of the CI_CONCURRENT_PROJECT_ID
in the path to allow for the running of concurrent jobs.
For example, the first run of job A may use a build path with CI_CONCURRENT_PROJECT_ID=0
:
/home/gitlab-runner/builds/<runner_id>/0/path/to/project
and another run of the same job may use a build path with CI_CONCURRENT_PROJECT_ID=1
if there is already another job running:
/home/gitlab-runner/builds/<runner_id>/1/path/to/project
If references to the build paths are included in the cache then build errors may result if the cached path and current path don't match.
Also update the description of the CI_CONCURRENT_PROJECT_ID
variable to indicate it forms part of shared build paths.
This scenario and the example solution were reported by a customer in (ZD internal link)
Related issues
Author's checklist
-
Optional. Consider taking the GitLab Technical Writing Fundamentals course. -
Follow the: -
If you're adding or changing the main heading of the page (H1), ensure that the product tier badge is added. -
If you are a GitLab team member, request a review based on: - The documentation page's metadata.
- The associated Technical Writer.
If you are a GitLab team member and only adding documentation, do not add any of the following labels:
~"frontend"
~"backend"
~"type::bug"
~"database"
These labels cause the MR to be added to code verification QA issues.
Reviewer's checklist
Documentation-related MRs should be reviewed by a Technical Writer for a non-blocking review, based on Documentation Guidelines and the Style Guide.
If you aren't sure which tech writer to ask, use roulette or ask in the #docs Slack channel.
-
If the content requires it, ensure the information is reviewed by a subject matter expert. - Technical writer review items:
-
Ensure docs metadata is present and up-to-date. -
Ensure the appropriate labels are added to this MR. -
Ensure a release milestone is set. - If relevant to this MR, ensure content topic type principles are in use, including:
-
The headings should be something you'd do a Google search for. Instead of Default behavior
, say something likeDefault behavior when you close an issue
. -
The headings (other than the page title) should be active. Instead of Configuring GDK
, say something likeConfigure GDK
. -
Any task steps should be written as a numbered list. - If the content still needs to be edited for topic types, you can create a follow-up issue with the docs-technical-debt label.
-
-
-
Review by assigned maintainer, who can always request/require the reviews above. Maintainer's review can occur before or after a technical writer review.