summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/coverage.yml27
-rw-r--r--.github/workflows/style.yml (renamed from .github/workflows/rust.yml)27
-rw-r--r--.github/workflows/tests.yml58
3 files changed, 90 insertions, 22 deletions
diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml
new file mode 100644
index 0000000..946113a
--- /dev/null
+++ b/.github/workflows/coverage.yml
@@ -0,0 +1,27 @@
+name: Coverage
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ coverage:
+ name: Gather coverage data
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout branch
+ uses: actions/checkout@master
+ with:
+ submodules: true
+ - name: Setup Rust toolchain
+ uses: actions-rs/toolchain@v1
+ with:
+ profile: minimal
+ - name: Run tests with tarpaulin
+ uses: actions-rs/tarpaulin@v0.1
+ with:
+ args: '--all --exclude-files abnf_to_pest/* --exclude-files dhall_proc_macros/*'
+ - name: Upload coverage data to codecov.io
+ uses: codecov/codecov-action@v1.0.2
+ with:
+ token: ${{secrets.CODECOV_TOKEN}}
diff --git a/.github/workflows/rust.yml b/.github/workflows/style.yml
index 2d78480..1b71ad7 100644
--- a/.github/workflows/rust.yml
+++ b/.github/workflows/style.yml
@@ -1,4 +1,4 @@
-name: Test suite
+name: Style checks
on:
push:
@@ -8,7 +8,7 @@ on:
jobs:
fmt:
- name: Check formatting
+ name: Rustfmt
runs-on: ubuntu-latest
steps:
- name: Checkout branch
@@ -18,6 +18,7 @@ jobs:
- name: Setup Rust toolchain
uses: actions-rs/toolchain@v1
with:
+ profile: minimal
components: rustfmt
- name: Run rustfmt
uses: actions-rs/cargo@v1
@@ -26,7 +27,7 @@ jobs:
args: --all -- --check
clippy:
- name: Run clippy
+ name: Clippy
runs-on: ubuntu-latest
steps:
- name: Checkout branch
@@ -36,28 +37,10 @@ jobs:
- name: Setup Rust toolchain
uses: actions-rs/toolchain@v1
with:
+ profile: minimal
components: clippy
- name: Run clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: -- -D warnings
-
- test:
- name: Run test suite
- runs-on: ubuntu-latest
- steps:
- - name: Checkout branch
- uses: actions/checkout@master
- with:
- submodules: true
- - name: Setup Rust toolchain
- uses: actions-rs/toolchain@v1
- - name: Run tests and gather coverage data
- uses: actions-rs/tarpaulin@v0.1
- with:
- args: '--release --all --exclude-files abnf_to_pest/* --exclude-files dhall_proc_macros/*'
- - name: Upload coverage data to codecov.io
- uses: codecov/codecov-action@v1.0.2
- with:
- token: ${{secrets.CODECOV_TOKEN}}
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
new file mode 100644
index 0000000..b257115
--- /dev/null
+++ b/.github/workflows/tests.yml
@@ -0,0 +1,58 @@
+name: Test suite
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ test_release:
+ name: Run tests (release)
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ rust:
+ - stable
+ steps:
+ - name: Checkout branch
+ uses: actions/checkout@master
+ with:
+ submodules: true
+ - name: Setup Rust toolchain
+ uses: actions-rs/toolchain@v1
+ with:
+ profile: minimal
+ toolchain: ${{ matrix.rust }}
+ override: true
+ - name: Run tests
+ uses: actions-rs/cargo@v1
+ with:
+ command: test
+ args: --release
+
+ tests_debug:
+ name: Run tests
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ rust:
+ - beta
+ - nightly
+ - 1.42.0 # Minimum supported version
+ steps:
+ - name: Checkout branch
+ uses: actions/checkout@master
+ with:
+ submodules: true
+ - name: Setup Rust toolchain
+ uses: actions-rs/toolchain@v1
+ with:
+ profile: minimal
+ toolchain: ${{ matrix.rust }}
+ override: true
+ - name: Run tests
+ uses: actions-rs/cargo@v1
+ with:
+ command: test
+