Include git ref in website download zip name (#2339)

This commit is contained in:
GCHQ Developer 85297 2026-05-20 15:32:46 +01:00 committed by GitHub
parent 37a92460f0
commit 2cf778c253
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 7 deletions

View File

@ -89,6 +89,8 @@ module.exports = function (grunt) {
const compileYear = grunt.template.today("UTC:yyyy"), const compileYear = grunt.template.today("UTC:yyyy"),
compileTime = grunt.template.today("UTC:dd/mm/yyyy HH:MM:ss") + " UTC", compileTime = grunt.template.today("UTC:dd/mm/yyyy HH:MM:ss") + " UTC",
pkg = grunt.file.readJSON("package.json"), pkg = grunt.file.readJSON("package.json"),
version = process.env.GITHUB_SHA || `v${pkg.version}`,
downloadZipFilename = `CyberChef_${version}.zip`,
webpackConfig = require("./webpack.config.js"), webpackConfig = require("./webpack.config.js"),
BUILD_CONSTANTS = { BUILD_CONSTANTS = {
COMPILE_YEAR: JSON.stringify(compileYear), COMPILE_YEAR: JSON.stringify(compileYear),
@ -129,7 +131,9 @@ module.exports = function (grunt) {
chunks: ["main"], chunks: ["main"],
compileYear: compileYear, compileYear: compileYear,
compileTime: compileTime, compileTime: compileTime,
version: pkg.version, version: version,
latestReleaseVersion: pkg.version,
downloadZipFilename: downloadZipFilename,
minify: { minify: {
removeComments: true, removeComments: true,
collapseWhitespace: true, collapseWhitespace: true,
@ -245,7 +249,7 @@ module.exports = function (grunt) {
"!build/prod/index.html", "!build/prod/index.html",
"!build/prod/BundleAnalyzerReport.html", "!build/prod/BundleAnalyzerReport.html",
], ],
dest: `build/prod/CyberChef_v${pkg.version}.zip` dest: `build/prod/${downloadZipFilename}`
} }
}, },
connect: { connect: {
@ -333,12 +337,12 @@ module.exports = function (grunt) {
switch (process.platform) { switch (process.platform) {
case "darwin": case "darwin":
return chainCommands([ return chainCommands([
`shasum -a 256 build/prod/CyberChef_v${pkg.version}.zip | awk '{print $1;}' > build/prod/sha256digest.txt`, `shasum -a 256 build/prod/${downloadZipFilename} | awk '{print $1;}' > build/prod/sha256digest.txt`,
`sed -i '' -e "s/DOWNLOAD_HASH_PLACEHOLDER/$(cat build/prod/sha256digest.txt)/" build/prod/index.html` `sed -i '' -e "s/DOWNLOAD_HASH_PLACEHOLDER/$(cat build/prod/sha256digest.txt)/" build/prod/index.html`
]); ]);
default: default:
return chainCommands([ return chainCommands([
`sha256sum build/prod/CyberChef_v${pkg.version}.zip | awk '{print $1;}' > build/prod/sha256digest.txt`, `sha256sum build/prod/${downloadZipFilename} | awk '{print $1;}' > build/prod/sha256digest.txt`,
`sed -i -e "s/DOWNLOAD_HASH_PLACEHOLDER/$(cat build/prod/sha256digest.txt)/" build/prod/index.html` `sed -i -e "s/DOWNLOAD_HASH_PLACEHOLDER/$(cat build/prod/sha256digest.txt)/" build/prod/index.html`
]); ]);
} }

View File

@ -868,15 +868,15 @@
Be aware that the standalone version will never update itself, meaning it will not receive bug fixes or new features until you re-download newer versions manually. Be aware that the standalone version will never update itself, meaning it will not receive bug fixes or new features until you re-download newer versions manually.
</p> </p>
<h6>CyberChef v<%= htmlWebpackPlugin.options.version %></h6> <h6>CyberChef <%= htmlWebpackPlugin.options.version %></h6>
<ul> <ul>
<li>Build time: <%= htmlWebpackPlugin.options.compileTime %></li> <li>Build time: <%= htmlWebpackPlugin.options.compileTime %></li>
<li>The changelog for this version can be viewed <a href="https://github.com/gchq/CyberChef/blob/v<%= htmlWebpackPlugin.options.version %>/CHANGELOG.md">here</a></li> <li>The changelog for this version can be viewed <a href="https://github.com/gchq/CyberChef/blob/v<%= htmlWebpackPlugin.options.latestReleaseVersion %>/CHANGELOG.md">here</a></li>
<li>&copy; Crown Copyright 2016-<%= htmlWebpackPlugin.options.compileYear %></li> <li>&copy; Crown Copyright 2016-<%= htmlWebpackPlugin.options.compileYear %></li>
<li>Released under the Apache Licence, Version 2.0</li> <li>Released under the Apache Licence, Version 2.0</li>
<li>SHA256 hash: DOWNLOAD_HASH_PLACEHOLDER</li> <li>SHA256 hash: DOWNLOAD_HASH_PLACEHOLDER</li>
</ul> </ul>
<a href="CyberChef_v<%= htmlWebpackPlugin.options.version %>.zip" download class="btn btn-outline-primary">Download ZIP file</a> <a href="<%= htmlWebpackPlugin.options.downloadZipFilename %>" download class="btn btn-outline-primary">Download ZIP file</a>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Ok</button> <button type="button" class="btn btn-primary" data-dismiss="modal">Ok</button>