Skip to content

update environment for linux #13

update environment for linux

update environment for linux #13

Workflow file for this run

name: release-desktop-app
on:
push:
tags:
- "v*.*.*"
jobs:
create-draft-release:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Create Draft Release for ${{ github.ref_name }}
env:
GH_TOKEN: ${{ secrets.PERSONAL_GH_TOKEN }}
run: gh release create ${{ github.ref_name }} --draft --title "${{ github.ref_name }}" --generate-notes
create-release-linux:
runs-on: ubuntu-latest
needs: create-draft-release
environment: "Production – umami-v2"
steps:
- name: Check out code
uses: actions/checkout@v4
- uses: pnpm/action-setup@v3
with:
version: 9.9.0
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: 20.18.0
cache: "pnpm"
- name: Install dependencies
run: pnpm install
- name: Build
run: pnpm build
- name: Import GPG key
uses: crazy-max/ghaction-import-gpg@v6
with:
gpg_private_key: ${{ env.GPG_PRIVATE_KEY }}
passphrase: ${{ env.GPG_PASSPHRASE }}
fingerprint: ${{env.GPG_KEY_ID }}
git_user_signingkey: true
- name: Generate deb and rpm files
working-directory: apps/desktop
run: pnpm run electron:package:linux
- name: Sign the deb and rpm files using dpkg-sig and rpm-sign
working-directory: apps/desktop
run: |
sudo apt install -y dpkg-sig
dpkg-sig --sign builder -k ${{ env.GPG_KEY_ID }} ./dist/*.deb
rpm --addsign ./dist/*.rpm
- name: Upload deb and rpm files
working-directory: apps/desktop
env:
GH_TOKEN: ${{ secrets.PERSONAL_GH_TOKEN }}
run: gh release upload ${{ github.ref_name }} ./dist/*.deb ./dist/*.rpm
create-release-mac:
runs-on: macos-latest
needs: create-draft-release
steps:
- name: Check out code
uses: actions/checkout@v4
- uses: pnpm/action-setup@v3
with:
version: 9.9.0
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: 20.18.0
cache: "pnpm"
- name: Install dependencies
run: pnpm install
- name: Build
run: pnpm build
- name: Build and sign mac app
working-directory: apps/desktop
env:
CI: true
GH_TOKEN: ${{ secrets.PERSONAL_GH_TOKEN }}
CSC_LINK: ${{ secrets.CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_APP_SPECIFIC_PASSWORD }}
run: pnpm run electron:package:mac