Mercurial > crates > nonstick
comparison .github/workflows/build.yml @ 43:60e74d6a2b88
Merge pull request #10 from Nigma1337/master
Automate crate publishing
author | Anthony Nowell <anowell@gmail.com> |
---|---|
date | Mon, 29 Aug 2022 14:32:28 -0700 |
parents | 80d496e87f8f |
children |
comparison
equal
deleted
inserted
replaced
35:3b2ff50db010 | 43:60e74d6a2b88 |
---|---|
1 on: | 1 on: |
2 pull_request: | 2 push: |
3 branches: | 3 branches: |
4 - master | 4 - master |
5 workflow_call: | 5 workflow_call: |
6 | 6 |
7 name: Build | 7 name: Build & publish |
8 | 8 |
9 jobs: | 9 jobs: |
10 check: | 10 build: |
11 name: Check & Lint | |
12 runs-on: ubuntu-latest | 11 runs-on: ubuntu-latest |
13 steps: | 12 steps: |
14 - name: Checkout sources | 13 - name: Checkout sources |
15 uses: actions/checkout@v2 | 14 uses: actions/checkout@v2 |
16 | |
17 - name: Install PAM dev files | 15 - name: Install PAM dev files |
18 run: sudo apt-get install -y libpam0g-dev | 16 run: sudo apt-get install -y libpam0g-dev |
19 | |
20 - name: Use cargo cache | 17 - name: Use cargo cache |
21 uses: actions/cache@v2 | 18 uses: actions/cache@v2 |
22 with: | 19 with: |
23 path: | | 20 path: | |
24 ~/.cargo/bin/ | 21 ~/.cargo/bin/ |
25 ~/.cargo/registry/index/ | 22 ~/.cargo/registry/index/ |
26 ~/.cargo/registry/cache/ | 23 ~/.cargo/registry/cache/ |
27 ~/.cargo/git/db/ | 24 ~/.cargo/git/db/ |
28 target/ | 25 target/ |
29 key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | 26 key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} |
30 | |
31 - name: Install stable toolchain | 27 - name: Install stable toolchain |
32 uses: actions-rs/toolchain@v1 | 28 uses: actions-rs/toolchain@v1 |
33 with: | 29 with: |
34 profile: minimal | 30 profile: minimal |
35 toolchain: stable | 31 toolchain: stable |
36 override: true | 32 override: true |
37 | 33 - name: Publish module |
38 - name: Run cargo check | 34 uses: katyo/publish-crates@v1 |
39 uses: actions-rs/cargo@v1 | |
40 with: | 35 with: |
41 command: check | 36 registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }} |
42 args: --manifest-path pam/Cargo.toml | 37 check-repo: ${{ github.event_name == 'push' }} |
43 | 38 ignore-unpublished-changes: true |
44 - name: Run cargo test | 39 # Only publish pam module, as pam-http and pam-sober are example projects |
45 uses: actions-rs/cargo@v1 | 40 path: pam |
46 with: | 41 args: --package pam-bindings |
47 command: test | |
48 args: --manifest-path pam/Cargo.toml | |
49 | |
50 - name: Run cargo check on pam-http | |
51 uses: actions-rs/cargo@v1 | |
52 with: | |
53 command: check | |
54 args: --manifest-path pam-http/Cargo.toml | |
55 | |
56 - name: Run cargo check on pam-sober | |
57 uses: actions-rs/cargo@v1 | |
58 with: | |
59 command: check | |
60 args: --manifest-path pam-sober/Cargo.toml | |
61 | |
62 - name: Run cargo fmt | |
63 uses: actions-rs/cargo@v1 | |
64 with: | |
65 command: fmt | |
66 args: --manifest-path pam/Cargo.toml --all --check | |
67 | |
68 - name: Run cargo clippy | |
69 uses: actions-rs/cargo@v1 | |
70 with: | |
71 command: clippy | |
72 args: --manifest-path pam/Cargo.toml -- -D warnings | |
73 | |
74 |