Skip to content

feat: added build workflow pipeline #18

feat: added build workflow pipeline

feat: added build workflow pipeline #18

Workflow file for this run

name: Build/release
on:
push:
paths:
- 'apps/software/**'
- '.github/workflows/**'
workflow_dispatch:
jobs:
version_check:
runs-on: ubuntu-latest
outputs:
current_version: ${{ steps.package-version.outputs.current-version }}
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Get Software Version
id: package-version
uses: martinbeentjes/[email protected]
with:
path: apps/software
release:
runs-on: windows-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js and pnpm
uses: actions/setup-node@v3
with:
node-version: 21
- name: Install pnpm
run: npm install -g pnpm
- name: Install Workspace's dependencies
run: pnpm install
- name: Install Software dependencies
run: pnpm install --ignore-workspace
working-directory: apps/software
- name: Build Files
run: npm run build
working-directory: apps/software
- name: Create Release Binaries
run: npm run make
working-directory: apps/software
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v${{ needs.version_check.outputs.current_version }}
release_name: ${{ github.event.head_commit.message }}
draft: false
prerelease: false
- name: Upload Release Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./apps/software/out/make/squirrel.windows/x64/CTC-IMS.exe
asset_name: CTC-IMS.exe
asset_content_type: application/x-msdownload