Skip to content

Commit d9165b9

Browse files
Migrate to release-plz and trusted publishing
1 parent 5b9c4ec commit d9165b9

File tree

7 files changed

+81
-171
lines changed

7 files changed

+81
-171
lines changed

.github/release-drafter-config.yml

Lines changed: 0 additions & 21 deletions
This file was deleted.

.github/workflows/ci.yml

Lines changed: 15 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,9 @@ name: CI
33
on: [pull_request]
44

55
jobs:
6-
get-nightly-version:
7-
runs-on: ubuntu-latest
8-
outputs:
9-
nightly-version: ${{ steps.get-nightly.outputs.version }}
10-
steps:
11-
- name: Checkout sources
12-
uses: actions/checkout@v4
13-
- name: Get nightly version from rust-toolchain.toml
14-
id: get-nightly
15-
run: |
16-
NIGHTLY_VERSION=$(grep 'channel = ' rust-toolchain.toml | sed 's/.*"\(.*\)".*/\1/')
17-
echo "version=$NIGHTLY_VERSION" >> $GITHUB_OUTPUT
18-
196
test:
207
name: Build and run the unit tests using the latest rust.
218
runs-on: ${{ matrix.os }}
22-
needs: get-nightly-version
239
strategy:
2410
fail-fast: false
2511
matrix:
@@ -33,35 +19,34 @@ jobs:
3319
- [7-2, "7.2"]
3420
toolchain:
3521
- stable
36-
- ${{ needs.get-nightly-version.outputs.nightly-version }}
3722

3823
steps:
3924
- name: Checkout sources
40-
uses: actions/checkout@v4
25+
uses: actions/checkout@v5
4126
with:
42-
submodules: recursive
27+
submodules: recursive
4328

4429
- name: Checkout redis sources
45-
uses: actions/checkout@v4
30+
uses: actions/checkout@v5
4631
with:
47-
submodules: recursive
48-
repository: redis/redis
49-
ref: ${{ matrix.redis-version[1] }}
50-
path: redis
32+
submodules: recursive
33+
repository: redis/redis
34+
ref: ${{ matrix.redis-version[1] }}
35+
path: redis
5136

5237
- name: Install redis
5338
run: |
54-
export HOMEBREW_NO_AUTO_UPDATE=1
55-
cd redis
56-
make -j
57-
./src/redis-server --version
58-
make install PREFIX=/usr/local
59-
redis-server --version
39+
export HOMEBREW_NO_AUTO_UPDATE=1
40+
cd redis
41+
make -j
42+
./src/redis-server --version
43+
make install PREFIX=/usr/local
44+
redis-server --version
6045
6146
- name: Setup python
6247
uses: actions/setup-python@v5
6348
with:
64-
python-version: '3.10'
49+
python-version: "3.10"
6550

6651
- name: Install Clang (for bindgen)
6752
run: |
@@ -78,21 +63,11 @@ jobs:
7863
7964
- name: Install toolchain
8065
id: tc
81-
uses: dtolnay/rust-toolchain@master
66+
uses: actions-rust-lang/setup-rust-toolchain@v1
8267
with:
8368
toolchain: ${{ matrix.toolchain }}
8469
components: rustfmt, clippy
8570

86-
- name: Setup cache
87-
if: runner.os != 'macOS'
88-
uses: actions/cache@v4
89-
with:
90-
path: |
91-
~/.cargo/registry
92-
~/.cargo/git
93-
target
94-
key: ${{ runner.os }}-test-${{ matrix.toolchain }}-${{ hashFiles('**/Cargo.toml') }}
95-
9671
- name: Format
9772
run: cargo fmt --all -- --check
9873

.github/workflows/cratesio-publish.yml

Lines changed: 0 additions & 67 deletions
This file was deleted.

.github/workflows/release-drafter.yml

Lines changed: 0 additions & 20 deletions
This file was deleted.

.github/workflows/release-pr.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: Open a release PR
2+
3+
on:
4+
workflow_dispatch: # Manual trigger only
5+
6+
jobs:
7+
# Create a PR with the new versions and changelog, preparing the next release.
8+
# A release will be automatically published when the PR is merged into master.
9+
release-pr:
10+
name: Open a release PR
11+
runs-on: ubuntu-latest
12+
permissions:
13+
contents: write
14+
pull-requests: write
15+
concurrency:
16+
group: release-plz-${{ github.ref }}
17+
cancel-in-progress: false
18+
steps:
19+
- name: Checkout repository
20+
uses: actions/checkout@v5
21+
with:
22+
submodules: recursive
23+
fetch-depth: 0
24+
persist-credentials: false
25+
- name: Install toolchain
26+
uses: actions-rust-lang/setup-rust-toolchain@v1
27+
- name: Run release-plz
28+
uses: release-plz/action@v0.5
29+
with:
30+
command: release-pr
31+
env:
32+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/release.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Release-plz
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
8+
jobs:
9+
# Release unpublished packages if the latest commit merged
10+
# a release PR into master
11+
release:
12+
name: Publish a new release to crates.io
13+
runs-on: ubuntu-latest
14+
permissions:
15+
contents: write
16+
id-token: write
17+
steps:
18+
- name: Checkout repository
19+
uses: actions/checkout@v5
20+
with:
21+
submodules: recursive
22+
fetch-depth: 0
23+
persist-credentials: false
24+
- name: Install toolchain
25+
uses: actions-rust-lang/setup-rust-toolchain@v1
26+
- uses: rust-lang/crates-io-auth-action@v1
27+
id: auth
28+
- name: Run release-plz
29+
uses: release-plz/action@v0.5
30+
with:
31+
command: release
32+
env:
33+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
34+
CARGO_REGISTRY_TOKEN: ${{ steps.auth.outputs.token }}

.github/workflows/test-registry-token.yml

Lines changed: 0 additions & 23 deletions
This file was deleted.

0 commit comments

Comments
 (0)