klip-sdk
Version:
JavaScript SDK to interact with klip App2App requests
126 lines (114 loc) • 4.48 kB
YAML
name: Prepare values for GX github actions
author: Bolt lee
inputs:
rc_tag:
description: ''
required: false
default: 'v0.0.1-rc.1'
ref:
description: ''
required: false
default: 'test'
head_ref:
description: ''
required: false
default: 'test'
type:
description: ''
required: false
default: 'test'
outputs:
project:
description: 'Get the current project name'
value: ${{ steps.set-values.outputs.project }}
env:
description: 'Get deployed environment'
value: ${{ steps.set-values.outputs.env }} # dev, qa
deploy_env:
description: 'Get deployed environment'
value: ${{ steps.set-values.outputs.deploy_env }} # dev, qa
deploy_env_2:
description: 'Get deployed environment'
value: ${{ steps.set-values.outputs.deploy_env_2 }} # dev2, qa2
tag:
description: 'Get tag without rc'
value: ${{ steps.set-values.outputs.tag }}
isperf:
description: ''
value: ${{ steps.set-values.outputs.isperf }}
runs:
using: "composite"
steps:
- name: Set custom env values
id: set-values
shell: bash
run: |
REF=${{inputs.ref}}
HEAD_REF=${{ inputs.head_ref }}
TYPE=${{inputs.type}}
QA_TAG_RC='v*[0-9].*[0-9].*[0-9]-rc.*[0-9]'
QA_TAG_ALPHA='v*[0-9].*[0-9].*[0-9]-alpha.*[0-9]'
echo "TYPE-REF : ${{ inputs.type }}-${{ inputs.ref }}"
DEPLOY_ENV=dev
env=dev
echo "** SET project **"
echo "project=$(echo ${{ github.repository }} | sed -E 's|(^.*\/)||')" >> $GITHUB_OUTPUT
if [[ "${TYPE}" == "tag" ]]; then
env=qa
if [[ "${REF}" =~ ${QA_TAG_RC} ]]; then
echo "deploy_env=$( echo qa )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo qa )" >> $GITHUB_OUTPUT
echo "isperf=$( echo perf )" >> $GITHUB_OUTPUT
echo "tag=$(echo ${REF} | sed -E 's|(\-.*)||')" >> $GITHUB_OUTPUT
echo "REF : ${REF}"
if [[ "${REF}" =~ "qa2" ]]; then
echo "deploy_env=$( echo qa2 )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo qa2 )" >> $GITHUB_OUTPUT
fi
elif [[ "${REF}" =~ ${QA_TAG_ALPHA} ]]; then
echo "deploy_env=$( echo qa )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo qa )" >> $GITHUB_OUTPUT
echo "isperf=$( echo perf )" >> $GITHUB_OUTPUT
echo "tag=$(echo ${REF} | sed -E 's|(\-.*)||')" >> $GITHUB_OUTPUT
echo "REF : ${REF}"
if [[ "${REF}" =~ "qa2" ]]; then
echo "deploy_env=$( echo qa2 )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo qa2 )" >> $GITHUB_OUTPUT
fi
fi
elif [[ "${TYPE}" == "branch" ]]; then
if [[ "${REF}" == "dev2" ]]; then
echo "deploy_env=$( echo dev )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo dev2 )" >> $GITHUB_OUTPUT
elif [[ "${REF}" == "dev3" ]]; then
echo "deploy_env=$( echo dev3 )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo dev3 )" >> $GITHUB_OUTPUT
elif [[ "${REF:0:3}" == "dev" ]]; then
echo "deploy_env=$( echo dev )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo dev )" >> $GITHUB_OUTPUT
elif [[ "${REF}" =~ "hotfix" ]]; then
env=qa
echo "deploy_env=$( echo qa )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo qa2 )" >> $GITHUB_OUTPUT
elif [[ "${REF:0:6}" == "master" ]]; then
env=staging
echo "deploy_env=$( echo staging )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo staging )" >> $GITHUB_OUTPUT
fi
fi
if [[ "${HEAD_REF}" =~ "hotfix" ]]; then
env=qa
echo "deploy_env=$( echo qa )" >> $GITHUB_OUTPUT
echo "deploy_env_2=$( echo qa2 )" >> $GITHUB_OUTPUT
fi
if [[ "${{ inputs.rc_tag }}" != "v0.0.1-rc.1" ]]; then
echo "** SET tag without rc **"
echo "tag=$(echo ${{ inputs.rc_tag }} | sed -E 's|(\-.*)||')" >> $GITHUB_OUTPUT
fi
echo "env=$( echo $env )" >> $GITHUB_OUTPUT
- name: check deploy_env
shell: bash
run: |
echo "DEPLOY_ENV:${{ steps.set-values.outputs.deploy_env}}"
echo "DEPLOY_ENV_2:${{ steps.set-values.outputs.deploy_env_2}}"
echo "env:${{ steps.set-values.outputs.env}}"