Skip to content

fix: testing complete flow with enviroment variable and secrets 3 #130

fix: testing complete flow with enviroment variable and secrets 3

fix: testing complete flow with enviroment variable and secrets 3 #130

Workflow file for this run

name: Release
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
release:
types: [ created ]
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
jobs:
release:
environment: ACTIONS_ENV
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN_2 }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
HEX_API_KEY: ${{ secrets.HEX_API_KEY }}
GITHUB_API_URL: ${{ vars.GH_API_URL }}
PUBLISH_ARTIFACT: ${{ vars.PUBLISH_ARTIFACT }}
RELEASE_VERSION: ${{ vars.RELEASE_VERSION }}
steps:
- uses: actions/checkout@v4
# - name: Set up JDK 17
# uses: actions/setup-java@v4
# with:
# java-version: '17'
# distribution: 'adopt'
# cache: maven
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20.x
# - name: Install zip package
# uses: montudor/action-zip@v1
# - name: SetUp Angular CLI
# run: npm install -g @angular/cli
- name: Set up Elixir 1.14.3 and Otp 25
uses: erlef/setup-beam@v1
with:
elixir-version: '1.14.3'
otp-version: '25'
# - name: Build with Maven
# run: mvn -B package -DskipTests --file SpringBoot/Konex/pom.xml
# - name: Build with Angular
# run: |
# npm run ng analytics off --prefix Angular/Konex/
# npm install --prefix Angular/Konex/
# npm run build --prefix Angular/Konex/
# - name: Zip Angular dist
# run: zip -qq -r dist.zip konex-app
# working-directory: Angular/Konex/dist
- name: setup semantic-release
run: npm install -g semantic-release @semantic-release/exec @semantic-release/changelog @semantic-release/github -D
- name: release
run: npx -p @semantic-release/changelog -p @semantic-release/exec semantic-release
- name: Set variables From VERSION-TAG.env
run: |
VER=$(cat VERSION-TAG.env)
echo "$VER"
echo "RELEASE_VERSION=$VER" >> $GITHUB_ENV
- name: Validate conditions
run: |
echo "RELEASE_VERSION=${{ env.RELEASE_VERSION }}"
echo "RELEASE_VERSION=${RELEASE_VERSION}"
echo "CONDITION RELEASE_VERSION=${{ env.RELEASE_VERSION != '' }}"
echo "CONDITION PUBLISH_ARTIFACT=${{ env.PUBLISH_ARTIFACT != '' }}"
echo "GITHUB_API_URL=${{ env.GITHUB_API_URL }}"
echo "PUBLISH_ARTIFACT=${{ env.PUBLISH_ARTIFACT }}"
# - name: Restore dependencies cache
# uses: actions/cache@v4
# with:
# path: Elixir/Konex/deps
# key: ${{ runner.os }}-mix-${{ hashFiles('**/Elixir/Konex/mix.lock') }}
# restore-keys: ${{ runner.os }}-mix-
- name: Install Mix dependencies
if: ${{ (vars.PUBLISH_ARTIFACT == true) && (env.RELEASE_VERSION != '') }}
run: mix deps.get && mix deps.compile
working-directory: Elixir/Konex
env:
SKIP_GIT_HOOKS: 'true'
- name: Run Mix tests
if: ${{ (vars.PUBLISH_ARTIFACT == true) && (env.RELEASE_VERSION != '') }}
run: mix test
working-directory: Elixir/Konex
- name: Upgrade mix.exs
if: ${{ (vars.PUBLISH_ARTIFACT == true) && (env.RELEASE_VERSION != '') }}
run: sed -i 's/@version \".*\"/@version "${{ env.RELEASE_VERSION }}"/g' mix.exs
working-directory: Elixir/Konex
# - name: Commit And Push version
# if: ${{ (vars.PUBLISH_ARTIFACT == true) && (env.RELEASE_VERSION != '') }}
# uses: github-actions-x/[email protected]
# with:
# github-token: ${{ env.GITHUB_TOKEN }}
# push-branch: main
# commit-message: '[skip release] Upgrade version to ${{ env.RELEASE_VERSION }}'
# force-add: "true"
# files: mix.exs
# name: Release Bot
# email: [email protected]
- name: Publish to HEX
if: ${{ (vars.PUBLISH_ARTIFACT == true) && (env.RELEASE_VERSION != '') }}
run: mix hex.publish --replace --yes
working-directory: Elixir/Konex
env:
HEX_API_KEY: ${{ secrets.HEX_API_KEY }}