ohpm 制品库

该文档围绕 ohpm 制品库展开,涵盖创建制品库、获取地址、创建令牌等内容。详细说明了本地、云原生构建、云原生开发场景下的凭证配置、拉取和推送制品的方法,还提及了配置开发镜像,并推荐查阅官方文档了解更 多用法 。

创建制品库

参考 创建制品库

获取制品库地址

参考 获取制品库的地址

创建令牌

云原生构建平台的所有资源(包括代码仓库、制品库、OPENAPI等),都需要通过访问令牌进行操作。 创建令牌

本地使用

配置凭证

提供两种方式参考 ::: tabs @tab 命令行配置 替换 <YOUR_TOKEN> 为您的令牌,<REPO_URL> 为制品库地址,<REPO_URL_SUFFIX> 为制品库地址去掉协议前缀

# 示例
# ohpm config set registry https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# ohpm config set publish_registry https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# ohpm config set //ohpm.cnb.cool/cnb/ohpm_repo/-/packages/:_auth=29bGg84xqRf3ZweNpYlL92e7tDv

# 配置拉取仓库
ohpm config set registry <REPO_URL>
# 配置推送仓库
ohpm config set publish_registry <REPO_URL>

ohpm config set //<REPO_URL_SUFFIX>:_auth=<YOUR_TOKEN>

@tab 配置文件配置 在项目的 package.json 同一级目录下的.ohpmrc文件粘贴如下内容

替换 <YOUR_TOKEN> 为您的令牌,<REPO_URL> 为制品库地址,<REPO_URL_SUFFIX> 为制品库地址去掉协议前缀

# 示例
# registry=https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# publish_registry=https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# //ohpm.cnb.cool/cnb/ohpm_repo/-/packages/:_auth=29bGg84xqRf3ZweNpYlL92e7tDv

# 配置拉取仓库
registry=<REPO_URL>
# 配置推送仓库
publish_registry=<REPO_URL>

//<REPO_URL_SUFFIX>:_auth=<YOUR_TOKEN>

:::

拉取制品

使用如下命令拉取,注意替换 <PACKAGE_NAME><VERSION><REPO_URL>

# ohpm install @pura/harmony-utils@1.3.6 --registry=https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/

ohpm install <PACKAGE_NAME>@<VERSION> --registry=<REPO_URL>

推送制品

  1. 初始化 oh-package.json5,注意替换 <PACKAGE_NAME><VERSION>
{
  "name": "<PACKAGE_NAME>",
  "version": "<VERSION>",
  "description": "",
  "main": "index.js",
  "author": "",
  "license": "MIT"
}
  1. 使用命令发布 ohpm 包,注意替换包文件路径 <HAR_OR_TGZ_FILE>,制品库地址 <REPO_URL>
# 示例
# ohpm publish library.har --publish_registry=https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/

ohpm publish <HAR_OR_TGZ_FILE>  --publish_registry=<REPO_URL>

云原生构建

配置凭证

云原生构建使用令牌有三种方式,参考云原生构建,云原生开发中使用令牌,以下是具体客户端的使用方式

提供两种方式参考 ::: tabs @tab 命令行配置 替换 <REPO_URL> 为制品库地址,<REPO_URL_SUFFIX> 为制品库地址去掉协议前缀

# 示例
# ohpm config set registry https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# ohpm config set publish_registry https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# ohpm config set //ohpm.cnb.cool/cnb/ohpm_repo/-/packages/:_auth=${CNB_TOKEN}

# 配置拉取仓库
ohpm config set registry <REPO_URL>
# 配置推送仓库
ohpm config set publish_registry <REPO_URL>

# 第一种方式 使用 CNB_TOKEN
ohpm config set //<REPO_URL_SUFFIX>:_auth=${CNB_TOKEN}

# 第二种方式 直接使用,替换 <YOUR_TOKEN> 为您的令牌即可
# ohpm config set //<REPO_URL_SUFFIX>:_auth=<YOUR_TOKEN>

# 第三种方式,密钥仓库,替换 <ENV_NAME> 为您密钥仓库的变量
# ohpm config set //<REPO_URL_SUFFIX>:_auth=${<ENV_NAME>}

@tab 配置文件配置 在.ohpmrc文件粘贴如下内容,替换 <REPO_URL> 为制品库地址,<REPO_URL_SUFFIX> 为制品库地址去掉协议前缀

# 示例
# registry=https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# publish_registry=https://ohpm.cnb.cool/cnb/ohpm_repo/-/packages/
# //ohpm.cnb.cool/cnb/ohpm_repo/-/packages/:_auth=29bGg84xqRf3ZweNpYlL92e7tDv

# 配置拉取仓库
registry=<REPO_URL>
# 配置推送仓库
publish_registry=<REPO_URL>

# 第一种方式 使用 CNB_TOKEN
//<REPO_URL_SUFFIX>:_auth=${CNB_TOKEN}

# 第二种方式 直接使用,替换 <YOUR_TOKEN> 为您的令牌即可
# //<REPO_URL_SUFFIX>:_auth=<YOUR_TOKEN>

# 第三种方式,密钥仓库,替换 <ENV_NAME> 为您密钥仓库的变量
# //<REPO_URL_SUFFIX>:_auth=${<ENV_NAME>}

:::

拉取制品

替换 <PACKAGE_NAME><VERSION>, 替换 <REPO_URL> 为制品库地址,<REPO_URL_SUFFIX> 为制品库地址去掉协议前缀

main:
  push:
    - docker:
        image: <ohpm_image> # 使用您自己的ohpm镜像
      stages:
        - name: ohpm install
          script:
            # 使用 命令行配置凭证 需带上下面两行,使用 配置文件配置凭证 则不需要
            - ohpm config set registry <REPO_URL>      
            - ohpm config set //<REPO_URL_SUFFIX>:_auth=${CNB_TOKEN}

            - ohpm install <PACKAGE_NAME>@<VERSION> --registry=<REPO_URL>

推送制品

替换<HAR_OR_TGZ_FILE> 为包文件路径,<REPO_URL> 为制品库地址,<REPO_URL_SUFFIX> 为制品库地址去掉协议前缀

main:
  push:
    - docker:
        image: <ohpm_image> # 使用您自己的ohpm镜像
      stages:
        - name: ohpm publish
          script:
            # 使用 命令行配置凭证 需带上下面两行,使用 配置文件配置凭证 则不需要
            - ohpm config set publish_registry <REPO_URL>      
            - ohpm config set //<REPO_URL_SUFFIX>:_auth=${CNB_TOKEN}

            - ohpm publish <HAR_OR_TGZ_FILE> --publish_registry=<REPO_URL>

云原生开发

配置凭证

云原生构建 配置凭证 相同

配置开发镜像

$:
  vscode:
    - docker:
        image: <ohpm_image> # 使用您自己的ohpm镜像

拉取制品

本地开发 拉取制品 相同

推送制品

本地开发 推送制品 相同

更多用法

更多 ohpm 用法,请查阅 ohpm 官方文档

点评

点赞或评论
加载评论中...