gitlab cicd 条件执行
cicd 条件执行
·
gitlab条件、分支判断的demo
可以查看官文档:更加详细。可以实现指定分支分条件运行或者指定job分条件运行等。
---
.script:
stage: build
script:
- env | grep CI_COMMIT_ | sort
- if test -n "$CI_COMMIT_BRANCH" ; then echo "test -n CI_COMMIT_BRANCH = true"; else echo "test -n CI_COMMIT_BRANCH = false" ; fi
- if test -n "$CI_COMMIT_TAG" ; then echo "test -n CI_COMMIT_TAG = true"; else echo "test -n CI_COMMIT_TAG = false" ; fi
- if test -z "$CI_COMMIT_BRANCH" ; then echo "test -z CI_COMMIT_BRANCH = true"; else echo "test -z CI_COMMIT_BRANCH = false" ; fi
- if test -z "$CI_COMMIT_TAG" ; then echo "test -z CI_COMMIT_TAG = true"; else echo "test -z CI_COMMIT_TAG = false" ; fi
# ------------------------------------------------------------------------------
# ONLY, BRANCH
only_branch_no_rhs: # run
extends: .script
only:
variables:
- $CI_COMMIT_BRANCH
only_branch_rhs_diff_null: # run
extends: .script
only:
variables:
- $CI_COMMIT_BRANCH != null
only_branch_rhs_eq_null:
extends: .script
only:
variables:
- $CI_COMMIT_BRANCH == null
only_branch_rhs_diff_empty: # run
extends: .script
only:
variables:
- $CI_COMMIT_BRANCH != ""
only_branch_rhs_eq_empty:
extends: .script
only:
variables:
- $CI_COMMIT_BRANCH == ""
# ------------------------------------------------------------------------------
# RULES, BRANCH
rules_branch_no_rhs: # run
extends: .script
rules:
- if: $CI_COMMIT_BRANCH
when: always
- when: never
rules_branch_rhs_diff_null: # run
extends: .script
rules:
- if: $CI_COMMIT_BRANCH != null
when: always
- when: never
rules_branch_rhs_eq_null:
extends: .script
rules:
- if: $CI_COMMIT_BRANCH == null
when: always
- when: never
rules_branch_rhs_diff_empty: # run
extends: .script
rules:
- if: $CI_COMMIT_BRANCH != ""
when: always
- when: never
rules_branch_rhs_eq_empty:
extends: .script
rules:
- if: $CI_COMMIT_BRANCH == ""
when: always
- when: never
# ------------------------------------------------------------------------------
# ONLY, BRANCH
only_tag_no_rhs:
extends: .script
only:
variables:
- $CI_COMMIT_TAG
only_tag_rhs_diff_null:
extends: .script
only:
variables:
- $CI_COMMIT_TAG != null
only_tag_rhs_eq_null: # run
extends: .script
only:
variables:
- $CI_COMMIT_TAG == null
only_tag_rhs_diff_empty: # run
extends: .script
only:
variables:
- $CI_COMMIT_TAG != ""
only_tag_rhs_eq_empty:
extends: .script
only:
variables:
- $CI_COMMIT_TAG == ""
# ------------------------------------------------------------------------------
# RULES, BRANCH
rules_tag_no_rhs:
extends: .script
rules:
- if: $CI_COMMIT_TAG
when: always
- when: never
rules_tag_rhs_diff_null:
extends: .script
rules:
- if: $CI_COMMIT_TAG != null
when: always
- when: never
rules_tag_rhs_eq_null: # run
extends: .script
rules:
- if: $CI_COMMIT_TAG == null
when: always
- when: never
rules_tag_rhs_diff_empty: # run
extends: .script
rules:
- if: $CI_COMMIT_TAG != ""
when: always
- when: never
rules_tag_rhs_eq_empty:
extends: .script
rules:
- if: $CI_COMMIT_TAG == ""
when: always
- when: never
2, 部分文档连接
1, gitlab中文文档 https://nucosc.gitee.io/gitlabdocs/
2, 中文文档, apache出的,可以下载阅读的 https://gitlab.apachecn.org/#/
3,英文官方文档
https://docs.gitlab.com/
4,讲解的不错的文档 https://www.jianshu.com/p/3c0cbb6c2936#### gitlab条件、分支判断的demo
可以查看官文档:更加详细。可以实现指定分支分条件运行或者指定job分条件运行等。
更多推荐
所有评论(0)