!2 v1.1.0 Merge pull request !2 from Chenyt26/master-dev
本READEME指导是基于npm CloudArtifact Action使用华为云CloudArtifact npm 私仓Workflows样例
私有依赖库(CloudArtifact)是发布服务(CloudRelease)的语言软件仓库功能。用于管理私有组件(开发者通俗称之为私服),包括Maven、Npm、Go、PyPI、Rpm等多种仓库格式。使用华为云CloudArtifact npm 私仓有如下场景:1.npm publish 推送npm package到 CloudArtifact npm 私仓2.npm install 拉取CloudArtifact npm 私仓的npm package
(1) 新建私有依赖库(2) 管理用户权限(3) CloudArtifact npm 私仓账号信息获取私有依赖库首页->点击需要的npm仓库->右上角操作指导->点击下载配置文件->npm配置在下载的npmrc文件当中
npm-cloudartifact-action 两个参数registry_list(npm仓库源)和auth_list(仓库认证信息)都属于npm用户配置文件~/.npmrc文件的配置信息。其中仓库认证信息中${{ secret.NPM_AUTH }},格式为 (user:password).base64,即用户名和密码中间用冒号隔开,通过base64编码后的字符串。如:dGVzdDoxMjM=npm配置信息分为不包含@scope和包含@scope两种方式。目前华为云CloudArtifact npm 私仓支持的是scope方式,含scope的方式支持配置多仓库。下面给出两个参数的具体的样例。
registry_list
auth_list
.npmrc配置格式
registry=https://some.npm.registry/ _auth=(user:password).base64 # 用户名和密码中间用冒号隔开,通过base64编码后的字符串。如:_auth=dGVzdDoxMjM=
action中参数配置例子
steps: - uses: huaweicloud/npm-cloudartifact-action@v1.1.0 with: registry_list: | registry=https://some.npm.registry/ auth_list: | _auth=${{ secrets.NPM_AUTH }}
@cloud:registry=https://devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/ //devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/:_auth=(user:password).base64
steps: - uses: huaweicloud/npm-cloudartifact-action@v1.1.0 with: registry_list: | @cloud:registry=https://devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/ auth_list: | //devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/:_auth=${{ secrets.NPM_AUTH }}
步骤说明:(1)代码检出(2)华为云CloudArtifact npm 私仓配置(3)npm publish 推送npm package到 CloudArtifact npm 私仓
name: npm Cloudartifact Action Publish Demo on: push: branches: master jobs: Publish-to-CloudArtifact-npm: runs-on: ubuntu-latest steps: # 代码检出 - uses: actions/checkout@v2 # GitHub Action环境默认nodejs版本为16,可以根据自己项目需求修改nodejs版本 - name: Setup node uses: actions/setup-node@v3 with: node-version: 16 # 华为云CloudArtifact npm 私仓配置 - name: Setup Huawei Cloud npm CloudArtifact uses: huaweicloud/npm-cloudartifact-action@v1.1.0 with: registry_list: | @cloud:registry=https://devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/ auth_list: | //devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/:_auth=${{ secrets.NPM_AUTH }} # 推送npm二进制包到华为云CloudArtifact npm 私仓 - name: publish npm package run: | npm publish
详情可参考 ./github/workflows/npm-cloudartifact-action-publish-demo.yml
【注意】1.此样例假设要推送的npm package名称为:@cloud/vue-demo (即本仓库package.json文件中name值)2.私有依赖库CloudArtifact中npm私仓路径必须包含@cloud 3.action参数registry_list包含@cloud的npm仓库4.使用到账号密码等敏感信息,建议将参数内容设置在GITHUB的Settings->Secrets->Actions
步骤说明:(1)代码检出(2)华为云CloudArtifact npm 私仓配置(3)npm install 拉取CloudArtifact npm 私仓的npm package
name: npm Cloudartifact Action Install Demo on: push: branches: master jobs: Install-CloudArtifact-npm: runs-on: ubuntu-latest steps: # 代码检出 - uses: actions/checkout@v2 # GitHub Action环境默认nodejs版本为16,可以根据自己项目需求修改nodejs版本 - name: Setup node uses: actions/setup-node@v3 with: node-version: 16 # 华为云CloudArtifact npm 私仓配置 - name: Setup Huawei Cloud npm CloudArtifact uses: huaweicloud/npm-cloudartifact-action@v1.1.0 with: registry_list: | registry=https://registry.npmjs.org/ @cloud:registry=https://devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/ auth_list: | //devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/npm/{{repo_name}}/:_auth=${{ secrets.NPM_AUTH }} # 拉取CloudArtifact npm 私仓的npm package - name: install npm package run: | npm install
详情可参考 ./github/workflows/npm-cloudartifact-action-install-demo.yml
【注意】1.npm仓库存在npm package @cloud/vue-demo2.action参数registry_list包含@cloud的npm仓库3.使用到账号密码等敏感信息,建议将参数内容设置在GITHUB的Settings->Secrets->Actions
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802032778号
使用华为云CloudArtifact npm 私仓workflows样例
本READEME指导是基于npm CloudArtifact Action使用华为云CloudArtifact npm 私仓Workflows样例
私有依赖库(CloudArtifact)是发布服务(CloudRelease)的语言软件仓库功能。用于管理私有组件(开发者通俗称之为私服),包括Maven、Npm、Go、PyPI、Rpm等多种仓库格式。
使用华为云CloudArtifact npm 私仓有如下场景:
1.npm publish 推送npm package到 CloudArtifact npm 私仓
2.npm install 拉取CloudArtifact npm 私仓的npm package
前置工作
(1) 新建私有依赖库

(2) 管理用户权限
(3) CloudArtifact npm 私仓账号信息获取
私有依赖库首页->点击需要的npm仓库->右上角操作指导->点击下载配置文件->npm配置在下载的npmrc文件当中
参数说明
npm-cloudartifact-action 两个参数
registry_list(npm仓库源)和auth_list(仓库认证信息)都属于npm用户配置文件~/.npmrc文件的配置信息。其中仓库认证信息中${{ secret.NPM_AUTH }},格式为 (user:password).base64,即用户名和密码中间用冒号隔开,通过base64编码后的字符串。如:dGVzdDoxMjM=npm配置信息分为不包含@scope和包含@scope两种方式。目前华为云CloudArtifact npm 私仓支持的是scope方式,含scope的方式支持配置多仓库。下面给出两个参数的具体的样例。
1.不包含@scope
.npmrc配置格式
action中参数配置例子
2.包含@scope,若@scope为”@cloud”
.npmrc配置格式
action中参数配置例子
CloudArtifact npm 私仓workflows样例
1.npm publish: 推送npm package到 CloudArtifact npm 私仓
步骤说明:
(1)代码检出
(2)华为云CloudArtifact npm 私仓配置
(3)npm publish 推送npm package到 CloudArtifact npm 私仓
详情可参考 ./github/workflows/npm-cloudartifact-action-publish-demo.yml
2.npm install: 拉取CloudArtifact npm 私仓的npm package
步骤说明:
(1)代码检出
(2)华为云CloudArtifact npm 私仓配置
(3)npm install 拉取CloudArtifact npm 私仓的npm package
详情可参考 ./github/workflows/npm-cloudartifact-action-install-demo.yml
workflow sample中使用公网地址说明