如何通过访问令牌使用 Yarn 安装私有 git 存储库,而无需在 package.json 中进行硬编码?

问题描述 投票:0回答:1

我以为我可以使用

.npmrc
表示 v1 或
.yarnrc.yml
表示 v2/3/4,但在所有情况下,Yarn 甚至不会尝试向 Github 进行身份验证

nodeLinker: node-modules

npmScopes:
  packagescope:
    npmAlwaysAuth: true
    npmAuthToken: my_personal_access_token
    npmRegistryServer: "https://npm.pkg.github.com"

yarnPath: .yarn/releases/yarn-3.6.2.cjs

它的错误是:

错误命令失败。
退出代码:128
命令:git
参数: ls-remote --tags --heads https://github.com/user/some-dependency.git
目录:/home/me/Documents/projects/myapp
输出:
致命:无法读取“https://github.com”的用户名:终端提示已禁用

当我访问 github.com 时,我发现访问令牌从未被使用过,所以显然从未尝试过身份验证。

如何使用访问令牌安装存储库而不将其硬编码到 package.json 中?当我将它们硬编码到 package.json 中时,它工作得很好,但这是糟糕的安全实践,可能会破坏

git bisect
并有其他缺点。

我不能简单地使用 SSH,因为我需要它与第三方拥有的 CI 服务器一起工作,并且我不想放弃对我们所有存储库的无限制访问。

javascript node.js git npm yarnpkg
1个回答
0
投票

您可以将 GitHub 细粒度访问令牌与 EAS 秘密文件结合使用。

© www.soinside.com 2019 - 2024. All rights reserved.