Merge pull request #8328 from subhamkrai/action-for-release-build
ci: action for release build
This commit is contained in:
2 files changed
+33
-12
No files matched your search
@@ -3,6 +3,9 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- release-*
|
||||
tags:
|
||||
- v*
|
||||
|
||||
defaults:
|
||||
run:
|
||||
@@ -37,11 +40,13 @@ jobs:
|
||||
aws-region: us-east-1
|
||||
|
||||
- name: unshallow
|
||||
run: git fetch --prune --unshallow --tags
|
||||
run: git fetch --prune --unshallow --tags --force
|
||||
|
||||
# creating custom env var
|
||||
- name: set env
|
||||
run: echo "BRANCH_NAME=${GITHUB_REF##*/}" >> $GITHUB_ENV
|
||||
run: |
|
||||
echo "BRANCH_NAME=${GITHUB_REF##*/}" >> $GITHUB_ENV
|
||||
echo "GITHUB_REF"=${GITHUB_REF} >> $GITHUB_ENV
|
||||
|
||||
- name: build and release
|
||||
env:
|
||||
@@ -49,4 +54,10 @@ jobs:
|
||||
BRANCH_NAME: ${{ env.BRANCH_NAME }}
|
||||
AWS_USR: ${{ secrets.AWS_USR }}
|
||||
AWS_PSW: ${{ secrets.AWS_PSW }}
|
||||
run: tests/scripts/build-release.sh
|
||||
GITHUB_REF: $ {{ env.GITHUB_REF }}
|
||||
run: |
|
||||
if [[ ${GITHUB_REF} =~ master|v ]]; then
|
||||
tests/scripts/build-release.sh publish_and_promote
|
||||
else
|
||||
tests/scripts/build-release.sh publish
|
||||
fi
|
||||
@@ -5,6 +5,13 @@ set -ex
|
||||
# FUNCTIONS #
|
||||
#############
|
||||
|
||||
|
||||
if [[ ${GITHUB_REF} =~ master ]]; then
|
||||
CHANNEL=master
|
||||
else
|
||||
CHANNEL=release
|
||||
fi
|
||||
|
||||
function build() {
|
||||
# set VERSION to a dummy value since Jenkins normally sets it for us. Do this to make Helm happy and not fail with "Error: Invalid Semantic Version"
|
||||
build/run make VERSION=0 build.all
|
||||
@@ -12,18 +19,21 @@ function build() {
|
||||
build/run make mod.check
|
||||
}
|
||||
|
||||
if [[ ${BRANCH_NAME} =~ release- ]]; then
|
||||
build
|
||||
build/run make -C build/release build BRANCH_NAME=${BRANCH_NAME} TAG_WITH_SUFFIX=true GIT_API_TOKEN=${GIT_API_TOKEN}
|
||||
git status &
|
||||
git diff &
|
||||
build/run make -C build/release publish BRANCH_NAME=${BRANCH_NAME} TAG_WITH_SUFFIX=true AWS_ACCESS_KEY_ID=${AWS_USR} AWS_SECRET_ACCESS_KEY=${AWS_PSW} GIT_API_TOKEN=${GIT_API_TOKEN}
|
||||
elif [[ ${BRANCH_NAME} =~ master|tag ]]; then
|
||||
function publish_and_promote() {
|
||||
build
|
||||
build/run make -C build/release build BRANCH_NAME=${BRANCH_NAME} GIT_API_TOKEN=${GIT_API_TOKEN}
|
||||
git status &
|
||||
git diff &
|
||||
build/run make -C build/release publish BRANCH_NAME=${BRANCH_NAME} AWS_ACCESS_KEY_ID=${AWS_USR} AWS_SECRET_ACCESS_KEY=${AWS_PSW} GIT_API_TOKEN=${GIT_API_TOKEN}
|
||||
# automatically promote the master builds
|
||||
build/run make -C build/release promote BRANCH_NAME=master CHANNEL=master AWS_ACCESS_KEY_ID=${AWS_USR} AWS_SECRET_ACCESS_KEY=${AWS_PSW}
|
||||
fi
|
||||
build/run make -C build/release promote BRANCH_NAME=${BRANCH_NAME} CHANNEL=${CHANNEL} AWS_ACCESS_KEY_ID=${AWS_USR} AWS_SECRET_ACCESS_KEY=${AWS_PSW}
|
||||
|
||||
}
|
||||
|
||||
function publish() {
|
||||
build
|
||||
build/run make -C build/release build BRANCH_NAME=${BRANCH_NAME} TAG_WITH_SUFFIX=true GIT_API_TOKEN=${GIT_API_TOKEN}
|
||||
git status &
|
||||
git diff &
|
||||
build/run make -C build/release publish BRANCH_NAME=${BRANCH_NAME} TAG_WITH_SUFFIX=true AWS_ACCESS_KEY_ID=${AWS_USR} AWS_SECRET_ACCESS_KEY=${AWS_PSW} GIT_API_TOKEN=${GIT_API_TOKEN}
|
||||
}
|
||||
Reference in new issue
Block a user