v3.0.1 #31
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
# When making a release, please keep in mind that this action expects and validates a few things: | |
# - Releases marked as drafts will be ignored (ie. they will not publish). | |
# - Ensure that package.json has a version. | |
# - Ensure the git tag you create during the release process starts with a v (ie. v1.2.3). | |
# - Ensure that the version in package.json matches the release tag created. | |
# - Ensure versions are valid semver format. | |
# - Ensure the GitHub release is marked as a pre-release if the semver version has a pre-release tag. | |
# This script was inspired by this README: https://github.com/marketplace/actions/github-releases-for-automated-package-publishing | |
name: Publish Package to npmjs | |
on: | |
release: | |
types: [created] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
# Note we set an `id` called `release`. We'll use that later... | |
- name: Validate and extract release information | |
id: release | |
uses: manovotny/[email protected] | |
# Setup .npmrc file to publish to npm | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: "16.x" | |
always-auth: true | |
registry-url: "https://registry.npmjs.org" | |
# Perform installs, run tests, run a build step, etc. here, as needed. | |
- run: yarn | |
# The last two steps will publish the package. Note that we're using | |
# information from the `release` step above (I told you we'd use it | |
# later). Notice the `if` statements on both steps... | |
# | |
# If there *is* a tag (ie. `beta`, `canary`, etc.), we publish a | |
# "pre-release" or "tagged" version of a package (ie. 1.2.3-beta.1). | |
# | |
# If there *is not* a tag (ie. `beta`, `canary`, etc.), we publish a | |
# version of a package (ie. 1.2.3). | |
# | |
# This example is using npm to publish, but you could just as easily | |
# use yarn, if you prefer. It's also publishing to the NPM registry, | |
# thus, it's using `NPM_TOKEN`, but you could just as easily use | |
# `GITHUB_TOKEN` if you were publishing to the GitHub Package registry. | |
# This will publish a "pre-release" or "tagged" version of a package. | |
# This will publish a version of a package. | |
- name: Publish version | |
if: steps.release.outputs.tag == '' | |
run: yarn publish | |
env: | |
NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Publish tagged version | |
if: steps.release.outputs.tag != '' | |
run: yarn publish --tag ${{ steps.release.outputs.tag }} | |
env: | |
NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} |