ci: Simplify github deployment
CI_COMMIT_REF_NAME lets us use a single line to git push
This commit is contained in:
parent
ac19aef689
commit
762c5fe996
1 changed files with 4 additions and 9 deletions
|
@ -335,7 +335,7 @@ test_esp_err_to_name_on_host:
|
||||||
- ./gen_esp_err_to_name.py
|
- ./gen_esp_err_to_name.py
|
||||||
- git diff --exit-code -- ../components/esp32/esp_err_to_name.c || (echo 'Differences found. Please run gen_esp_err_to_name.py and commit the changes.'; exit 1)
|
- git diff --exit-code -- ../components/esp32/esp_err_to_name.c || (echo 'Differences found. Please run gen_esp_err_to_name.py and commit the changes.'; exit 1)
|
||||||
|
|
||||||
push_master_to_github:
|
push_to_github:
|
||||||
stage: deploy
|
stage: deploy
|
||||||
image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
|
image: $CI_DOCKER_REGISTRY/esp32-ci-env$BOT_DOCKER_IMAGE_TAG
|
||||||
tags:
|
tags:
|
||||||
|
@ -346,8 +346,6 @@ push_master_to_github:
|
||||||
- /^v\d+\.\d+(\.\d+)?($|-)/
|
- /^v\d+\.\d+(\.\d+)?($|-)/
|
||||||
when: on_success
|
when: on_success
|
||||||
dependencies: []
|
dependencies: []
|
||||||
variables:
|
|
||||||
GITHUB_PUSH_REFS: refs/remotes/origin/release refs/remotes/origin/master
|
|
||||||
before_script: *do_nothing_before
|
before_script: *do_nothing_before
|
||||||
script:
|
script:
|
||||||
- mkdir -p ~/.ssh
|
- mkdir -p ~/.ssh
|
||||||
|
@ -358,12 +356,9 @@ push_master_to_github:
|
||||||
- echo -e "Host github.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
|
- echo -e "Host github.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
|
||||||
- git remote remove github &>/dev/null || true
|
- git remote remove github &>/dev/null || true
|
||||||
- git remote add github git@github.com:espressif/esp-idf.git
|
- git remote add github git@github.com:espressif/esp-idf.git
|
||||||
# What the next line of script does: goes through the list of refs for all branches we push to github,
|
# Need separate push commands for tag builds and for branch builds
|
||||||
# generates a snippet of shell which is evaluated. The snippet checks CI_COMMIT_SHA against the SHA
|
- "[ -n \"${CI_COMMIT_TAG}\" ] && git push github ${CI_COMMIT_TAG}"
|
||||||
# (aka objectname) at tip of each branch, and if any SHAs match then it checks out the local branch
|
- "[ -z \"${CI_COMMIT_TAG}\" ] && git push github ${CI_COMMIT_SHA}:refs/heads/${CI_COMMIT_REF_NAME}"
|
||||||
# and then pushes that ref to a corresponding github branch
|
|
||||||
- eval $(git for-each-ref --shell bash --format 'if [ $CI_COMMIT_SHA == %(objectname) ]; then git checkout -B %(refname:strip=3); git push --follow-tags github %(refname:strip=3); fi;' $GITHUB_PUSH_REFS)
|
|
||||||
|
|
||||||
|
|
||||||
deploy_docs:
|
deploy_docs:
|
||||||
stage: host_test
|
stage: host_test
|
||||||
|
|
Loading…
Reference in a new issue