Update GitHub Actions to use GH_TOKEN from secrets #27
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Publish to npm | |
on: | |
push: | |
tags: | |
- 'v*.*.*' | |
jobs: | |
publish: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Use Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 'lts/*' | |
- name: Install dependencies | |
run: yarn install | |
- name: Build the package | |
run: yarn build | |
- name: Configure Git | |
run: | | |
git config --local user.email "sarmaged@gmail.com" | |
git config --local user.name "Sarmaged" | |
- name: Delete existing tag | |
run: | | |
git tag -d ${GITHUB_REF#refs/tags/} || true | |
git push origin :refs/tags/${GITHUB_REF#refs/tags/} || true | |
- name: Install GitHub CLI | |
run: sudo apt-get install -y gh | |
- name: Bump version and publish to npm | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
run: | | |
yarn version --new-version ${GITHUB_REF#refs/tags/v} | |
echo "//registry.npmjs.org/:_authToken=${NODE_AUTH_TOKEN}" > .npmrc | |
yarn publish --new-version ${GITHUB_REF#refs/tags/v} | |
- name: Check for existing PR and create/update PR | |
env: | |
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} | |
run: | | |
PR_URL=$(gh pr list --head temp-branch --json url --jq .[0].url) | |
if [ -z "$PR_URL" ]; then | |
gh pr create --title "Auto-update version to ${GITHUB_REF#refs/tags/v}" --body "This PR was automatically created by GitHub Actions to update the version to ${GITHUB_REF#refs/tags/v}." --base main --head temp-branch | |
else | |
echo "PR already exists: $PR_URL" | |
fi | |
- name: Create GitHub Release | |
uses: actions/create-release@v1 | |
with: | |
tag_name: ${{ github.ref }} | |
release_name: Release ${{ github.ref }} | |
body: | | |
## Changes | |
- Describe your changes here | |
env: | |
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} |