Skip to content

Commit 7e64872

Browse files
Add trusted publishing
1 parent 931c426 commit 7e64872

2 files changed

Lines changed: 51 additions & 0 deletions

File tree

.github/workflows/cd-test.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Continuous delivery - test
2+
3+
on:
4+
pull_request:
5+
# opened, reopenened, synchronize are the default types for pull_request
6+
# labeled, unlabeled ensure this check is also run if a label is added or removed
7+
types: [opened, reopened, synchronize, labeled, unlabeled]
8+
9+
jobs:
10+
test-publish:
11+
runs-on: ubuntu-latest
12+
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-publish-check') }}
13+
steps:
14+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
15+
- run: cargo publish --dry-run --package apdu-app
16+
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-publish-check-apdu-app') }}
17+
- run: cargo publish --dry-run --package apdu-dispatch
18+
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-publish-check-apdu-dispatch') }}

.github/workflows/cd.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Continuous delivery - crates.io
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
jobs:
8+
publish-apdu-app:
9+
runs-on: ubuntu-latest
10+
if: ${{ startsWith(github.event.release.tag_name, 'app-') }}
11+
environment: crates.io
12+
permissions:
13+
id-token: write
14+
steps:
15+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
16+
- uses: rust-lang/crates-io-auth-action@b7e9a28eded4986ec6b1fa40eeee8f8f165559ec # v1.0.3
17+
id: auth
18+
- run: cargo publish --package apdu-app
19+
env:
20+
CARGO_REGISTRY_TOKEN: ${{ steps.auth.outputs.token }}
21+
publish-apdu-dispatch:
22+
runs-on: ubuntu-latest
23+
if: ${{ startsWith(github.event.release.tag_name, 'dispatch-') }}
24+
environment: crates.io
25+
permissions:
26+
id-token: write
27+
steps:
28+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
29+
- uses: rust-lang/crates-io-auth-action@b7e9a28eded4986ec6b1fa40eeee8f8f165559ec # v1.0.3
30+
id: auth
31+
- run: cargo publish --package apdu-dispatch
32+
env:
33+
CARGO_REGISTRY_TOKEN: ${{ steps.auth.outputs.token }}

0 commit comments

Comments
 (0)