1515 runs-on : ubuntu-latest
1616 outputs :
1717 new_version : ${{ steps.extract.outputs.new_version }}
18- old_version : ${{ steps.extract.outputs.old_version }}
18+ last_commit_version : ${{ steps.extract.outputs.last_commit_version }}
19+ prev_version : ${{ steps.extract.outputs.prev_version }}
1920 changelog : ${{ steps.extract.outputs.changelog }}
2021
2122 steps :
@@ -34,15 +35,17 @@ jobs:
3435 line3=$(echo "${versions[2]}" | cut -d: -f1 || echo "\$")
3536
3637 new_version=$(echo "${versions[0]}" | sed -E 's/^.*##[[:space:]]*\[?([0-9]+\.[0-9]+\.[0-9]+)\]?.*/\1/')
37- old_version=$(git show ${{ steps.prev.outputs.sha }}:package.json | jq -r .version)
38+ last_commit_version=$(echo "${versions[1]}" | sed -E 's/^.*##[[:space:]]*\[?([0-9]+\.[0-9]+\.[0-9]+)\]?.*/\1/')
39+ prev_version=$(git show ${{ steps.prev.outputs.sha }}:package.json | jq -r .version)
3840
3941 changelog=$(sed -n "$line1,$((line2 - 1))p" CHANGELOG.md | tail -n +2)
4042
41- echo "new_version=$new_version" >> "$GITHUB_OUTPUT"
42- echo "old_version=$old_version" >> "$GITHUB_OUTPUT"
43- echo "changelog<<EOF" >> "$GITHUB_OUTPUT"
44- echo "$changelog" >> "$GITHUB_OUTPUT"
45- echo "EOF" >> "$GITHUB_OUTPUT"
43+ echo "new_version=$new_version" | tee "$GITHUB_OUTPUT"
44+ echo "last_commit_version=$last_commit_version" | tee "$GITHUB_OUTPUT"
45+ echo "prev_version=$prev_version" | tee "$GITHUB_OUTPUT"
46+ echo "changelog<<EOF" | tee "$GITHUB_OUTPUT"
47+ echo "$changelog" | tee "$GITHUB_OUTPUT"
48+ echo "EOF" | tee "$GITHUB_OUTPUT"
4649
4750 - name : Verify version matches package.json and package-lock.json
4851 run : |
5154 pkg_version=$(jq -r .version package.json)
5255 lock_version=$(jq -r .version package-lock.json)
5356
54- echo "CHANGELOG.md: $changelog_version"
55- echo "package.json: $pkg_version"
56- echo "package-lock.json: $lock_version"
57- echo "Previous version: $lock_version"
57+ echo "CHANGELOG.md: $changelog_version"
58+ echo "package.json: $pkg_version"
59+ echo "package-lock.json: $lock_version"
5860
5961 if [[ "$pkg_version" != "$changelog_version" ]]; then
6062 echo "❌ Version mismatch: package.json ($pkg_version) != CHANGELOG.md ($changelog_version)"
@@ -69,14 +71,14 @@ jobs:
6971 echo "✅ Versions match"
7072
7173 - name : Create tag and release
72- if : ${{ steps.version.outputs.new_version != steps.version.outputs.old_version || github.event.inputs.force == 'true' }}
74+ if : ${{ steps.version.outputs.new_version != steps.version.outputs.last_commit_version || github.event.inputs.force == 'true' }}
7375 uses : softprops/action-gh-release@v1
7476 with :
7577 tag_name : v${{ steps.version.outputs.new_version }}
7678 name : Release v${{ steps.version.outputs.new_version }}
7779 body : |
7880 ${{ env.changelog }}
7981
80- **Full Changelog**: https://github.com/augustocdias/vscode-shell-command/compare/v${{ steps.version.outputs.old_version }}...v${{ steps.version.outputs.new_version }}
82+ **Full Changelog**: https://github.com/augustocdias/vscode-shell-command/compare/v${{ steps.version.outputs.prev_version }}...v${{ steps.version.outputs.new_version }}
8183 env :
8284 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments