Skip to content

Commit

Permalink
add github ci config
Browse files Browse the repository at this point in the history
This patch configures shpool to start using github
actions for CI. It is cribbed from
[wprs](https://github.com/wayland-transpositor/wprs/tree/master/.github/workflows).

I found that miri can't handle all the stuff shpool does
just yet (in particular the pipe2 syscall is not yet
supported). We should periodically check to see if sufficient
support has landed to test shpool under miri.
  • Loading branch information
ethanpailes committed Feb 29, 2024
1 parent ae60a9b commit b5bd72f
Show file tree
Hide file tree
Showing 3 changed files with 84 additions and 1 deletion.
18 changes: 18 additions & 0 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: nightly
on:
schedule:
- cron: '04 05 * * *'

jobs:
deny:
name: cargo deny --all-features check
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: moonrepo/setup-rust@b8edcc56aab474d90c7cf0bb8beeaf8334c15e9f
with:
bins: cargo-deny
- run: cargo deny --all-features check

postsubmit:
uses: ./.github/workflows/presubmit.yml
66 changes: 66 additions & 0 deletions .github/workflows/presubmit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: presubmit
on: [push, pull_request, workflow_call, workflow_dispatch]

env:
# Without this, tracy-client won't build because the github runners don't have
# TSCs. We don't care since we're not actually testing tracy functionality but
# we still want to test with --all-features.
TRACY_NO_INVARIANT_CHECK: 1

jobs:
test:
name: cargo test --all-features
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: moonrepo/setup-rust@b8edcc56aab474d90c7cf0bb8beeaf8334c15e9f
- run: sudo apt-get install zsh fish
- run: cargo test --all-features

# miri does not handle all the IO we do, disabled for now.
#
# miri:
# name: cargo +nightly miri test
# runs-on: ubuntu-22.04
# steps:
# - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
# - uses: moonrepo/setup-rust@b8edcc56aab474d90c7cf0bb8beeaf8334c15e9f
# with:
# components: miri
# channel: nightly
# - run: sudo apt-get install zsh fish
# - run: MIRIFLAGS="-Zmiri-disable-isolation" cargo +nightly miri test

rustfmt:
name: cargo +nightly fmt -- --check
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: moonrepo/setup-rust@b8edcc56aab474d90c7cf0bb8beeaf8334c15e9f
with:
components: rustfmt
channel: nightly
- run: cargo +nightly fmt -- --check

cranky:
name: cargo +nightly cranky --all-targets -- -D warnings
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: moonrepo/setup-rust@b8edcc56aab474d90c7cf0bb8beeaf8334c15e9f
with:
components: clippy
bins: [email protected]
channel: nightly
- run: sudo apt-get install zsh fish
- run: cargo +nightly cranky --all-targets -- -D warnings

deny:
name: cargo deny --all-features check licenses
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: moonrepo/setup-rust@b8edcc56aab474d90c7cf0bb8beeaf8334c15e9f
with:
bins: cargo-deny
- run: cargo deny --all-features check licenses
1 change: 0 additions & 1 deletion shpool/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
/// aims to provide a simpler user experience. See [the
/// README](https://github.com/shell-pool/shpool) for more
/// info.
use clap::Parser;

const VERSION: &str = env!("CARGO_PKG_VERSION");
Expand Down

0 comments on commit b5bd72f

Please sign in to comment.