Set up your GitHub Actions workflow with a specific version of node.js
Go to file
Bryan MacFarlane 2ae9264901 back to master
2020-05-04 12:44:15 -04:00
__tests__ format 2020-05-02 11:08:26 -04:00
.github no proxy fix 2020-05-03 18:40:24 -04:00
.vscode updated tests 2020-05-02 09:51:47 -04:00
dist back to master 2020-05-04 12:44:15 -04:00
docs Initial Import 2019-08-03 21:49:54 -04:00
externals Initial Import 2019-08-03 21:49:54 -04:00
src back to master 2020-05-04 12:44:15 -04:00
validate strip 1 on fallback extract 2020-05-02 16:26:50 -04:00
.gitignore wip 2020-04-24 08:58:38 -04:00
.prettierrc.json Initial Import 2019-08-03 21:49:54 -04:00
action.yml wip 2020-04-24 08:58:38 -04:00
CONDUCT add code of conduct 2020-04-16 14:00:00 -04:00
jest.config.js Initial Import 2019-08-03 21:49:54 -04:00
LICENSE Initial Import 2019-08-03 21:49:54 -04:00
package-lock.json strip 1 on fallback extract 2020-05-02 16:26:50 -04:00
package.json Merge branch 'master' into node-versions 2020-05-02 16:34:40 -04:00
README.md Merge pull request #108 from nschonni/patch-2 2020-05-02 11:47:58 -04:00
tsconfig.json updated tests 2020-05-02 09:51:47 -04:00

setup-node

GitHub Actions status

This action sets by node environment for use in actions by:

  • optionally downloading and caching a version of node - npm by version spec and add to PATH
  • registering problem matchers for error output

Usage

See action.yml

Basic:

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
  with:
    node-version: '10.x'
- run: npm install
- run: npm test

Matrix Testing:

jobs:
  build:
    runs-on: ubuntu-16.04
    strategy:
      matrix:
        node: [ '10', '12' ]
    name: Node ${{ matrix.node }} sample
    steps:
      - uses: actions/checkout@v2
      - name: Setup node
        uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node }}
      - run: npm install
      - run: npm test

Publish to npmjs and GPR with npm:

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
  with:
    node-version: '10.x'
    registry-url: 'https://registry.npmjs.org'
- run: npm install
- run: npm publish
  env:
    NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- uses: actions/setup-node@v1
  with:
    registry-url: 'https://npm.pkg.github.com'
- run: npm publish
  env:
    NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Publish to npmjs and GPR with yarn:

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
  with:
    node-version: '10.x'
    registry-url: <registry url>
- run: yarn install
- run: yarn publish
  env:
    NODE_AUTH_TOKEN: ${{ secrets.YARN_TOKEN }}
- uses: actions/setup-node@v1
  with:
    registry-url: 'https://npm.pkg.github.com'
- run: yarn publish
  env:
    NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Use private packages:

steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
  with:
    node-version: '10.x'
    registry-url: 'https://registry.npmjs.org'
# Skip post-install scripts here, as a malicious
# script could steal NODE_AUTH_TOKEN.
- run: npm install --ignore-scripts
  env:
    NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
# `npm rebuild` will run all those post-install scripts for us.
- run: npm rebuild && npm run prepare --if-present

License

The scripts and documentation in this project are released under the MIT License

Contributions

Contributions are welcome! See Contributor's Guide

Code of Conduct

👋 Be nice. See our code of conduct