X-Git-Url: https://gerrit.nordix.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=jjb%2Fcloud-infra%2Fscripts%2Fpromote.sh;fp=jjb%2Fcloud-infra%2Fscripts%2Fpromote.sh;h=a6ac651cad0e68facbd4c152ad12ffeb5d63579a;hb=a41cb97c1eb86df7fd495dff15100b2e7a005a0c;hp=0000000000000000000000000000000000000000;hpb=f872a302eaf61f5ce53d62fbf581460f3b61763e;p=infra%2Fcicd.git diff --git a/jjb/cloud-infra/scripts/promote.sh b/jjb/cloud-infra/scripts/promote.sh new file mode 100755 index 00000000..a6ac651c --- /dev/null +++ b/jjb/cloud-infra/scripts/promote.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# ============LICENSE_START======================================================= +# Copyright (C) 2019 The Nordix Foundation. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= + +set -o nounset +set -o errexit +set -o pipefail + +if [[ "$PROMOTE_STACK" != "true" ]]; then + echo "Info : Promotion is disabled. Skipping!" + exit 0 +fi + +echo "Info : Promoting stack!" + +cd /tmp +for BUILD_ARTIFACT in $BUILD_ARTIFACTS; do + echo "Info : Generating checksums for $BUILD_ARTIFACT" + ARTIFACT_MD5SUM=$(md5sum $BUILD_ARTIFACT | cut -d' ' -f1) + ARTIFACT_SHASUM=$(shasum $BUILD_ARTIFACT | cut -d' ' -f1) + ARTIFACT_SHA256SUM=$(sha256sum $BUILD_ARTIFACT | cut -d' ' -f1) + + # NOTE (fdegir): get rid of /tmp from BUILD_ARTIFACT + REMOTE_ARTIFACT=$(echo $BUILD_ARTIFACT | sed 's/.*\///g') + + # NOTE (fdegir): promotion is copying artifacts to latest folder for the release/branch + PROMOTED_ARTIFACT_URL=$(echo $NORDIX_ARTIFACT_URL | sed "s/$BUILD_IDENTIFIER/latest/g") + + echo "Info : Uploading $BUILD_ARTIFACT to Nordix Artifactory" + curl -s -S \ + -H "X-JFrog-Art-Api:$NORDIX_ARM_TOKEN" \ + -H "X-Checksum-MD5:$ARTIFACT_MD5SUM" \ + -H "X-Checksum-Sha1:$ARTIFACT_SHASUM" \ + -H "X-Checksum-Sha256:$ARTIFACT_SHA256SUM" \ + -T $BUILD_ARTIFACT \ + "$PROMOTED_ARTIFACT_URL/$REMOTE_ARTIFACT" + echo "Info : Artifact $BUILD_ARTIFACT is promoted to $PROMOTED_ARTIFACT_URL/$REMOTE_ARTIFACT" +done