Gitlab ááŸá ááááºážááŸááºáá»á¬ážááᯠáá±áá¬áá»á¬ážá áœá¬ááœáẠáááºááŸááºááá¯ááºáááºá
- á¡ááœá²á·áááºáááºáá»á¬ážááœááº
- ááá±á¬áá»ááºáááºáááºáá»á¬ážááœááº
- .gitlab-ci.yml á¡ááœááºážááá¯ááºáž
á€ááá á¹á ááœááºá á¡á¯ááºá á¯ááŸáá·áº ááá±á¬áá»ááºáááºáááºáá»á¬ážááŸá ááááºážááŸááºáá»á¬ážááᯠ"ááá¯ááº" ááá¯á·ááá¯áẠ"áá¯á¶ááŸááºááááºážááŸááº" á¡ááŒá ẠáááºááŸááºááá¯ááºááŒá®áž "áá¬ááœááºáá¬ážáááº" ááŸáá·áº "áá»ááºááŸá¬áá¯á¶ážáá»á¬áž" á¡ááŸááºááŒá áºááœááºáá»á¬ážááᯠá á áºáá±ážááá¯ááºáááºá
ááá¯ážááŸááºážáá±á¬ á¡ááœá±áááºáá¶ááŸá¯ááŒáá·áº á áááºááŒáá«á áá¯á·á áááŒááºážááŒááºáž ááá¯ááá¯ááŸá¯ááºááœá±ážáá¬áá«áááºá
áŠážá á¬ážáá±ážá¡ááá·áºáá»á¬ážá áá±á¬ááºáá¯á¶ážá á¬áááºážááᯠá á¬ááœááºá á¬áááºážáá¡áá¯á¶ážááœáẠááœá±á·ááá¯ááºáááºá
á¡ááœá²á·ááœá±áá²á· á¡ááœá±áááºáá¶áááºá [á¡áááºážá¡ááŒá áºáá»á¬áž]
á¡á¯ááºá á¯áá»á¬ážá០ááœá²ááœá²ááŸá¯áá»á¬ážááᯠá¡ááœá±áááºáá¶áááºá á¡á¯ááºá á¯ááẠááá±á¬áá»ááºááŸáá·áº áá®ážáááºáá±áá± áááºážááááºááá¯ážááẠááá¯á¡áá±ážááŒá®ážáá±ááŒá áºáááºá
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
.gitlab-ci.yml
image: busybox:latest
variables:
GIT_STRATEGY: none
echo:
stage: test
script:
- echo $MSG
ááá¯ááºááá¯ááºážááááº
$ echo $MSG
B
á¡á¯ááºá ᯠB ááœáẠvariable ááá¯ááááºááŸááºáá¬ážáá«á A áááºáááºááá¯ážááá¯áá»áœááºá¯ááºááá¯á·ááŒááºáááá·áºáááºá
.gitlab-ci.yml á¡ááœááºážááŸá ááááºážááŸááºáá»á¬ážááᯠá¡ááœá±áááºáá¶ááŒááºážá [á¡áááºážá¡ááŒá áºáá»á¬áž]
á¡áá¬á¡á¬ážáá¯á¶ážááẠá€áá±áá¬ááœáẠááá¯ážááŸááºážáá«áááº- áááºááẠááá¹áá¬áá¯á¶ážááá¯ááºáᬠááááºážááŸááºáá áºáá¯ááᯠáááºááŸááºááá¯ááºáááºá ááá¯á·ááá¯áẠáááºážááᯠá¡áá¯ááºá¡ááœááºážááœáẠáááºáá±ážááá¯ááºáááºá
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
.gitlab-ci.yml
ááᯠá¡áá¯áẠ2 áᯠáááºáá®ážááá¯ááºáá¡á±á¬ááºá áááºážááá¯á·áá²á០áá áºáá¯ááœáẠ$MSG ááᯠá¡ááá¡áááºáž ááœáŸááºááŒáá«áááºá
image: busybox:latest
variables:
GIT_STRATEGY: none
MSG: "Custom in global .gitlab-ci.yml"
echo:
stage: test
script:
- echo $MSG
echo with var:
stage: test
variables:
MSG: "Custom in job .gitlab-ci.yml"
script:
- echo $MSG
ááá¯ááºááá¯ááºážááááº
- áá²á·áááºáá¶-
$ echo $MSG Custom in global .gitlab-ci.yml Job succeeded
- vars ááŒáá·áº áá²á·áááºáá¶-
$ echo $MSG Custom in job .gitlab-ci.yml Job succeeded
á¡á¯ááºá á¯áá»á¬ážááŸáá·áº .gitlab-ci.yml á¡ááœááºážááŸá á¡ááœá±áááºáá¶ááŒááºážá [á¡áááºážá¡ááŒá áºáá»á¬áž]
ááááºá¥ááᬠá áá¯ááᯠáá±á«ááºážá ááºááŒáá·áºáá¡á±á¬ááºá á¡á¯ááºá á¯ááœá²ááœá²áá»ááºáá»á¬ážááẠ.gitlab-ci.yml á¡ááœááºážááŸá ááááºážááŸááºáá»á¬ážááẠáŠážá á¬ážáá±ážáá«áááºá
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
.gitlab-ci.yml
image: busybox:latest
variables:
GIT_STRATEGY: none
MSG: "Custom in global .gitlab-ci.yml"
echo:
stage: test
script:
- echo $MSG
echo with var:
stage: test
variables:
MSG: "Custom in job .gitlab-ci.yml"
script:
- echo $MSG
ááá¯ááºááá¯ááºážááááº
- áá²á·áááºáá¶-
$ echo $MSG Y Job succeeded
- vars ááŒáá·áº áá²á·áááºáá¶-
$ echo $MSG Y Job succeeded
ááá±á¬áá»ááºáááºáááºáá»á¬ážááœáẠááááºážááŸááºáá»á¬ážááᯠáááºááŸááºááŒááºážááŸáá·áº á¡ááœá±áááºáá¶ááŒááºážá [á¡áááºážá¡ááŒá áºáá»á¬áž]
ááá±á¬áá»ááºáááºáááºáá»á¬ážááŸá ááááºážááŸááºáá»á¬ážááẠá¡ááŒá²áááºáž áŠážá á¬ážáá±ážááŒá áºáááºá ááŸáá·áº .gitlab-ci.yml á¡ááœááºážááŸá áááºááŸááºáá¬ážáá±á¬ ááááºážááŸááºáá»á¬ážááẠáááºááá·áºá¡áááºážááá¹áá០ááá«áááºáá«á
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
á¡á¯ááºá
á¯ááœá²ááœá²áá»ááºáá»á¬ážááœáẠáŠážá
á¬ážáá±ážááŸá¯ áááºážáá«ážáááºá
.gitlab-ci.yml
áááẠá¥ááá¬á០ááá¯ááºááᯠáá¯á¶ážááŒáá·áºáá¡á±á¬ááºá á€ááœáẠ.gitlab-ci.yml ááœáẠáááºááŸááºáá¬ážáá±á¬ ááááºážááŸááºáá»á¬áž áááºáá¶ááŸááá«áááºá ááá¯á·áá±á¬áº á¡á¯ááºá á¯áá»á¬ážá¡ááœááºážááŸá ááááºážááŸááºáá»á¬ážááẠáááºážááá¯á·ááẠáá¬ááœááºáá±áá±ážáááºá
image: busybox:latest
variables:
GIT_STRATEGY: none
MSG: "Custom in global .gitlab-ci.yml"
echo:
stage: test
script:
- echo $MSG
echo with var:
stage: test
variables:
MSG: "Custom in job .gitlab-ci.yml"
script:
- echo $MSG
ááá¯ááºááá¯ááºážááááº
- áá²á·áááºáá¶-
$ echo $MSG project-3 Job succeeded
- vars ááŒáá·áº áá²á·áááºáá¶-
$ echo $MSG project-3 Job succeeded
áááºááá¯ážáá»ááºážáááºáááºááŒáá·áº á¡ááœá±áááºáá¶ááŒááºážá [á¡áááºážá¡ááŒá áºáá»á¬áž]
ááá¬áááºááá¯ážáááºáááºáž áááºááá¯ážáá
áºáá¯ááŒá
áºáááºá
ááá¬áááºááá¯ážááẠNull ááá¯ááºáá«á
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
.gitlab-ci.yml
image: busybox:latest
variables:
GIT_STRATEGY: none
MSG: "Custom in global .gitlab-ci.yml"
echo:
stage: test
script:
- echo $MSG
echo with var:
stage: test
variables:
MSG: "Custom in job .gitlab-ci.yml"
script:
- echo $MSG
ááá¯ááºááá¯ááºážááááº
- áá²á·áááºáá¶-
$ echo $MSG Job succeeded
- vars ááŒáá·áº áá²á·áááºáá¶-
$ echo $MSG Job succeeded
á¡ááœá±áááºáá¶ááŸá¯ ááŸáá·áº á¡ááœá²á·áá»á¬áž áá«áááºáááºá [á¡áááºážá¡ááŒá áºáá»á¬áž]
á€ááœáẠproject-2 ááᯠproject-3 ááœááºááá·áºááœááºážáááºááŒáá¯ážá
á¬ážáá«áááºá
á€ááá
á¹á
ááœáẠá¡ááœá²á·áá»á¬ážááẠáŠážá
á¬ážáá±ážááŸááááºá
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
.gitlab-ci.yml
ááŸáá·áº .gitlab-ci.yml ááœáẠááá¹áá¬áá¯á¶ážááá¯ááºáᬠááááºážááŸááºááᯠáááºááŸááºáá«á
variables:
MSG: "With include .gitlab-ci.yml"
include:
- project: how-is-gitlab-ci-inherit-environment-variables/z/y/project-3
file: '.gitlab-ci.yml'
ááá¯ááºááá¯ááºážááááº
- áá²á·áááºáá¶-
$ echo $MSG B Job succeeded
- vars ááŒáá·áº áá²á·áááºáá¶-
$ echo $MSG B Job succeeded
á¡ááœá±á¡ááŸá áºáá»á¬áž áá«áááºáá«áááºá [á¡áááºážá¡ááŒá áºáá»á¬áž]
á€ááœáẠproject-2 ááᯠproject-3 ááœááºááá·áºááœááºážáááºááŒáá¯ážá
á¬ážáá«áááºá
á¡ááŒá±á¡áá±á¡á- á¡ááœá²á·áá»á¬ážááŸáá·áº ááá±á¬áá»ááºááá¯ááºááá¯ááºááœáẠááááºážááŸááºáá»á¬ážáááŸááá«á
ááááºážááŸááºáá»á¬ážáá«áá±á¬ á¡á¯ááºá á¯áá»á¬áž
.gitlab-ci.yml
á¡ááẠá¥ááá¬áá²á· á¡áá°áá°áá«áá²á
variables:
MSG: "With include .gitlab-ci.yml"
include:
- project: how-is-gitlab-ci-inherit-environment-variables/z/y/project-3
file: '.gitlab-ci.yml'
ááá¯ááºááá¯ááºážááááº
- áá²á·áááºáá¶-
$ echo $MSG With include .gitlab-ci.yml Job succeeded
- vars ááŒáá·áº áá²á·áááºáá¶-
$ echo $MSG Custom in job .gitlab-ci.yml Job succeeded
ááááºáá»á¬ážááŸá¬ á¡á±á¬ááºáá«á¡ááá¯ááºážááŒá áºáááºá áŠážá á¬ážáá±áž:
- ááá±á¬áá»ááºáááºáááºáá»á¬ážááœáẠááááºážááŸááºáá»á¬áž
- á¡á¯ááºá á¯áá»á¬ážááœáẠááááºážááŸááºáá»á¬áž
- á¡áá¯ááºáá»á¬ážá¡ááœááºážááœáẠáááºážááŒááºá áœá¬ áááºááŸááºáá¬ážáá±á¬ ááááºážááŸááºáá»á¬áž (ááá¯ááºáá»á¬áž á¡áá«á¡áááº)
- .gitlab-ci.yml á¡ááœááºážááŸá ááá¹áá¬áá¯á¶ážááá¯ááºáᬠááááºážááŸááºáá»á¬áž
- áá«áááºáá±á¬ááá¯ááºáá»á¬ážá¡ááœááºáž ááá¹áá¬áá¯á¶ážááá¯ááºáᬠááááºážááŸááºáá»á¬áž
áá±á¬ááºáá»ááº
á¡áááºááŸá¬ážáá¯á¶ážá¡áá»ááºááŸá¬ á
ááºážáá»ááºáž "ááááºážááŸááºááẠáá¯ááºááŸáá·áº ááá¯áá®ážá
ááºáá±á ááá¯á¡áá±ážááŒá®ážáá±" á
ááºážáá»ááºážááẠá¡á¯ááºá
á¯áá»á¬ážá¡ááœáẠáŠážá
áœá¬á¡áá¯ááºáá¯ááºáááºá ááá¯á·áá±á¬áẠ.gitlab-ci.yml á¡ááœááºážááŸá ááááºážááŸááºáá»á¬ážá¡ááœáẠáá°áá®áá±á¬á
ááºážáá»ááºážá ááá¯á·áá±á¬áº á¡ááŒá±á¡áá±á¡á±á¬ááºááœááºáᬠá¡á¯ááºá
á¯áá»á¬ážááŸá ááááºážááŸááºáá»á¬ážááᯠáááºááŸááºááá¬ážáá«á
áá±á¬ááºáá
áºáá¯á á¡áá±ážááŒá®ážáá±á¬á¡áá»ááºááŸá¬ áááºáááŸáá·áº .gitlab-ci.yml á¡ááœáẠááá¹áá¬áá¯á¶ážááá¯ááºáᬠáá±áá¬ááœááºááẠáá¯á¶ááŒá
áºááŒá±á¬ááºáž áá¬ážáááºáááºááŒá
áºáááºá áá«áááºááŸá¯ááŒá
áºáá±á«áºááá·áºááá¯ááºááẠáŠážá
á¬ážáá±ážááŒá
áºáááºá
source: www.habr.com