Я опубликовал частный пакет в репозитории пакетов нашей организации.
В соответствии с документацией я добавил файл .npmrc в корень другого проекта со следующим содержимым:
registry=https://npm.pkg.github.com/my-org
В моем локальном ~ / .npmrc находится мой Authtoken для npm.pkg.github.com
Я установил опубликованный пакет в свой package.json со следующей записью в package.json
"@my-org/my-package": "^1.0.0",
При локальной установке все работает нормально.
При установке через Github Actions установка завершается ошибкой:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://npm.pkg.github.com/my-org/@my-org%2fmy-package - npm package "my-package" does not exist under owner "my-org"
npm ERR! 404
npm ERR! 404 '@my-org/[email protected]' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
Кажется, что "my-org" используется два раза в пути к пакету? Почему это работает локально, а не в Github Actions?
Первоначально мой .npmrc был таким (организация не добавлена в URL-адрес реестра):
registry=https://npm.pkg.github.com
Это также отлично работает локально.
Он также работает для всех пакетов с ограниченной областью действия (например, @ coogle-cloud) в действии github, но не работает для пакетов с незаданной областью:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://npm.pkg.github.com/chai
npm ERR! 404
npm ERR! 404 '[email protected]' 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.
Обновление: Итак, я взял свой личный доступ (который работал локально) и зафиксировал, теперь рабочий процесс установки завершается успешно.
Документация (https://help.github.com/en/github/managing-packages-with-github-packages/using-github-packages-with-github-actions) говорит: «GITHUB_TOKEN прочитал: пакеты и напишите: объемы пакетов. " Разве этого не достаточно?
В моем личном токене доступа есть delete: packages, read: packages, repo, write: packages.