Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

Add possibility to run .cicd scripts from different environments (2.0.x Backport) #8972

Merged
merged 1 commit into from Apr 17, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 3 additions & 1 deletion .cicd/build.sh
Expand Up @@ -3,7 +3,7 @@ set -eo pipefail
. ./.cicd/helpers/general.sh
mkdir -p $BUILD_DIR
CMAKE_EXTRAS="-DCMAKE_BUILD_TYPE='Release' -DENABLE_MULTIVERSION_PROTOCOL_TEST=true -DBUILD_MONGO_DB_PLUGIN=true"
if [[ "$(uname)" == 'Darwin' ]]; then
if [[ "$(uname)" == 'Darwin' && $FORCE_LINUX != true ]]; then
# You can't use chained commands in execute
if [[ "$GITHUB_ACTIONS" == 'true' ]]; then
export PINNED=false
Expand Down Expand Up @@ -39,6 +39,8 @@ else # Linux
elif [[ "$GITHUB_ACTIONS" == 'true' ]]; then
ARGS="$ARGS -e JOBS"
COMMANDS="$BUILD_COMMANDS"
else
COMMANDS="$BUILD_COMMANDS"
fi
. $HELPERS_DIR/file-hash.sh $CICD_DIR/platforms/$PLATFORM_TYPE/$IMAGE_TAG.dockerfile
COMMANDS="$PRE_COMMANDS && $COMMANDS"
Expand Down
2 changes: 1 addition & 1 deletion .cicd/helpers/file-hash.sh
Expand Up @@ -4,4 +4,4 @@ set -eo pipefail
FILE_NAME=$(basename $1 | awk '{split($0,a,/\.(d|s)/); print a[1] }')
export DETERMINED_HASH=$(sha1sum $1 | awk '{ print $1 }')
export HASHED_IMAGE_TAG="eos-${FILE_NAME}-${DETERMINED_HASH}"
export FULL_TAG="eosio/ci:$HASHED_IMAGE_TAG"
export FULL_TAG="${IMAGE_NAME:-"eosio/ci"}:$HASHED_IMAGE_TAG"
12 changes: 8 additions & 4 deletions .cicd/package.sh
Expand Up @@ -2,12 +2,14 @@
set -eo pipefail
. ./.cicd/helpers/general.sh
mkdir -p $BUILD_DIR
if [[ $(uname) == 'Darwin' ]]; then
if [[ $(uname) == 'Darwin' && $FORCE_LINUX != true ]]; then
bash -c "cd build/packages && chmod 755 ./*.sh && ./generate_package.sh brew"
ARTIFACT='*.rb;*.tar.gz'
cd build/packages
[[ -d x86_64 ]] && cd 'x86_64' # backwards-compatibility with release/1.6.x
buildkite-agent artifact upload "./$ARTIFACT" --agent-access-token $BUILDKITE_AGENT_ACCESS_TOKEN
if [[ "$BUILDKITE" == 'true' ]]; then
buildkite-agent artifact upload "./$ARTIFACT" --agent-access-token $BUILDKITE_AGENT_ACCESS_TOKEN
fi
for A in $(echo $ARTIFACT | tr ';' ' '); do
if [[ $(ls $A | grep -c '') == 0 ]]; then
echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!"
Expand All @@ -19,7 +21,7 @@ if [[ $(uname) == 'Darwin' ]]; then
else # Linux
ARGS=${ARGS:-"--rm --init -v $(pwd):$MOUNTED_DIR"}
. $HELPERS_DIR/file-hash.sh $CICD_DIR/platforms/$PLATFORM_TYPE/$IMAGE_TAG.dockerfile
PRE_COMMANDS="cd $MOUNTED_DIR/build/packages && chmod 755 ./*.sh"
PRE_COMMANDS="cd $MOUNTED_DIR/build/packages && chmod 755 \"./*.sh\""
if [[ "$IMAGE_TAG" =~ "ubuntu" ]]; then
ARTIFACT='*.deb'
PACKAGE_TYPE='deb'
Expand All @@ -34,7 +36,9 @@ else # Linux
eval docker run $ARGS $(buildkite-intrinsics) $FULL_TAG bash -c \"$COMMANDS\"
cd build/packages
[[ -d x86_64 ]] && cd 'x86_64' # backwards-compatibility with release/1.6.x
buildkite-agent artifact upload "./$ARTIFACT" --agent-access-token $BUILDKITE_AGENT_ACCESS_TOKEN
if [[ "$BUILDKITE" == 'true' ]]; then
buildkite-agent artifact upload "./$ARTIFACT" --agent-access-token $BUILDKITE_AGENT_ACCESS_TOKEN
fi
for A in $(echo $ARTIFACT | tr ';' ' '); do
if [[ $(ls $A | grep -c '') == 0 ]]; then
echo "+++ :no_entry: ERROR: Expected artifact \"$A\" not found!"
Expand Down