diff options
Diffstat (limited to 'ci/build.sh')
-rwxr-xr-x | ci/build.sh | 41 |
1 files changed, 29 insertions, 12 deletions
diff --git a/ci/build.sh b/ci/build.sh index 67b6d46d8..3da67053b 100755 --- a/ci/build.sh +++ b/ci/build.sh @@ -32,12 +32,18 @@ DEPLOY_DIR=$(cd "${MCP_REPO_ROOT_PATH}/mcp/scripts"; pwd) DOCKER_DIR=$(cd "${MCP_REPO_ROOT_PATH}/docker"; pwd) DOCKER_TAG=${1:-latest} DOCKER_PUSH=${2---push} # pass an empty second arg to disable push +CACHE_INVALIDATE=${CACHE_INVALIDATE:-0} +SALT_VERSION='stable 2017.7' source "${DEPLOY_DIR}/globals.sh" source "${DEPLOY_DIR}/lib.sh" source "${DEPLOY_DIR}/lib_jump_common.sh" [ ! "${TERM:-unknown}" = 'unknown' ] || export TERM=vt220 +[ "${CACHE_INVALIDATE}" = 0 ] || CACHE_INVALIDATE=$(date +%s) + +export LC_ALL=en_US.utf-8 +export LANG=en_US.utf-8 # # END of variables to customize @@ -53,34 +59,45 @@ trap do_exit SIGINT SIGTERM EXIT # Set no restrictive umask so that Jenkins can remove any residuals umask 0000 -# Clone git submodules and apply our patches -make -C "${MCP_REPO_ROOT_PATH}/mcp/patches" deepclean patches-import - pushd "${DEPLOY_DIR}" > /dev/null # Install distro packages and pip-managed prerequisites -PYTHON_BIN_PATH="$(python -m site --user-base)/bin" -PATH="$PATH:$PYTHON_BIN_PATH" notify "[NOTE] Installing required build-time distro and pip pkgs" 2 jumpserver_pkg_install 'build' -python -m pip install --upgrade pipenv --user +PYTHON_BIN_PATH="$(python3 -m site --user-base)/bin" +PATH="$PATH:$PYTHON_BIN_PATH" +# Clone git submodules and apply our patches +make -C "${MCP_REPO_ROOT_PATH}/mcp/patches" deepclean patches-import +python3 -m pip install --upgrade pipenv --user docker_install popd > /dev/null pushd "${DOCKER_DIR}" > /dev/null -python -m pipenv --two -env VIRTUALENV_ALWAYS_COPY=1 python -m pipenv install -env VIRTUALENV_ALWAYS_COPY=1 python -m pipenv install invoke +env PIPENV_HIDE_EMOJIS=1 VIRTUALENV_ALWAYS_COPY=1 python3 -m pipenv --three install +env PIPENV_HIDE_EMOJIS=1 VIRTUALENV_ALWAYS_COPY=1 python3 -m pipenv install invoke # shellcheck disable=SC2086 -python -m pipenv run \ +env PIPENV_HIDE_EMOJIS=1 python3 -m pipenv run \ invoke build saltmaster-reclass \ --require 'salt salt-formulas opnfv reclass tini-saltmaster' \ --dist=ubuntu \ - --dist-rel=xenial \ + --dist-rel=bionic \ --formula-rev=nightly \ --opnfv-tag="${DOCKER_TAG}" \ - --salt='stable 2017.7' \ + --salt="${SALT_VERSION}" \ + --build-arg-extra " \ + CACHE_INVALIDATE=\"${CACHE_INVALIDATE}\"" \ + ${DOCKER_PUSH} + +env PIPENV_HIDE_EMOJIS=1 python3 -m pipenv run \ + invoke build saltminion-maas \ + --require 'maas' \ + --dist=ubuntu \ + --dist-rel=bionic \ + --opnfv-tag="${DOCKER_TAG}" \ + --salt="${SALT_VERSION}" \ + --build-arg-extra " \ + CACHE_INVALIDATE=\"${CACHE_INVALIDATE}\"" \ ${DOCKER_PUSH} popd > /dev/null |