I have written a test file for a Github Action:
test.yml
name: Test
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x, 16.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
- run: npm run build --if-present
- run: npm test
but my package.json uses an organization private repo. When the Github Action runs it fails and I get the error:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/@org/repo/
npm ERR! 404
npm ERR! 404 '@org/repo@1.2.3' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/runner/.npm/_logs/2022-02-10T17_17_46_961Z-debug.log
Error: Process completed with exit code 1.
My research trying to solve the issue:
- Package is not publishing to npm (not in the npm registry)
- Getting 404 when attempting to publish new package to NPM
- Installing npm package fails with 404
- 404 error while publishing npm package -
npm ERR! 404 Not Found - PUT https://registry.npmjs.org/
In my Github Action how can I properly reference the private org repo so that my test will work correctly or is there a step I'm missing?