-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
bdebfa2
commit 79dc4bc
Showing
1 changed file
with
34 additions
and
19 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,36 @@ | ||
# Release Documentation | ||
|
||
* adapt version information (todo: centralize) | ||
|
||
* `/VERSION` (mind the final newline) | ||
* `pyproject.toml` | ||
* `ci-scripts/linux/rpm/nitrokey-app2.spec` | ||
* add flatpak meta-data in `meta/com.nitrokey.nitrokey-app2.metainfo.xml`, | ||
like this: `<release version="2.3" date="2024-04-19"/>` | ||
* the latest release should be on top of this list | ||
|
||
|
||
* create tag (`git tag -S -m "vX.Y.Z" vX.Y.Z` or in the web-ui) | ||
|
||
* `git push --tags` | ||
|
||
* create release based on tag (web-ui) | ||
|
||
* set `pre-release` if required... | ||
|
||
* wait for actions to fail | ||
Follow the steps below exactly to avoid a broken release. | ||
|
||
1. Adapt version information. | ||
The CI pipeline will fail if the version strings in the files below do not match. | ||
* `nitrokeyapp/VERSION` (mind the final newline) | ||
* `pyproject.toml` | ||
* `ci-scripts/linux/rpm/nitrokey-app2.spec` | ||
* Add flatpak meta-data in `meta/com.nitrokey.nitrokey-app2.metainfo.xml`, | ||
like this: `<release version="2.3" date="2024-04-19"/>` | ||
* The latest release should be on top of this list. | ||
2. Create a new tag and release. | ||
1. Make sure the `main` branch of your cloned repository is up-to-date. | ||
Create a new tag with `git tag -S -m "vX.Y.Z" vX.Y.Z` and push it to GitHub with `git push --tags`. | ||
Open the repository on GitHub and open the releases page. | ||
Click "Draft a new release" and select the just created tag. | ||
2. Open the repository on GitHub and open the releases page. | ||
Click "Draft a new release". | ||
In the dropdown field "Choose a tag" select "Create a new tag". | ||
Enter the version string in the form `vX.Y.Z`. | ||
Fill the fields title and description. | ||
Set the checkbox "Set as a pre-release" or "Set as the latest release". | ||
A pre-release can still be safely removed, a latest release can not be removed anymore. | ||
3. Wait for the pipelines to succeed. | ||
At this point the tag and release can still be removed. | ||
Continue only when the pipelines succeded and manual tests are fine. | ||
4. Download the Windows artifacts ending in `_unsigned.exe` and `_unsigned.msi`. | ||
Sign the artifacts and remove the `_unsigned` from the file names. | ||
Open the release page for the version and click the edit button. | ||
Upload the signed arifacts, delete the unsigned artifacts and save the change. | ||
5. Open the release page for the version and click the edit button again. | ||
Change the release from pre-release to latest release and save the change. | ||
6. Please mind that Flatpak and RPM COPR builds need to be triggered manually. | ||
|
||
The release is now complete. |