From 5e988b56b8eff7d891d8189882b2f6bad8f551cf Mon Sep 17 00:00:00 2001 From: dev-minsoo Date: Mon, 20 Apr 2026 21:38:55 +0900 Subject: [PATCH] =?UTF-8?q?chore:=20=EB=A6=B4=EB=A6=AC=EC=A6=88=20?= =?UTF-8?q?=EB=B2=84=EC=A0=84=EC=9D=84=20=ED=99=95=EC=9E=A5=20=ED=8C=A8?= =?UTF-8?q?=ED=82=A4=EC=A7=80=EC=97=90=20=EB=B0=98=EC=98=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/release.yml | 8 +------- release.config.mjs | 7 +++++++ scripts/set-release-version.mjs | 19 +++++++++++++++++++ 3 files changed, 27 insertions(+), 7 deletions(-) create mode 100644 scripts/set-release-version.mjs diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7da4ca2..3d0bf5b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -38,13 +38,7 @@ jobs: - name: Run lint run: npm run lint - - name: Run build - run: npm run build - - - name: Package Chrome Web Store zip - run: cd dist && zip -r ../algorithmhub-webstore.zip . - - name: Create release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: npx -p semantic-release@25 -p @semantic-release/commit-analyzer@13 -p @semantic-release/release-notes-generator@14 -p @semantic-release/github@12 semantic-release + run: npx -p semantic-release@25 -p @semantic-release/commit-analyzer@13 -p @semantic-release/release-notes-generator@14 -p @semantic-release/exec@7 -p @semantic-release/github@12 semantic-release diff --git a/release.config.mjs b/release.config.mjs index d879b55..f4643d0 100644 --- a/release.config.mjs +++ b/release.config.mjs @@ -4,6 +4,13 @@ export default { plugins: [ "@semantic-release/commit-analyzer", "@semantic-release/release-notes-generator", + [ + "@semantic-release/exec", + { + prepareCmd: + "node scripts/set-release-version.mjs ${nextRelease.version} && npm run build && cd dist && zip -r ../algorithmhub-webstore.zip .", + }, + ], [ "@semantic-release/github", { diff --git a/scripts/set-release-version.mjs b/scripts/set-release-version.mjs new file mode 100644 index 0000000..0079272 --- /dev/null +++ b/scripts/set-release-version.mjs @@ -0,0 +1,19 @@ +import { readFile, writeFile } from "node:fs/promises"; + +const version = process.argv[2]; + +if (!version) { + throw new Error("Missing release version."); +} + +async function updateJsonFile(path) { + const content = await readFile(path, "utf8"); + const json = JSON.parse(content); + json.version = version; + await writeFile(path, `${JSON.stringify(json, null, 2)}\n`); +} + +await Promise.all([ + updateJsonFile("manifest.json"), + updateJsonFile("package.json"), +]);