Skip to content

CICD

CICD #227

Workflow file for this run

name: CICD
on:
push:
env:
GITHUB_TOKEN: ${{ secrets.TOKEN }}
jobs:
semantic:
runs-on: ubuntu-latest
outputs:
new_release: ${{ steps.semantic.outputs.new_release_published }}
version: ${{ steps.semantic.outputs.new_release_version }}
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Semantic Release
uses: cycjimmy/semantic-release-action@v4
id: semantic
env:
GITHUB_TOKEN: ${{ secrets.TOKEN }}
release:
runs-on: ${{ matrix.os }}
needs: [semantic]
if: needs.semantic.outputs.new_release == 'true'
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Setup Node.js, NPM
uses: actions/setup-node@v4
with:
node-version: latest
- name: Package
run: |
dotnet tool install --global AzureSignTool --version 4.0.1
jq '.version = "${{ needs.semantic.outputs.version }}"' package.json > temp && mv temp package.json
cat package.json
rm -rf node_modules package-lock.json
npm install
npm run package
shell: bash
env:
AZURE_KEY_VAULT_URI: ${{ secrets.AZURE_KEY_VAULT_URI }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_CERT_NAME: ${{ secrets.AZURE_CERT_NAME }}
- name: Release
run: |
cd release/${{ needs.semantic.outputs.version }}
gh release upload v${{ needs.semantic.outputs.version }} geodeapp* latest*
shell: bash
merge:
runs-on: ubuntu-latest
needs: [release]
if: github.ref == 'refs/heads/master'
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Merge master -> next
uses: devmasx/merge-branch@master
with:
type: now
from_branch: master
target_branch: next
github_token: ${{ secrets.TOKEN }}