diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index eeddd0b559b8d623567721b16c14d3b7b27f34a7..a408c43f5b3edc524270874f9327cb32b0f8abf5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -52,7 +52,7 @@ installbinaries: script: - git clean -ffdx - mkdir -p ~/.elixxir - - ./download_cmix_binaries.sh + - ./download_cmix_binaries.sh l d - mkdir -p /opt/xxnetwork/lib - cp bin/libpowmosm75.so /opt/xxnetwork/lib/ - "chmod +x *" diff --git a/download_cmix_binaries.sh b/download_cmix_binaries.sh index 4085efe0052ba1677158302d0a303bd543970f8e..62ffdf6d662597e8cc5ddffd16da1bb05a5a798d 100755 --- a/download_cmix_binaries.sh +++ b/download_cmix_binaries.sh @@ -1,12 +1,26 @@ #!/usr/bin/env bash # Get platform parameter +# === LINUX === if [[ $1 == "l" ]] ||[[ $1 == "linux" ]] || [[ -z $1 ]]; then + +if [[ $2 == "d" ]]; then BIN=".linux64?job=build" +else + BIN=".linux64" +fi echo "Platform set to Linux" + +# === MACOS === elif [[ $1 == "m" ]] || [[ $1 == "mac" ]]; then + +if [[ $2 == "d" ]]; then BIN=".darwin64?job=build" +else + BIN=".darwin64" +fi echo "Platform set to Mac" + else echo "Invalid platform argument: $1" exit 0 @@ -14,9 +28,11 @@ fi # Set up the URL for downloading the binaries DEFAULTBRANCH=${DEFAULTBRANCH:="release"} -REPOS_API=${REPOS_API:="https://gitlab.com/api/v4/projects/elixxir%2F"} -# Set up the gitlab access token -PATKEY=${PATKEY:="rBxQ6BvKP-eFxxeM3Ugm"} +if [[ $2 == "d" ]]; then + REPOS_API=${REPOS_API:="https://gitlab.com/api/v4/projects/elixxir%2F"} +else + REPOS_API=${REPOS_API:="https://elixxir-bins.s3-us-west-1.amazonaws.com"} +fi # Make the binaries directory download_path="$(pwd)/bin" @@ -38,6 +54,7 @@ echo "(Note: if you forced a branch, that is checked first!)" for BRANCH in $(echo "forcedbranch" $FBRANCH $FBRANCH2 $DEFAULTBRANCH); do echo "Attempting downloads from: $BRANCH" +if [[ $2 == "d" ]]; then BRANCH_URL=${BRANCH_URL:="jobs/artifacts/$BRANCH/raw/release"} # Get URLs for artifacts from all relevant repos UDB_URL=${UDB_URL:="${REPOS_API}user-discovery-bot/$BRANCH_URL/udb$BIN"} @@ -47,43 +64,52 @@ for BRANCH in $(echo "forcedbranch" $FBRANCH $FBRANCH2 $DEFAULTBRANCH); do CLIENT_URL=${CLIENT_URL:="${REPOS_API}client/$BRANCH_URL/client$BIN"} SERVER_GPU_URL=${SERVER_GPU_URL:="${REPOS_API}server/$BRANCH_URL/server-cuda.linux64?job=build"} GPULIB_URL=${GPULIB_URL:="${REPOS_API}server/$BRANCH_URL/libpowmosm75.so?job=build"} +else + UDB_URL=${UDB_URL:="${REPOS_API}/$BRANCH/udb$BIN"} + SERVER_URL=${SERVER_URL:="${REPOS_API}/$BRANCH/server$BIN"} + GW_URL=${GW_URL:="${REPOS_API}/$BRANCH/gateway$BIN"} + PERMISSIONING_URL=${PERMISSIONING_URL:="${REPOS_API}/$BRANCH/registration.stateless$BIN"} + CLIENT_URL=${CLIENT_URL:="${REPOS_API}/$BRANCH/client$BIN"} +fi set -x # Silently download the UDB binary to the provisioning directory if [ ! -f $download_path/udb ] && [[ "$UDB_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/udb" ${UDB_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/udb" ${UDB_URL} fi # Silently download the Server binary to the provisioning directory if [ ! -f $download_path/server ] && [[ "$SERVER_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/server" ${SERVER_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/server" ${SERVER_URL} fi # Silently download the Gateway binary to the provisioning directory if [ ! -f $download_path/gateway ] && [[ "$GW_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/gateway" ${GW_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/gateway" ${GW_URL} fi # Silently download the permissioning binary to the provisioning directory if [ ! -f $download_path/permissioning ] && [[ "$PERMISSIONING_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/permissioning" ${PERMISSIONING_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/permissioning" ${PERMISSIONING_URL} fi # Silently download the permissioning binary to the provisioning directory if [ ! -f $download_path/client ] && [[ "$CLIENT_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/client" ${CLIENT_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/client" ${CLIENT_URL} fi +if [[ $2 == "d" ]]; then # Silently download the Server binary to the provisioning directory if [ ! -f $download_path/server-cuda ] && [[ "$SERVER_GPU_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/server-cuda" ${SERVER_GPU_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/server-cuda" ${SERVER_GPU_URL} fi # Silently download the GPU Library to the provisioning directory if [ ! -f $download_path/libpowmosm75.so ] && [[ "$GPULIB_URL" != *"forcedbranch"* ]]; then - curl -s -f -L -H "PRIVATE-TOKEN: $PATKEY" -o "$download_path/libpowmosm75.so" ${GPULIB_URL} + curl -s -f -L -H "PRIVATE-TOKEN: $GITLAB_ACCESS_TOKEN" -o "$download_path/libpowmosm75.so" ${GPULIB_URL} fi +fi set +x