@@ -4,57 +4,68 @@ The steps used during the release process
4
4
5
5
1 . ` git clone [email protected] :OWASP/threat-dragon.git `
6
6
2 . ` cd threat-dragon `
7
- 3 . update version eg ` "version": "2.1.3 ", ` , in ` package.json ` , ` td.site/package.json ` and ` td.server/package.json `
7
+ 3 . update version eg ` "version": "2.2.0 ", ` , in ` package.json ` , ` td.site/package.json ` and ` td.server/package.json `
8
8
4 . update ` buildState ` in ` td.vue/package.json ` away from ` -demo ` , usually ''
9
- 5 . ` npm install `
9
+ 5 . update package lock files: ` npm install `
10
10
6 . ` npm run build `
11
11
7 . ` npm test `
12
12
8 . ` npm run test:vue `
13
13
9 . ` git add --all; git status `
14
- 10 . ` git commit -m"release version 2.1.3 " `
14
+ 10 . ` git commit -m"release version 2.2.0 " `
15
15
11 . ` git push `
16
- 12 . tag the release ` git tag v2.1.3 `
17
- 13 . ` git push origin v2.1.3 `
16
+ 12 . tag the release ` git tag v2.2.0 `
17
+ 13 . ` git push origin v2.2.0 `
18
18
19
19
The github release workflow then creates the draft release and the install images
20
20
21
21
### Publish docker image
22
22
23
23
1 . once tagged, the github workflow pushes the docker image to docker hub
24
- 2 . check using ` docker pull threatdragon/owasp-threat-dragon:v2.1.3 `
24
+ 2 . check using ` docker pull threatdragon/owasp-threat-dragon:v2.2.0 `
25
25
3 . on MacOS M1 this command may need to be used:
26
- ` docker pull --platform linux/x86_64 threatdragon/owasp-threat-dragon:v2.1.3 `
26
+ ` docker pull --platform linux/x86_64 threatdragon/owasp-threat-dragon:v2.2.0 `
27
27
4 . Test using the command to run a detached container:
28
- ` docker run -d -p 8080:3000 -v $(pwd)/.env:/app/.env threatdragon/owasp-threat-dragon:v2.1.3 `
28
+ ` docker run -d -p 8080:3000 -v $(pwd)/.env:/app/.env threatdragon/owasp-threat-dragon:v2.2.0 `
29
29
5 . Ideally test this release on Windows, linux and MacOS using ` http://localhost:8080/#/ `
30
30
31
31
If the image tests correctly, promote the docker image
32
- from dockerhub ` threatdragon/ ` to dockerhub ` OWASP/threat-dragon/v2.1.3 ` .
32
+ from dockerhub ` threatdragon/ ` to dockerhub ` OWASP/threat-dragon/v2.2.0 ` .
33
33
34
34
There is _ no going back_ on this last step, so it is deliberately left as a manual task:
35
35
36
36
``` text
37
- docker pull --platform linux/x86_64 threatdragon/owasp-threat-dragon:v2.1.3
38
- docker tag threatdragon/owasp-threat-dragon:v2.1.3 owasp/threat-dragon:v2.1.3
39
- docker push owasp/threat-dragon:v2.1.3
40
- docker pull owasp/threat-dragon:v2.1.3
37
+ docker pull --platform linux/x86_64 threatdragon/owasp-threat-dragon:v2.2.0
38
+ docker tag threatdragon/owasp-threat-dragon:v2.2.0 owasp/threat-dragon:v2.2.0
39
+ docker push owasp/threat-dragon:v2.2.0
40
+ docker pull owasp/threat-dragon:v2.2.0
41
41
```
42
42
43
43
ensure the tag now exists within the OWASP Docker hub: ` https://hub.docker.com/r/owasp/threat-dragon/tags `
44
44
45
45
### Check desktop downloads
46
46
47
- 1 . Download desktop installers for Linux, MacOS and Windows
48
- 2 . Download the ` latest*.yml ` auto-update checksum files
49
- 3 . Create SHA512 ` checksum*.yml ` files:
50
- 3.1 ` grep sha512 latest-linux.yml | head -n 2 | tail -n 1 | cut -d ":" -f 2 | base64 -d | hexdump -ve '1/1 "%.2x"' >> checksum-linux.yml `
51
- 3.2 ` grep sha512 latest-mac.yml | head -n 2 | tail -n 1 | cut -d ":" -f 2 | base64 -d | hexdump -ve '1/1 "%.2x"' >> checksum-mac.yml `
52
- 3.3 ` grep sha512 latest.yml | head -n 2 | tail -n 1 | cut -d ":" -f 2 | base64 -d | hexdump -ve '1/1 "%.2x"' >> checksum.yml `
53
- 4 . Confirm SHA512 with:
54
- 4.1 ` echo "$(cat checksum-linux.yml) Threat-Dragon-ng-2.1.3.AppImage" | sha512sum --check `
55
- 4.2 ` echo "$(cat checksum-mac.yml) Threat-Dragon-ng-2.1.3.dmg" | sha512sum --check `
56
- 4.3 ` echo "$(cat checksum.yml) Threat-Dragon-ng-Setup-2.1.3.exe" | sha512sum --check `
57
- 5 . upload ` checksum*.yml ` files
47
+ - Download desktop installers for Linux, MacOS and Windows
48
+ - Download the ` latest*.yml ` auto-update checksum files
49
+ - Create SHA512 ` checksum*.yml ` files:
50
+
51
+ ``` text
52
+ grep sha512 latest-linux.yml | head -n 2 | tail -n 1 | cut -d ":" -f 2 | base64 -d | \
53
+ hexdump -ve '1/1 "%.2x"' >> checksum-linux.yml
54
+ grep sha512 latest-mac.yml | head -n 2 | tail -n 1 | cut -d ":" -f 2 | base64 -d | \
55
+ hexdump -ve '1/1 "%.2x"' >> checksum-mac.yml
56
+ grep sha512 latest.yml | head -n 2 | tail -n 1 | cut -d ":" -f 2 | base64 -d | \
57
+ hexdump -ve '1/1 "%.2x"' >> checksum.yml
58
+ ```
59
+
60
+ - Confirm SHA512 with:
61
+
62
+ ``` text
63
+ echo "$(cat checksum-linux.yml) Threat-Dragon-ng-2.2.0.AppImage" | sha512sum --check
64
+ echo "$(cat checksum-mac.yml) Threat-Dragon-ng-2.2.0.dmg" | sha512sum --check
65
+ echo "$(cat checksum.yml) Threat-Dragon-ng-Setup-2.2.0.exe" | sha512sum --check
66
+ ```
67
+
68
+ - upload ` checksum*.yml ` files
58
69
59
70
### Check demo site
60
71
@@ -71,7 +82,7 @@ Edit the 'What's Changed' to filter out any chores.
71
82
72
83
Then update the release notes for the draft in the [ Threat Dragon release area] [ area ]
73
84
using the release notes using markdown provided by ` .release-note-template.md ` as a template,
74
- making sure to revise ` 2.x.x ` to the correct version number such as ` 2.1.3 `
85
+ making sure to revise ` 2.x.x ` to the correct version number such as ` 2.2.0 `
75
86
76
87
Promote the release from draft to public once everything is in place
77
88
0 commit comments