-
Notifications
You must be signed in to change notification settings - Fork 69
60 lines (56 loc) · 1.89 KB
/
nightly.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
name: Nightly Checks
on:
schedule:
# Every night at midnight
- cron: "0 0 * * *"
workflow_dispatch:
inputs:
rev:
description: "Revision hash to run against"
required: false
default: ""
jobs:
dependencies:
name: Check for unused dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: "${{ github.event.inputs.rev }}"
- name: Install latest Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
- name: Install cargo udeps
run: cargo install cargo-udeps --locked
- name: Execute cargo udeps
run: cargo +nightly udeps
audit:
name: Check for crates with security vulnerabilities
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: "${{ github.event.inputs.rev }}"
- name: Install latest Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
- name: Install cargo audit
run: cargo install cargo-audit
- name: Execute cargo audit
# shlex is currently only being brought by bindgen, which does not use the concerning APIs
# except for testing.
# TODO: remove when shlex gets updated to >=1.3.0 (here and in deny.toml)
run: cargo audit --ignore RUSTSEC-2024-0006
coverage:
name: Gather coverage data and upload to Codecov
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: "${{ github.event.inputs.rev }}"
- name: Run the container to execute the coverage script
run: docker run -v $(pwd):/tmp/parsec -w /tmp/parsec --security-opt seccomp=unconfined --env RUST_TOOLCHAIN_VERSION=1.67.0 ghcr.io/parallaxsecond/parsec-service-test-all /tmp/parsec/ci.sh coverage
- name: Collect coverage results
run: bash <(curl -s https://codecov.io/bash)