gpt4 book ai didi

npm - 尝试打包时 .gitlab-ci 出错

转载 作者:行者123 更新时间:2023-12-05 05:38:25 26 4
gpt4 key购买 nike

所以我尝试在我的 .gitlab-ci.yml 中设置条件,如果没有包,则 npm publish 将库打包到 GitLab 注册表中我向我的管道授予了注册表和 npm 访问 token 的权限,但我仍然收到未经授权的错误这是 .gitlab-ci.yml 的一部分,我在其中创建了 .npmrc 文件并设置了配置。

script:
- |
if [[ ! -f .npmrc ]]; then
echo 'No .nmprc found! Creating one now.'
echo "@${CI_PROJECT_ROOT_NAMESPACE}:registry=${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/npm/">.npmrc
echo "//${CI_SERVER_HOST}/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}">>.npmrc
echo "//registry.npmjs.org/:_authToken=${NPM_ACCESS_TOKEN}">>.npmrc
echo "Created the following .npmrc:"; cat .npmrc
fi

当我尝试查找是否有名称为 $NPM_PACKAGE_NAME 的包时,管道会给我这个信息

@scope:registry = "https://gitlab.example.com/api/v4/projects/project_id/packages/npm/" 
//gitlab.example.com/api/v4/projects/projet_id/packages/npm/:_authToken = (protected)
//registry.npmjs.org/:_authToken = (protected)
; "cli" config from command line options
long = true
$ npm config set always-auth true
$ echo $(npm view "${NPM_PACKAGE_NAME}" )
npm ERR! code E401
npm ERR! 401 Unauthorized - GET https://gitlab.example.com/api/v4/projects/project_id/packages/npm/@scope%2fmy-package

地点:

- NPM_PACKAGE_NAME=$(node -p "require('./my-package/package.json').name")

最佳答案

您可以尝试 npm commands directly 而不是回显到 .npmrc

npm config set -- '//gitlab.example.com/api/v4/projects/<your_project_id>/packages/npm/:_authToken' "${NPM_TOKEN}"
npm config set -- '//gitlab.example.com/api/v4/packages/npm/:_authToken' "${NPM_TOKEN}"

这样,您就可以确定 .npmrc 已正确更新。

关于npm - 尝试打包时 .gitlab-ci 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72917585/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com