35 lines
1.1 KiB
Bash
35 lines
1.1 KiB
Bash
#!/bin/bash
|
|
#
|
|
# Short script that is sourced in to the CI environment
|
|
# in .gitlab-ci.yml
|
|
#
|
|
# Sets IS_PUBLIC and IS_PRIVATE based on branch type
|
|
#
|
|
# Tweaks .gitmodules file for private builds
|
|
|
|
[ -z $CI_COMMIT_REF_NAME ] && echo "This internal script should only be run by a Gitlab CI runner." && exit 1
|
|
|
|
REF=$CI_COMMIT_REF_NAME
|
|
|
|
# Public branches are:
|
|
# release branches - start with release/
|
|
# release tags - look like vXX.YY or vXX.YY.ZZ with an optional dash followed by anything on the end
|
|
# master branch
|
|
#
|
|
# These POSIX REs are equivalent to the REs in some "only:" sections of the gitlab-ci.yml file
|
|
#
|
|
if [[ $REF = "master" || $REF =~ ^release/v || $REF =~ ^v[0-9]+\.[0-9]+(\.[0-9]+)?(-|$) ]]; then
|
|
export IS_PUBLIC=1
|
|
else
|
|
export IS_PRIVATE=1
|
|
fi
|
|
|
|
unset REF
|
|
|
|
set -e
|
|
|
|
if [[ $IS_PRIVATE ]]; then
|
|
# Redirect git submodules from public github to our private gitlab server
|
|
sed -i "s%https://github.com/espressif/esp32-wifi-lib%${GITLAB_SSH_SERVER}/idf/esp32-wifi-lib%" .gitmodules
|
|
sed -i "s%https://github.com/espressif/esp32-bt-lib%${GITLAB_SSH_SERVER}/idf/esp32-bt-lib%" .gitmodules
|
|
fi
|