Skip to content

Commit abf25ae

Browse files
committed
Add release documentation
Signed-off-by: nscuro <nscuro@protonmail.com>
1 parent 0bf649a commit abf25ae

3 files changed

Lines changed: 49 additions & 0 deletions

File tree

.github/images/release-branch.png

21.8 KB
Loading

.github/images/release-master.png

62.3 KB
Loading

RELEASING.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Releasing the OWASP Dependency-Track Frontend
2+
3+
This document describes the process of releasing a new version of the Dependency-Track Frontend via GitHub Actions.
4+
5+
## Releasing
6+
7+
### Release a new major of minor version
8+
9+
1. Ensure the current state in `master` is ready to be released
10+
2. Head over to the *Actions* tab in GitHub
11+
3. Select the *Release CI* entry in the *Workflows* section
12+
4. The following UI element will have a button to trigger the workflow. Once clicked, the Use workflow from dialog will appear:
13+
14+
![Create a release from `master`](./.github/images/release-master.png)
15+
16+
5. Ensure that `master` is selected in the branch dropdown
17+
6. Select the part that should be bumped for this release (see [Semantic Versioning](https://semver.org/))
18+
7. Finally, once all inputs are checked press the *Run Workflow* button
19+
8. **Manually** create a release branch by selecting `master` in the branch dropdown and entering the branch name:
20+
21+
![Create a release branch](./.github/images/)
22+
23+
### Release a new bugfix version
24+
25+
> **Warning**
26+
> This process is currently only semi-automated and involves manual execution of the steps defined in [`ci-release.yaml`](.github/workflows/ci-release.yaml).
27+
> Besides NPM, the [GitHub CLI](https://cli.github.com/) is required. Ensure the CLI is configured for authenticated use (`gh auth login`).
28+
29+
1. Ensure the current state in the release branch is ready to be released
30+
2. Clone the repository and checkout the release branch:
31+
```shell
32+
git clone https://github.com/DependencyTrack/frontend
33+
cd frontend
34+
git checkout 4.6.x
35+
```
36+
3. Run `npm version` to automatically bump the project version, commit and tag this change:
37+
```shell
38+
npm version patch -m "prepare-release: set version to %s"
39+
```
40+
4. Push this change:
41+
```shell
42+
git push origin
43+
```
44+
5. Create a GitHub release:
45+
```shell
46+
VERSION=`jq -r '.version' package.json`
47+
gh release create "${VERSION}" --title "${VERSION}" --notes-file ".github/default-release-notes.md"
48+
```
49+
6. This will kick off the `ci-publish.yaml` workflow, which will build and push the container images, as well as update the previously created release with build artifacts

0 commit comments

Comments
 (0)