Skip to content

Bump idna in /webapp/src-tauri in the cargo group across 1 directory … #748

Bump idna in /webapp/src-tauri in the cargo group across 1 directory …

Bump idna in /webapp/src-tauri in the cargo group across 1 directory … #748

Workflow file for this run

name: "CI"
on:
pull_request: # Triggered on pull requests to any branch
push:
branches: # Additionally, trigger on push events to specific branches
- master
jobs:
paths:
name: Check for Changes
runs-on: ubuntu-latest
outputs:
backend: ${{ steps.filter.outputs.backend }}
webapp: ${{ steps.filter.outputs.webapp }}
website: ${{ steps.filter.outputs.website }}
steps:
- uses: actions/checkout@v3
- name: Paths Filter
id: filter
uses: dorny/paths-filter@v2
with:
filters: |
backend:
- 'backend/**'
webapp:
- 'webapp/**'
website:
- 'website/**'
backend-build:
name: Backend Build
runs-on: ubuntu-latest
needs: paths
if: ${{ needs.paths.outputs.backend == 'true' }}
defaults:
run:
working-directory: 'backend'
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Build with Maven
run: mvn quarkus:build package
backend-test:
name: Backend Unit Tests
runs-on: ubuntu-latest
needs: paths
if: ${{ needs.paths.outputs.backend == 'true' }}
permissions:
checks: write
contents: read
defaults:
run:
working-directory: 'backend'
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Build and Run Tests
run: mvn test --batch-mode --fail-at-end
- name: Publish Test Report
if: always()
uses: scacap/action-surefire-report@v1
webapp-build:
name: Webapp Build
runs-on: ubuntu-latest
needs: paths
if: ${{ needs.paths.outputs.webapp == 'true' }}
strategy:
matrix:
node-version: [18.x]
defaults:
run:
working-directory: 'webapp'
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
cache-dependency-path: webapp/package-lock.json
- run: npm ci
- run: npm run build --if-present
website-build:
name: Website Build
runs-on: ubuntu-latest
needs: paths
if: ${{ needs.paths.outputs.website == 'true' }}
strategy:
matrix:
node-version: [18.x]
defaults:
run:
working-directory: 'website'
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
cache-dependency-path: website/package-lock.json
- run: npm ci
- run: npm run build --if-present
test-tauri:
name: Tauri Build Test
runs-on: ${{ matrix.platform }}
needs: [webapp-build]
if: ${{ needs.paths.outputs.webapp == 'true' }}
strategy:
fail-fast: false
matrix:
platform: [windows-latest] # Add other platforms if needed
defaults:
run:
working-directory: 'webapp'
steps:
- uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20
- name: Install Rust Stable
uses: dtolnay/[email protected]
- uses: Swatinem/rust-cache@v2
with:
workspaces: 'webapp/src-tauri'
- name: Install dependencies on Ubuntu
if: matrix.platform == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf
- name: Install Webapp Dependencies
run: npm install # or yarn install / pnpm install based on your project
- name: Build Tauri App
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }}
TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }}