Git lab has 5 stages. 1. .pre (always runs at the beginning of CICD) 2. build 3. test (Default stage) 4. deploy 5. .post(always runs at th...
Git lab has 5 stages.
1. .pre (always runs at the beginning of CICD)
2. build
3. test (Default stage)
4. deploy
5. .post(always runs at the end of CI/CD)
Example1 To Run the sequential jobs using stages.
stages:
- build
- test
- deploy
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
- build
- test
- deploy
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
Example2 :-Run the parallel jobs for the stage test. There is a new job newtest is introduced, when you run this pipeline script then you can see that there are 2 parallel jobs running in the test stage.
stages:
- build
- test
- deploy
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
newtest:
stage: test
script:
- echo "parallel run Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
- build
- test
- deploy
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
newtest:
stage: test
script:
- echo "parallel run Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
Example 3 Executing the jobs in default order.
prejob:
stage: .pre
script:
- echo "prestage"
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
postjob:
stage: .post
script:
- echo "post Stage"
stage: .pre
script:
- echo "prestage"
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
postjob:
stage: .post
script:
- echo "post Stage"
Example 4 : Run the jobs in the defined order in stages section.
stages:
- test
- deploy
- build
prejob:
stage: .pre
script:
- echo "prestage"
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
postjob:
stage: .post
script:
- echo "post Stage"
- test
- deploy
- build
prejob:
stage: .pre
script:
- echo "prestage"
build:
stage: build
script:
- echo "Build Stage"
test:
stage: test
script:
- echo "Test Stage"
deploy:
stage: deploy
script:
- echo "Deploy Stage"
postjob:
stage: .post
script:
- echo "post Stage"
Note:-
if you forget to define the stage in stages section and use it in the job then it will throw the error.
COMMENTS