# This workflow will create a GitHub release every time a tag is pushed name: Deploy @onsonr/es to npm on: push: branches: - "master" - "main" jobs: release: permissions: contents: write runs-on: ubuntu-latest if: contains(github.event.head_commit.modified, 'src/') steps: - name: Checkout code uses: actions/checkout@v3 with: fetch-depth: 0 token: ${{ secrets.GITHUB_TOKEN }} - name: Setup pnpm uses: pnpm/action-setup@v4 - name: Setup Node uses: actions/setup-node@v3 with: node-version: 18 - name: Get pnpm store directory id: pnpm-cache run: | echo "pnpm_cache_dir=$(pnpm store path)" >> $GITHUB_OUTPUT - name: Setup pnpm cache uses: actions/cache@v3 with: path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}-pnpm-store- - name: Install deps (with cache) run: pnpm install - name: Setup Git Config run: | git config user.name "Prad N." git config user.email "prad@sonr.io" - name: Build run: pnpm run build - name: "Automated Version Bump and Release" run: | git add . git commit -m "chore: update build artifacts [skip ci]" || echo "No changes to commit" pnpm version patch git push git push --tags env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - uses: JS-DevTools/npm-publish@v3 with: token: ${{ secrets.NPM_TOKEN }}