Skip to content

Louis-e-main

Louis-e-main #201

Workflow file for this run

name: CI Build
# Trigger on pull request creation, update, and on pushes to the main branch
on:
pull_request:
branches:
- main
push:
branches:
- main
workflow_dispatch:
workflow_call:
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, macos-latest, ubuntu-22.04]
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Install required Ubuntu packages
if: ${{ matrix.os == 'ubuntu-22.04' }}
run: sudo apt update && sudo apt install libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev libsoup-3.0-0 -y
- name: Set up Rust
uses: dtolnay/rust-toolchain@v1
with:
toolchain: stable
target: ${{ matrix.os == 'windows-latest' && 'x86_64-pc-windows-msvc' || 'x86_64-unknown-linux-gnu' || 'x86_64-apple-darwin' || 'aarch64-apple-darwin'}}
components: clippy
- name: Check formatting
run: cargo fmt -- --check
- name: Check clippy lints
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Install Rust dependencies
run: cargo fetch
- name: Build
run: cargo build --release
- name: Upload artifact
uses: actions/upload-artifact@v4
if: github.event_name == 'release'
with:
name: ${{ matrix.os }}-build
path: target/release/arnis*