mirror of
https://github.com/debauchee/barrier.git
synced 2024-12-23 19:12:14 +03:00
60 lines
1.7 KiB
Markdown
60 lines
1.7 KiB
Markdown
|
Creating a release
|
||
|
==================
|
||
|
|
||
|
This document is documentation intednded for maintainers of Barrier.
|
||
|
It documents the release process of Barrier.
|
||
|
|
||
|
Step 1: Setup environment variables
|
||
|
-----------------------------------
|
||
|
|
||
|
Setup the following environment variable that will be used throughout the rest of the steps.
|
||
|
|
||
|
export VERSION=X.Y.Z
|
||
|
|
||
|
Step 2: Release notes PR
|
||
|
------------------------
|
||
|
|
||
|
Open a new branch (e.g. `release`) and run the following:
|
||
|
|
||
|
towncrier --version ${VERSION} --date `date -u +%F`
|
||
|
|
||
|
This collects the release notes using the `towncrier` tool. Please commit the collected release
|
||
|
notes afterwards.
|
||
|
|
||
|
Certain file names are not properly supported by the `towncrier` tool and it ignores them.
|
||
|
Check `newsfragments` directory for any forgotten release notes
|
||
|
|
||
|
Step 3: Merge the release notes PR
|
||
|
----------------------------------
|
||
|
|
||
|
Step 4: Push git tag
|
||
|
--------------------
|
||
|
|
||
|
Pull the merge commit created on the `master` branch during the step 2.
|
||
|
|
||
|
Create a tag:
|
||
|
|
||
|
git tag -s v${VERSION} -m v${VERSION}
|
||
|
|
||
|
Push the tag:
|
||
|
|
||
|
git push origin master --tags
|
||
|
|
||
|
|
||
|
Step 5: Draft a new release on Github
|
||
|
-------------------------------------
|
||
|
|
||
|
Go to https://github.com/buildbot/buildbot/releases and draft a new release.
|
||
|
|
||
|
Use git tag as the title of the release: `vX.Y.Z`.
|
||
|
|
||
|
Use the release notes generated by the `towncrier` tool as the description of the releases.
|
||
|
|
||
|
Upload the artifacts created by Azure pipelines as the binaries of the release. The following
|
||
|
artifacts should be uploaded to Github:
|
||
|
|
||
|
- the Barrier-X.Y.Z-release.dmg created by the oldest Mac OS task (artifact name is
|
||
|
"Mac Release Disk Image and App XYZ").
|
||
|
|
||
|
- the BarrierSetup-X.Y.Z-release.exe (artifact name is Windows Release Installer).
|