diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7cf7e4c..3f319cd 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -1,4 +1,4 @@ -name: Release and Publish Package +name: Create Release and Publish to npm on: push: @@ -7,40 +7,46 @@ on: jobs: release: + name: Create Release and Publish to npm runs-on: ubuntu-latest + steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Node.js - uses: actions/setup-node@v3 - with: - node-version: '20' - registry-url: 'https://registry.npmjs.org' - - - name: Install dependencies - run: npm ci - - - name: Build - run: npm run build - - - name: Bump version, create tag, and push changes - id: bump_version - run: | - git config --local user.email "action@github.com" - git config --local user.name "GitHub Action" - npm version patch -m "Bump version to %s [skip ci]" - git push --follow-tags - echo VERSION=$(node -p "require('./package.json').version") >> $GITHUB_ENV - - - name: Create GitHub Release - uses: ncipollo/release-action@v1 - with: - tag: ${{ env.VERSION }} - name: Release ${{ env.VERSION }} - token: ${{ secrets.GITHUB_TOKEN }} - - - name: Publish to npm - run: npm publish - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Set up Node.js + uses: actions/setup-node@v3 + with: + node-version: '16' + registry-url: 'https://registry.npmjs.org' + + - name: Install dependencies + run: npm install + + # - name: Run tests + # run: npm test + + - name: Bump version and create tag + id: bump_version + uses: mathieudutour/github-tag-action@v6.0 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + tag_prefix: '' + + - name: Create GitHub release + id: create_release + uses: actions/create-release@v1 + with: + tag_name: ${{ steps.bump_version.outputs.new_tag }} + release_name: Release ${{ steps.bump_version.outputs.new_tag }} + body: | + Release notes for ${{ steps.bump_version.outputs.new_tag }} + draft: false + prerelease: false + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Publish to npm + run: npm publish + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}