Skip to content

Commit e74b0c1

Browse files
chore: Add issue template file (#826)
* chore: Add issue template file Co-authored-by: Nick <[email protected]> * chore: Remove titles from admonitions * Apply suggestions Co-authored-by: Nick <[email protected]> --------- Co-authored-by: Nick <[email protected]>
1 parent c728e25 commit e74b0c1

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
---
2+
name: Pre-Release Workspace Member Updates and Releases
3+
about: This template can be used to track the updates and releases of all workspace members leading up to the next Stackable release
4+
title: "chore: Update and release workspace members"
5+
labels: ['epic']
6+
assignees: ''
7+
---
8+
9+
<!--
10+
DO NOT REMOVE THIS COMMENT. It is intended for people who might copy/paste from the previous release issue.
11+
This was created by an issue template: https://github.com/stackabletech/operator-rs/issues/new/choose.
12+
-->
13+
14+
## Update and Release Workspace Members for Stackable Release XX.(X)X
15+
16+
> [!NOTE]
17+
> During a Stackable release we update all dependencies in the `operator-rs`
18+
> repository. After these bumps, each workspace member is released using an
19+
> appropriate SemVer version. Later, each product operator repository can then
20+
> use the updates crates.
21+
22+
Replace the items in the task lists below with the applicable Pull Requests
23+
24+
```[tasklist]
25+
### Tasks
26+
- [ ] Update Rust version and workflow actions, see below for more details.
27+
- [ ] Update Rust dependencies, see below for more details.
28+
- [ ] Adjust and then verify crate versions using `.scripts/verify_crate_versions.sh`.
29+
- [ ] Push the release tags using `.scripts/tag_and_push_release.sh`.
30+
```
31+
32+
### Update Rust Version and Workflow Actions
33+
34+
> [!NOTE]
35+
> The PR is usually titled: `chore: Bump Rust version and workflow actions`
36+
37+
1. Adjust the version of the channel in the `rust-toolchain.toml` file. See
38+
<https://releases.rs>.
39+
2. Adjust the version `RUST_TOOLCHAIN_VERSION` in the workflows:
40+
- `.github/workflows/build.yml`
41+
- `.github/workflows/pre_commit.yaml`
42+
3. Add a changelog entry.
43+
4. Update any actions (using the Git commit hash) in the workflows. Hint: Also
44+
make sure that the `cargo-udeps` action is up-to-date, otherwise the CI might
45+
report errors.
46+
47+
### Update Rust Dependencies
48+
49+
> [!NOTE]
50+
> This PR is usually titled: `chore: Bump Rust dependencies`
51+
52+
1. Bump minor versions of dependencies in the `Cargo.toml` manifest.
53+
2. Then run the `cargo update` command.
54+
3. Fix any code which needs updating due to the dependency bumps.
55+
4. Locally update any product operator to identify any breaking changes
56+
downstream.
57+
- Hint: Use the `[patch."https://github.com/..."]` mechanism to temporarily
58+
override the dependency.
59+
5. Add a changelog entry if required.
60+
61+
### Adjust and Verify Crate Versions
62+
63+
> [!WARNING]
64+
> Currently, all workspace members use `0.X.Y` versions. This means we can
65+
> introduce breaking changes in any version without needing to bump the major
66+
> level. But we still have the following rules:
67+
>
68+
> - Breaking changes (internally and externally) will bump the minor level of
69+
> the version, so `0.X.Y` becomes `0.X+1.Y`.
70+
> - All other non-breaking changes will bump the patch level of the version, so
71+
> `0.X.Y` becomes `0.X.Y+1`.
72+
73+
<!-- markdownlint-disable-next-line MD028 -->
74+
> [!NOTE]
75+
> The PR is usually titled: `chore: Release workspace members`
76+
77+
1. Bump the crate versions in their appropriate `Cargo.toml` manifests.
78+
2. Verify the previous step using `.scripts/verify_crate_versions.sh`.

0 commit comments

Comments
 (0)