【问题标题】:Can't publish private npm package on Gitlab - E404 Not found PUT无法在 Gitlab 上发布私有 npm 包 - E404 Not found PUT
【发布时间】:2021-06-06 16:19:46
【问题描述】:

我尝试了许多不同的文档和教程来在私有 gitlab 实例上发布一个作用域 npm 包。

到目前为止,我已经:

创建了一个具有包写入和读取权限的部署令牌:

设置一个包含以下内容的 .npmrc 文件:

@<scope>:registry=https://<domain>/api/v4/packages/npm/

//<domain>/api/v4/projects/<id>/packages/npm/:_authToken=<token>

//<domain>/api/v4/packages/npm/:_authToken=<token>

将“publishConfig”添加到“package.json”:

{
  "name": "@<scope>/<name>",
  "version": "1.0.0",
  "main": "dist/index.js",
  "license": "MIT",
  "publishConfig": {
    "@<scope>:registry": "https://<domain>/api/v4/projects/<id>/packages/npm"
  },
  "scripts": {
    "build": "tsc",
    "prepublish": "tsc"
  },
  "devDependencies": {
    "ts-node": "^9.1.1"
  }
}

已验证 repo 允许存储包:

但每次我尝试运行 npm publishyarn publish 时,它都会构建、打包但无法发布:

日志文件详细重复上面的错误日志。

我正在尝试为内部服务发布私有 SDK,并且需要一种方法来发布它,以便只有具有正确凭据的人才能在他们的项目中安装它。

提供的链接(未找到 - PUT https:// )重定向到 npmjs.com,我认为这不应该发生,因为我试图将它存储在 Gitlab 而不是在 npmjs 上购买组织。

我已经在私有域(运行 gitlab 13.9.1)和 https://gitlab.com 上尝试了这个过程,在上面公开的相同存储库配置上都得到了相同的结果。

我错过了一些步骤吗?提前致谢!

【问题讨论】:

    标签: npm gitlab npm-publish


    【解决方案1】:

    URL 的编辑部分中的项目 ID 显示为尝试发布导致的错误消息的一部分,看起来相当长。项目的 ID 不是项目的 slug。它是一个数值。

    【讨论】:

      猜你喜欢
      • 2021-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多