The steps used during the release process
git clone [email protected]:OWASP/threat-dragon.git
cd threat-dragon
- update version eg
"version": "2.1.1",
, inpackage.json
,td.site/package.json
andtd.server/package.json
- update
buildState
intd.vue/package.json
away from-demo
, usually '' npm install
npm run build
npm test
npm run test:vue
git add --all; git status
git commit -m"release version 2.1.1"
git push
- tag the release
git tag v2.1.1
git push origin v2.1.1
The github release workflow then creates the draft release and the install images
- once tagged, the github workflow pushes the docker image to docker hub
- check using
docker pull threatdragon/owasp-threat-dragon:v2.1.1
- on MacOS M1 this command may need to be used:
docker pull --platform linux/x86_64 threatdragon/owasp-threat-dragon:v2.1.1
- Test using the command to run a detached container:
docker run -d -p 8080:3000 -v $(pwd)/.env:/app/.env threatdragon/owasp-threat-dragon:v2.1.1
- Ideally test this release on Windows, linux and MacOS using
http://localhost:8080/#/
If the image tests correctly, promote the docker image
from dockerhub threatdragon/
to dockerhub OWASP/threat-dragon/v2.1.1
.
There is no going back on this last step, so it is deliberately left as a manual task:
docker pull --platform linux/x86_64 threatdragon/owasp-threat-dragon:v2.1.1
docker tag threatdragon/owasp-threat-dragon:v2.1.1 owasp/threat-dragon:v2.1.1
docker push owasp/threat-dragon:v2.1.1
docker pull owasp/threat-dragon:v2.1.1
ensure the tag now exists within the OWASP Docker hub: https://hub.docker.com/r/owasp/threat-dragon/tags
Update the release notes for the draft in the Threat Dragon release area
using the release notes using markdown provided by .release-note-template.md
as a template,
making sure to revise 2.x.x
to the correct version number such as 2.1.1
Promote the release from draft to public once everything is in place
Update the releases tab and the info pane on the OWASP Threat Dragon project pages.
Finally ensure Threat Dragon announces the new release, for example on the OWASP slack channels