Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci(build): setup build ci #5

Merged
merged 14 commits into from
Jul 12, 2024
Merged
19 changes: 19 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# <!-- Why this PR? -->

Resolved: <!-- #ISSUE_ID -->

## What's being changed?

<!--

(if available, include any code snippets, screenshots, or gif files)

Check off the following:

1. I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).

- For content changes, you will also see an automatically generated comment with links directly to pages you've modified. The comment won't appear if your PR only edits files in the data directory.

2. For content changes, I have completed the self-review checklist.

-->
68 changes: 68 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Build Grassator

on:
push:
branches: ["main"]
pull_request:
branches: ["main"]

env:
CARGO_TERM_COLOR: always
PKG_CONFIG_PATH: /usr/lib/x86_64-linux-gnu/pkgconfig

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
name: Build on ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
platform: [ubuntu-latest, macos-latest, windows-latest]

runs-on: ${{ matrix.platform }}

steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: recursive

- uses: pnpm/action-setup@v4
name: Install pnpm
with:
version: 9
run_install: false

- name: Setup Node.js 20
uses: actions/setup-node@v4
with:
node-version: 20
cache: "pnpm"

- name: Setup Rust Toolchain
uses: dtolnay/rust-toolchain@stable

- name: Rust Cache
uses: Swatinem/rust-cache@v2

- name: Install dependencies
run: pnpm install

- name: Install Tauri Linux Dependencies
if: matrix.platform == 'ubuntu-latest'
run: >-
sudo apt-get update &&
sudo apt-get install -y
libgtk-3-dev
libayatana-appindicator3-dev
libwebkit2gtk-4.1-dev
webkit2gtk-driver
xvfb
libjavascriptcoregtk-4.1-dev
libsoup-3.0-dev

- name: Build
run: pnpm tauri build
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,6 @@
"internal-ip": "^7.0.0",
"typescript": "^5.5.3",
"vite": "^5.3.3",
"vue-tsc": "^1.8.27"
"vue-tsc": "^2.0.26"
}
}
89 changes: 46 additions & 43 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.