Timeline Workspace #291
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Artemis PR Actions | |
on: | |
pull_request: | |
branches: | |
- "main" | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build-pr: | |
strategy: | |
fail-fast: false | |
matrix: | |
info: | |
- { os: "macos-latest", target: "aarch64-apple-darwin", cross: false } | |
- { | |
os: "ubuntu-latest", | |
target: "x86_64-unknown-linux-gnu", | |
cross: false, | |
} | |
- { | |
os: "windows-latest", | |
target: "x86_64-pc-windows-msvc", | |
cross: false, | |
} | |
runs-on: ${{ matrix.info.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Set up Rust toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
components: rustfmt, clippy | |
targets: ${{ matrix.info.target }} | |
- name: Setup NodeJS toolchain | |
uses: actions/setup-node@v4 | |
- name: Install TailwindCSS | |
run: npm install -D tailwindcss | |
- name: Install DaisyUI | |
run: npm install -D daisyui@latest | |
- name: Install TailwindCSS Typography | |
run: npm install -D @tailwindcss/typography | |
- name: Tauri build dependencies on Linux | |
if: matrix.info.os == 'ubuntu-latest' | |
run: sudo apt install libgtk-3-dev libwebkit2gtk-4.1-dev build-essential curl wget file libxdo-dev libssl-dev libayatana-appindicator3-dev librsvg2-dev | |
- name: Setup Podman user config directory | |
if: matrix.info.os == 'ubuntu-latest' | |
run: mkdir -p ~/.config/containers | |
- name: Register docker.io for Podman | |
if: matrix.info.os == 'ubuntu-latest' | |
run: echo "unqualified-search-registries = ['docker.io']" > ~/.config/containers/registries.conf | |
- name: Download OpenSearch on Linux | |
if: matrix.info.os == 'ubuntu-latest' | |
run: podman run -it -p 9200:9200 -p 9600:9600 -e OPENSEARCH_INITIAL_ADMIN_PASSWORD="Ughsocomplex123567890!" -e "discovery.type=single-node" --name opensearch-node -d opensearchproject/opensearch:latest | |
- name: Enable Rust cache | |
uses: Swatinem/[email protected] | |
with: | |
save-if: false | |
- name: Fmt Check | |
run: cargo fmt -- --check | |
- name: Install just runner | |
uses: taiki-e/install-action@just | |
- name: Run clippy action to produce annotations on Windows | |
if: matrix.info.os == 'windows-latest' | |
run: just --shell pwsh.exe --shell-arg -c | |
- name: Run clippy action to produce annotations non-Windows | |
if: matrix.info.os != 'windows-latest' | |
run: just | |
- name: Build tests (macOS) | |
if: matrix.info.os == 'macOS-latest' | |
run: sudo cargo test --no-run --release | |
- name: Run tests (macOS) | |
if: matrix.info.os == 'macOS-latest' | |
run: sudo cargo test --release | |
- name: Setup Rust for root (Linux) | |
if: matrix.info.os == 'ubuntu-latest' | |
run: sudo env "PATH=$PATH" rustup default stable | |
- name: Build tests (Linux) | |
if: matrix.info.os == 'ubuntu-latest' | |
run: sudo env "PATH=$PATH" cargo test --no-run --release | |
- name: Run tests (Linux) | |
if: matrix.info.os == 'ubuntu-latest' | |
run: sudo env "PATH=$PATH" cargo test --release | |
- name: Build tests (Windows) | |
if: matrix.info.os == 'windows-latest' | |
run: cargo test --no-run --release | |
- name: Run tests (Windows) | |
if: matrix.info.os == 'windows-latest' | |
run: cargo test --release |