[software development] v23上使用repo+gerrit遇到的问题
Tofloor
poster avatar
翻过山峰看见云
deepin
2023-08-07 19:01
Author

平时工作是做android定制开发,代码使用repo+gerrit管理,平时需要repo sync和repo upload来更新和提交代码。ssh密钥使用的RSA算法。

最近升级到v23之后遇到了几个问题:

  1. 在v20时代,强制repo工具使用python2(因为公司服务器repo版本太老,使用python3会有很多报错),倒也没什么问题。但在升级到v23之后,首先系统找不到python2了,这个在研究了一番repo源码之后使用了清华镜像源的repo可以使用python3了

  2. v23 ssh版本到了9.0p1,bing之后发现好像8.2版本开始就不支持RSA算法了,但是我几年前刚入公司时候是用RSA算法创建的密钥,重新创建新的吧太麻烦,还要上传服务器公司需要审核,也是一番搜索之后在.ssh/config文件中增加配置来强制使用RSA算法

    HostkeyAlgorithms ssh-rsa
    PubkeyAcceptedKeyTypes ssh-rsa
    
  3. 以上问题解决后终于可以使用repo sync了,但是在提交代码时发现repo upload一直失败,提示urlopen error no host given,又是一番搜索之后还是没有结果,最终又研究了一番repo之后通过增加--no-cert-checks来禁止ssl证书检查才算提交成功了

第三个问题总觉得从安全性上来说不是很好,有没有使用过repo的老哥指导下还有没有更好的解决第三个问题的方法

Reply Favorite View the author
All Replies
空木蓮華
deepin
2023-08-07 19:33
#1

之前遇到过使用rsa算法创建的无法访问gerrit, 你要不要考虑用一下ed25519算法来创建一下密钥,不过这样你得上传公司服务器审核下了。

Reply View the author
神末shenmo
deepin
Spark-App
2023-08-07 21:24
#2

有一个解决方案

https://gitee.com/deepin-community-store/bookworm-compatibility-mode/

把这个 https://gitee.com/deepin-community-store/bookworm-compatibility-mode/blob/master/src/opt/apps/cn.flamescion.bookworm-compatibility-mode/files/build-container.sh

改成

sudo debootstrap buster ./bookworm-env https://mirrors.ustc.edu.cn/debian/

之后安装,然后sudo bookworm-run即可

Reply View the author