5858 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
5959 NODE_AUTH_TOKEN : ${{ secrets.NPM_AUTH_TOKEN }}
6060
61- - name : Get version
61+ - name : Get version and changelog
6262 if : steps.changesets.outputs.published == 'true'
63- run : echo "VERSION=$(node -p "require('./package.json').version")" >> $GITHUB_ENV
63+ run : |
64+ echo "VERSION=$(node -p "require('./package.json').version")" >> $GITHUB_ENV
65+ echo "TAG=v$(node -p "require('./package.json').version")" >> $GITHUB_ENV
6466
6567 - name : Build executables
6668 if : steps.changesets.outputs.published == 'true'
@@ -74,38 +76,23 @@ jobs:
7476 # Windows
7577 bun build src/cli.ts --compile --outfile dependency-optimizer-windows-x64.exe --target=bun-windows-x64
7678
79+ - name : Create tgz archives
80+ if : steps.changesets.outputs.published == 'true'
81+ run : |
82+ tar -czf dependency-optimizer-macos-x64.tgz dependency-optimizer-macos-x64
83+ tar -czf dependency-optimizer-macos-arm64.tgz dependency-optimizer-macos-arm64
84+ tar -czf dependency-optimizer-linux-x64.tgz dependency-optimizer-linux-x64
85+ tar -czf dependency-optimizer-windows-x64.tgz dependency-optimizer-windows-x64.exe
86+
7787 - name : Upload executables to release
7888 if : steps.changesets.outputs.published == 'true'
79- uses : actions/github-script@v7
89+ run : |
90+ gh release upload ${{ env.TAG }} \
91+ dependency-optimizer-macos-x64.tgz \
92+ dependency-optimizer-macos-arm64.tgz \
93+ dependency-optimizer-linux-x64.tgz \
94+ dependency-optimizer-windows-x64.tgz \
95+ --clobber
8096 env :
81- VERSION : ${{ env.VERSION }}
82- with :
83- github-token : ${{ secrets.GITHUB_TOKEN }}
84- script : |
85- const fs = require('fs');
86- const tag = `v${process.env.VERSION}`;
87- const release = await octokit.rest.repos.getReleaseByTag({
88- owner: context.repo.owner,
89- repo: context.repo.repo,
90- tag: tag
91- });
92-
93- const executables = [
94- { name: 'dependency-optimizer-macos-x64', path: 'dependency-optimizer-macos-x64' },
95- { name: 'dependency-optimizer-macos-arm64', path: 'dependency-optimizer-macos-arm64' },
96- { name: 'dependency-optimizer-linux-x64', path: 'dependency-optimizer-linux-x64' },
97- { name: 'dependency-optimizer-windows-x64.exe', path: 'dependency-optimizer-windows-x64.exe' }
98- ];
99-
100- for (const exe of executables) {
101- if (fs.existsSync(exe.path)) {
102- const file = fs.readFileSync(exe.path);
103- await octokit.rest.repos.uploadReleaseAsset({
104- owner: context.repo.owner,
105- repo: context.repo.repo,
106- release_id: release.data.id,
107- name: exe.name,
108- data: file
109- });
110- }
111- }
97+ TAG : ${{ env.TAG }}
98+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments