diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5a450d99d..7cc082f50 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -26,7 +26,7 @@ jobs: cache: "npm" - run: npm ci - run: | - ./bin/update-build-info.sh + npm run update-build-info ./bin/build-mac-x64.sh - uses: actions/upload-artifact@v4 with: @@ -44,7 +44,7 @@ jobs: cache: "npm" - run: npm ci - run: | - ./bin/update-build-info.sh + npm run update-build-info ./bin/build-mac-arm64.sh - uses: actions/upload-artifact@v4 with: @@ -62,7 +62,7 @@ jobs: cache: "npm" - run: npm ci - run: | - ./bin/update-build-info.sh + npm run update-build-info ./bin/build-linux-x64.sh - uses: actions/upload-artifact@v4 with: @@ -84,7 +84,7 @@ jobs: cache: "npm" - run: npm ci - run: | - ./bin/update-build-info.sh + npm run update-build-info ./bin/build-server.sh - uses: actions/upload-artifact@v4 with: @@ -109,7 +109,7 @@ jobs: cache: "npm" - run: npm ci - run: | - ./bin/update-build-info.sh + npm run update-build-info ./bin/build-win-x64.sh DONTPACK - uses: actions/upload-artifact@v4 with: @@ -128,7 +128,7 @@ jobs: - run: npm ci - name: Run installer build run: | - ./bin/update-build-info.sh + npm run update-build-info npm run make-electron - name: Publish installer artifact uses: actions/upload-artifact@v4 diff --git a/bin/release.sh b/bin/release.sh index abcba3e2b..cb1b36021 100755 --- a/bin/release.sh +++ b/bin/release.sh @@ -32,7 +32,7 @@ mv package.json.tmp package.json git add package.json -./update-build-info.sh +npm run update-build-info git add src/services/build.ts diff --git a/bin/update-build-info.sh b/bin/update-build-info.sh deleted file mode 100755 index 7da2cbc68..000000000 --- a/bin/update-build-info.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -echo 'export = { buildDate:"'`date --iso-8601=seconds`'", buildRevision: "'`git log -1 --format="%H"`'" };' > src/services/build.ts \ No newline at end of file diff --git a/bin/update-build-info.ts b/bin/update-build-info.ts new file mode 100644 index 000000000..94b56b606 --- /dev/null +++ b/bin/update-build-info.ts @@ -0,0 +1,25 @@ +import child_process from "child_process"; +import fs from "fs"; + +function getBuildDate() { + const now = new Date(); + now.setMilliseconds(0); + return now + .toISOString() + .replace(".000", ""); +} + +function getGitRevision() { + return child_process.execSync('git log -1 --format="%H"') + .toString("utf-8") + .trimEnd(); +} + +const output = `\ +export = { + buildDate: "${getBuildDate()}", + buildRevision: "${getGitRevision()}" +}; +`; + +fs.writeFileSync("src/services/build.ts", output); \ No newline at end of file diff --git a/package.json b/package.json index b049c76d0..4589007aa 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,8 @@ "start-electron-forge": "npm run prepare-dist && electron-forge start", "make-electron": "npm run webpack && npm run prepare-dist && electron-forge make", "package-electron": "electron-forge package", - "prepare-dist": "rimraf ./dist && tsc && ts-node ./bin/copy-dist.ts" + "prepare-dist": "rimraf ./dist && tsc && ts-node ./bin/copy-dist.ts", + "update-build-info": "ts-node bin/update-build-info.ts" }, "dependencies": { "@braintree/sanitize-url": "^7.1.0", diff --git a/src/services/build.ts b/src/services/build.ts index 96cb91704..2f3c59a7f 100644 --- a/src/services/build.ts +++ b/src/services/build.ts @@ -1 +1,4 @@ -export = { buildDate:"2024-07-14T22:32:45+03:00", buildRevision: "b811f3d399aed7e740bd8e92ef7edc7d15de7038" }; +export = { + buildDate: "2024-07-21T08:44:01Z", + buildRevision: "374a51b77c35f5ff2e619b49f1e7aeda16005945" +};