-
Notifications
You must be signed in to change notification settings - Fork 2
80 lines (73 loc) · 2.77 KB
/
main.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
name: App Builder
on:
push:
tags:
- "v*"
workflow_dispatch:
jobs:
release:
strategy:
fail-fast: false
matrix:
platform: [macos-latest, ubuntu-latest, windows-latest]
include:
- os: ubuntu-latest
rust_target: x86_64-unknown-linux-gnu
- os: macos-latest
rust_target: x86_64-apple-darwin
- os: macos-latest
rust_target: aarch64-apple-darwin
- os: windows-latest
rust_target: x86_64-pc-windows-msvc
runs-on: ${{ matrix.platform }}
env:
VITE_GOOGLE_CLIENT_ID: ${{ secrets.VITE_GOOGLE_CLIENT_ID }}
VITE_GOOGLE_CLIENT_SECRET: ${{ secrets.VITE_GOOGLE_CLIENT_SECRET }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
# for projects that use labels and PRs,
# try https://github.com/mikepenz/release-changelog-builder-action instead
# TODO: use API to collect commit messages
- name: Build Changelog
id: build_changelog
run: echo "changelog=- ADD CHANGELOG" >> $GITHUB_OUTPUT
- name: Node.js setup
uses: actions/setup-node@v4
# NOTE: enterprise developers may hard code a version
with:
node-version: latest
# node-version-file: '.nvmrc'
- name: Install Rust toolchain
run: |
rustup update --no-self-update
- name: Install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev
- name: Install app dependencies
run: npm install
- name: Build frontend
run: npm run build
env:
VITE_GOOGLE_CLIENT_ID: ${{ secrets.VITE_GOOGLE_CLIENT_ID }}
VITE_GOOGLE_CLIENT_SECRET: ${{ secrets.VITE_GOOGLE_CLIENT_SECRET }}
- name: Build the app
uses: tauri-apps/tauri-action@v0
# if u get Error: Resource not accessible by integration
# go to repository Settings => Action => General => Workflow permissions => Switch to Read and Write permisions
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }}
TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }}
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
with:
# tauri-action replaces \_\_VERSION\_\_ with the app version
tagName: ${{ github.ref_name }}
releaseName: "Sample Release for Modern Desktop App v__VERSION__"
releaseBody: |
${{steps.build_changelog.outputs.changelog}}
See the assets to download this version and install.
releaseDraft: true
prerelease: false