【问题汇总贴】【一站式解决】HarmonyOS 鸿蒙Next ohpm-repo搭建完私仓后,仓库管理-uplinks如何配置代理,如何新增uplinks?

发布于 1周前 作者 ionicwang 来自 鸿蒙OS

【问题汇总贴】【一站式解决】HarmonyOS 鸿蒙Next ohpm-repo搭建完私仓后,仓库管理-uplinks如何配置代理,如何新增uplinks?

我现在这边已经搭建完私仓了,但是依旧有一些疑问,希望大佬们能给解答下疑问。在这个汇总帖子下面我也总结下我解决过的问题,避免后来人踩坑

下面先说一下我的问题:

13 回复
请问一下 我部署好了私仓,网页能够正常访问,但是仓库地址不对,文档说仓库地址是 ip:8088/repo/ohpm,这个地址我发布引用都访问不到,网页也打不开这个地址

网页能打开: ip:8088吧?这证明部署没问题。 发布引用不到 报什么错?是不是 你电脑和部署机器不在同一个局域网导致的?

访问:ip:8088

4、关于使用accessToken发包认证问题。
到现在还没弄明白如何使用accessToken。
ssh方式配置就跟git仓库一样没啥难度。

发布共享包:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-har-publish-0000001597973129-V5
ohpmrc配置:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-ohpmrc-0000001749437724-V5

文档中说:
 

//127.0.0.1:8088/repos/ohpm/:_auth=readWriteToken
//127.0.0.1:8088/repos/ohpm/:_read_auth=readOnlyToken<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

  • //127.0.0.1:8088/repos/ohpm/ 是ohpm-repo的registry地址去除协议名的部分;
  • :_auth 和 :_read_auth 分别代表配置为读写Token或只读Token,readWriteToken和readOnlyToken代表Token具体的值。ohpm客户端执行info、install操作会优先使用只读Token,如果只读Token不存在才会使用读写Token。ohpm客户端执行publish、unpublish操作时只会使用读写Token。每种Token最多配置三条。
     

    cke_2988.png

    ohpm publish ncui.har
    

    ohpm ERROR: Publish failed, detail: The “key_path” is empty - configure “key_path” in the .ohpmrc file. <button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

配置了Token还需要key_path地址,这个操作搞不懂

cke_3570.png


后来我配置了key_path  + token 以为就不需要输入密码了结果依旧报错。
单独 key_path 需要输入密码。
Token如何使用至今不知道问题出在哪里

配置ssh时 生成密钥时,需要设置密码,不设置密码publish时校验会不通过

1、生成公私钥:执行ssh-keygen -m PEM -t RSA -b 4096 -f your-keypath *注意:OHPM包管理器只支持加密密钥认证,请在生成公私钥时输入密码 2、配置私钥路径:执行ohpm config set key_path your-keypath 3、配置登录用户发布码,在命令行执行:ohpm config set publish_id your-publishId 4、在个人中心的认证管理模块中,添加公钥,并将公钥文件的内容(your-keypath.pub)粘贴到公钥输入框中

accessToken使用方式:

1、 AccessToken作用:增加客户端认证方式,ohpm客户端使用AccessToken认证时可省去输入密码的步骤。 2、 AccessToken生成:AccessToken只在生成时完整显示一次并自动复制到剪切板中,后续只显示脱敏后token,每种类型最多生成10条token。 3、 AccessToken类型:只读token只可访问除上架、下架包之外的接口,读写token可访问全部接口。 4、 AccessToken使用: 4-1、 在ohpm客户端的配置文件.ohpmrc中新增一行’//<ip>:<port>/repos/ohpm/:_auth=<token>’。 4-2、 '//<ip>:<port>/repos/ohpm/‘是客户端publis_registry去除协议名的部分url,’<token>'是生成的token。 4-3、 使用ohpm客户端执行publish命令。

太坑了 accessToken使用方式竟然是这样:’//<ip>:<port>/repos/ohpm/’ 不是keyValue形式

3、私仓-仓库管理界面中uplinks里配置代理界面的三个参数 httpProxy 和 httpsProxy 以及 NoProxy该如何配置?iShot_2024-07-11_18.34.44.png
2、私仓管理界面中的 uplinks具体是管什么用?该如何配置(现在配置一直报错不符合ohpm协议)?
文档上有一些模糊的介绍,但还是不明白该如何使用:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-ohpm-depot-management-0000001796357517


 
1、如何在工程中同时配置自己的私仓内支持的 a共享包,同时也能正常引用鸿蒙ohpm中心仓库里的 b共享包?

现状:
registry  是私仓地址
http_proxy 是带了token的私仓
 

找到答案了:需要设置 .ohpmrc文件中的字段;或者 ohpm config set <key> <value> @group:registry 根据group指定组织的仓库地址。支持多个仓库地址,以英文逗号间隔,且优先级大于registry配置,多个仓库地址的优先级按照配置顺序排序。

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-ohpmrc-0000001749437724-V5

@group:registry=<私仓>,<仓库2>

针对您提出的HarmonyOS鸿蒙Next ohpm-repo搭建完私仓后,仓库管理-uplinks如何配置代理及新增uplinks的问题,以下是专业解答:

  1. 配置代理

    • 在ohpm-repo的仓库管理界面中,找到uplinks配置部分。
    • 配置httpProxy、httpsProxy以及NoProxy参数。这些参数分别用于设置HTTP、HTTPS请求的代理服务器地址,以及不需要代理的主机或域名列表。
    • 根据您的网络环境,填写正确的代理服务器地址和端口。
    • 注意,如果网络环境不需要代理,这些字段可以留空。
  2. 新增uplinks

    • 在uplinks配置页面,点击新增按钮或类似操作,进入新增uplinks的配置界面。
    • 输入uplink的名称、URL等必要信息。URL应指向您希望作为依赖源的其他仓库地址。
    • 根据需要配置认证信息,如用户名、密码或Token等,以确保能够成功访问该uplink。
    • 保存配置后,新增的uplink将生效,ohpm-repo将能够从该uplink中拉取依赖包。

鸿蒙Next教程已发布,可以先学学:https://www.itying.com/category-93-b0.html

回到顶部