Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
GitLab CI Cache Usage Examples
Manage
Activity
Members
Labels
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Analyze
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Klaus Reuter
GitLab CI Cache Usage Examples
Commits
fd033f6e
Commit
fd033f6e
authored
2 years ago
by
Klaus Reuter
Browse files
Options
Downloads
Patches
Plain Diff
Update .gitlab-ci.yml
parent
e2f4cc7e
No related branches found
No related tags found
No related merge requests found
Pipeline
#138085
passed
2 years ago
Stage: build
Stage: test
Stage: deploy
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
.gitlab-ci.yml
+26
-22
26 additions, 22 deletions
.gitlab-ci.yml
with
26 additions
and
22 deletions
.gitlab-ci.yml
+
26
−
22
View file @
fd033f6e
# This file is a template, and might need editing before it works on your project.
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
# This is a sample GitLab CI/CD configuration file that should run without any modifications.
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
# it uses echo commands to simulate the pipeline execution.
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
stages
:
# List of stages for jobs, and their order of execution
-
build
-
test
-
deploy
cache
:
&global_cache
key
:
$CI_COMMIT_REF_SLUG
paths
:
-
bin
policy
:
pull-push
build-job
:
# This job runs in the build stage, which runs first.
stage
:
build
script
:
-
echo "Compiling the code..."
-
echo "Compile complete."
-
mkdir bin
-
cp /usr/bin/rev bin
unit-test-job
:
# This job runs in the test stage.
stage
:
test
# It only starts when the job in the build stage completes successfully.
cache
:
# inherit all global cache settings
<<
:
*global_cache
# override the policy
policy
:
pull
script
:
-
echo "Running unit tests... This will take about 60 seconds."
-
sleep
60
-
echo "Code coverage is 90%"
-
echo "Running unit tests... This will take about 60 seconds." | bin/rev
lint-test-job
:
# This job also runs in the test stage.
stage
:
test
# It can run at the same time as unit-test-job (in parallel).
cache
:
# inherit all global cache settings
<<
:
*global_cache
# override the policy
policy
:
pull
script
:
-
echo "Linting code... This will take about 10 seconds."
-
sleep
10
-
echo "No lint issues found."
-
echo "Linting code... This will take about 10 seconds." | bin/rev
deploy-job
:
# This job runs in the deploy stage.
stage
:
deploy
# It only runs when *both* jobs in the test stage complete successfully.
cache
:
# inherit all global cache settings
<<
:
*global_cache
# override the policy
policy
:
pull
script
:
-
echo "Deploying application..."
-
echo "Application successfully deployed."
-
echo "Application successfully deployed."
| bin/rev
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment