Skip to content

Commit a86d1c6

Browse files
authored
Merge pull request #41 from labelle-org/tshalev-docs
Add docs instructing how to release
2 parents d75a71e + f58ee9a commit a86d1c6

File tree

4 files changed

+38
-0
lines changed

4 files changed

+38
-0
lines changed

doc/choose_a_tag.png

18.8 KB
Loading

doc/draft_a_new_release.png

61.7 KB
Loading

doc/release.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Deployment Instructions
2+
3+
Here's the instructions to draft a new release:
4+
5+
1. **Preparation**
6+
- Ensure you have the latest version of the code from the main branch.
7+
8+
2. **Test**
9+
- Check that all unit tests pass: run `tox` and `pre-commit run -a`.
10+
- Make some sanity tests on real labeler printer.
11+
12+
3. **Deploy**
13+
- In "Releases" view, click "Draft a new release":
14+
15+
![Draft a new release](draft_a_new_release.png)
16+
17+
- Choose a new tag name according to semver and set to "Create new tag on publish":
18+
19+
![Choose a tag](choose_a_tag.png)
20+
21+
- Click "Generate release notes" to get automatic release notes based on the
22+
merged PRs, add any additional notes, and hit "Publish release".
23+
24+
That will trigger a pending Actions workflow to upload to PyPI that
25+
requires manual approval from a maintainer. Approve, then it will run,
26+
and should create a release.
27+
28+
4. **Verify**
29+
- Once deployed, verify the application is running as expected.
30+
- Check the application logs for any unnoticed issues.
31+
32+
## Additional Info
33+
34+
GitHub Actions is trusted by PyPI, and it generates a certificate saying that a package
35+
upload request is coming from labelle-org/labelle under the release environment.
36+
PyPI is configured to accept exactly such a certificate:
37+
38+
![Trusted Published Management](trusted_publisher_management.png)
53.4 KB
Loading

0 commit comments

Comments
 (0)