提问人:i2i3 提问时间:11/13/2023 最后编辑:i2i3 更新时间:11/14/2023 访问量:59
Node 项目在同一帐户下的 github action 工作流中安装 github 私有包
Node project installing a github private package in a github action workflow under the same account
问:
github 文档真的让我感到困惑。我到底应该怎么做才能将 github 包中的包嵌入 github actions 中?
在 github action 工作流中,文档建议使用 .但是我看不出如何在 Node 项目中使用它。GITHUB_TOKEN
npm install
工作流程
on: push
jobs:
install-package:
permissions:
packages: read
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.x
- run: npm i
.npmrc
// MY_SCOPE is my account name.
@MY_SCOPE:registry=https://npm.pkg.github.com
错误
npm ERR! code E401
npm ERR! 401 Unauthorized - GET https://npm.pkg.github.com/@MY_PACKAGE - authentication token not provided
npm ERR! A complete log of this run can be found in: /home/runner/.npm/_logs/2023-11-13T04_23_29_816Z-debug-0.log
Error: Process completed with exit code 1.
*私有包和打算安装它的项目都在同一个帐户下。
答:
0赞
i2i3
11/13/2023
#1
我刚才已经想通了。我在结帐操作后添加到 .npmrc 中。GITHUB_TOKEN
*根据 @Azeem 的评论,这仅适用于我的情况,即打算安装它的包和项目位于同一帐户下。如果需要在 github registry 中安装包,则需要使用 PAT 进行安装。
工作流程
on: push
jobs:
install-package:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
// Add the token value into .npmrc
- run: echo -e "\n//npm.pkg.github.com/:_authToken=${{ secrets.GITHUB_TOKEN }}" >> ./.npmrc
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.x
- run: npm i
评论
0赞
Azeem
11/13/2023
尝试将其与另一个工作流安装在同一个存储库(范围)中?
0赞
i2i3
11/13/2023
显式添加 .GITHUB_TOKEN
0赞
Azeem
11/13/2023
在不同作业下的同一工作流中发布和安装?
0赞
i2i3
11/13/2023
不。发布工作流在包的工作流中完成,安装在项目的工作流中进行。我可能不明白你的意图。
1赞
Azeem
11/13/2023
右。是的。这就是为什么我最初将其标记为重复项的原因。但是,您的用例是不同的。您可能希望为将来的读者提供这些关键信息来更新您的问题。谢谢!
评论