![](/img/trans.png)
[英]Install private github package from package.json on Github Actions
[英]How to install scoped private npm package from Artifactory in Github Actions
这个问题包括一个特定的用例:
@myscope/mypackage
https://company.jfrog.io/artifactory/api/npm/my-npm-registry/
我怎样才能做到这一点?
.npmrc
首先,您需要在本地.npmrc
文件中配置您的访问权限。 您可以将此文件放在源根文件夹中。
always-auth = true
# First, set a different registry URL for your scope
@myscope:registry=https://company.jfrog.io/artifactory/api/npm/my-npm-registry/
# Then, for this scope, you need to set the token
//company.jfrog.io/artifactory/api/npm/my-npm-registry/:_auth = {{your token - see below}}
您需要从 Artifactory 获取 NPM 令牌(注意它不是您的 API 密钥。
curl -u {{ ARTIFACTORY_USERNAME }}:{{ ARTIFACTORY_API_KEY }} https://company.jfrog.io/artifactory/api/npm/auth/
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f {{ ARTIFACTORY_USERNAME }},{{ ARTIFACTORY_API_KEY }}))) Invoke-RestMethod -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} https://company.jfrog.io/artifactory/api/npm/auth/
_auth = {{ YOUR_NPM_TOKEN }} always-auth = true
.npmrc
文件中。如何在 Github 操作中执行所有这些操作?
JFROG_USER
& JFROG_PAT
。yarn/npm install
之前将下一步添加到您的工作流程中: - name: npm token run: | echo "@myscope:registry=https://company.jfrog.io/artifactory/api/npm/my-npm-registry/" >.npmrc echo "//company.jfrog.io/artifactory/api/npm/my-npm-registry/:$(curl -u ${{ secrets.JFROG_USER }}:${{ secrets.JFROG_PAT }} https://company.jfrog.io/artifactory/api/npm/auth/)" >>.npmrc
祝你好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.