Merge pull request #12 from PxaMMaxP/fix/release-action

Fix/release action
This commit is contained in:
Max P.
2024-08-16 18:38:21 +02:00
committed by GitHub
2 changed files with 28 additions and 12 deletions

View File

@@ -54,14 +54,25 @@ jobs:
- name: Check if version changed
id: check_version
run: |
if [ "${{ env.VERSION }}" == "${{ env.PREVIOUS_TAG }}" ]; then
echo "Version has not changed. No release will be created."
exit 1
# Check if the version already exists as a tag
if git rev-parse "refs/tags/${{ env.VERSION }}" >/dev/null 2>&1; then
echo "skip_release=true" >> $GITHUB_OUTPUT
echo "Version ${{ env.VERSION }} already exists as a tag. No release will be created."
exit 0
fi
# Compare current version with previous tag
if [ "${{ env.VERSION }}" == "${{ env.PREVIOUS_TAG }}" ]; then
echo "skip_release=true" >> $GITHUB_OUTPUT
echo "Version has not changed. No release will be created."
exit 0
fi
echo "skip_release=false" >> $GITHUB_OUTPUT
shell: bash
- name: Generate release notes
id: generate_notes
if: steps.check_version.outputs.skip_release == 'false'
run: |
echo "Generating release notes from ${{ env.PREVIOUS_TAG }} to HEAD..."
repo_url=$(git config --get remote.origin.url)
@@ -73,23 +84,26 @@ jobs:
shell: bash
- name: Set Git user
if: steps.check_version.outputs.skip_release == 'false'
run: |
git config --local user.name "GitHub Actions"
git config --local user.email "actions@github.com"
shell: bash
- name: Create temporary branch
id: create_temp_branch
run: |
git checkout --orphan release/v${{ env.VERSION }}
git reset
rm -f .gitignore
git add README.md package.json LICENSE dist/ src/ tsconfig.json
git commit -m "Prepare files for release ${{ env.VERSION }}"
shell: bash
# - name: Create temporary branch
# id: create_temp_branch
# if: steps.check_version.outputs.skip_release == 'false'
# run: |
# git checkout --orphan release/v${{ env.VERSION }}
# git reset
# rm -f .gitignore
# git add README.md package.json LICENSE dist/ src/ tsconfig.json
# git commit -m "Prepare files for release ${{ env.VERSION }}"
# shell: bash
- name: Create and push tag
id: create_tag
if: steps.check_version.outputs.skip_release == 'false'
run: |
git tag ${{ env.VERSION }}
git push origin ${{ env.VERSION }}
@@ -98,6 +112,7 @@ jobs:
shell: bash
- name: Release
if: steps.check_version.outputs.skip_release == 'false'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ env.VERSION }}

View File

@@ -6,6 +6,7 @@
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
"scripts": {
"prepare": "npm run build",
"build": "npm run build:tsc",
"build:tsc": "tsc",
"lint": "eslint --ext .ts .",