LTS-SP1版本golang升级遗留问题分析
20.03-LTS-SP1目前golang的版本过低(1.13.3),上游社区已经不再维护
老版本包含一些已废弃安全协议、待修复CVE。由于没有补丁,需要从高版本回合,但是在改动较大,或者涉及runtime等底层修改的情况下,回合与验证比较困难。我们希望升级到golang-1.15.7。
Go1范围内升级:1.13.3
 --> 1.15.7
openEuler-20.03-LTS-SP1中,使用golang作为编译依赖的包一共28款,其中EPOL类软件6款。
| 
 类型  | 
 软件包  | 
| 
 常规软件  | 
 A-Tune、audit、authz、containerd、containernetworking-plugins、docker、go-compilers、golang、golang-github-cpuguy83-go-md2man、golang-github-russross-blackfriday、isula-build、iSulad-img、isula-transform、kata-containers、libnetwork、lxcfs-tools、podman、runc、skopeo、syscontainer-tools、thrift、umoci  | 
| 
 EPOL  | 
 startdde、deepin-dbus-generator、dde-daemon、dde-api、deepin-desktop-schemas、kubernetes  | 
在升级golang至1.15.7之后,有10款软件无法正常编译,其中8款在解决go-compilers编译问题之后可以顺利编译
·        
常规软件:
| 
 软件包  | 
 备注  | 
| 
 A-Tune  | 
 自身编译问题  | 
| 
 go-compilers  | 
 自身编译问题  | 
| 
 golang-github-cpuguy83-go-md2man  | 
 依赖go-compilers  | 
| 
 golang-github-russross-blackfriday  | 
 依赖go-compilers  | 
| 
 containernetworking-plugins  | 
 依赖go-compilers  | 
| 
 podman  | 
 依赖go-compilers  | 
| 
 skopeo  | 
 依赖go-compilers  | 
·        
EPOL:
| 
 软件包  | 
 备注  | 
| 
 deepin-dbus-generator  | 
 依赖go-compilers  | 
| 
 dde-daemon  | 
 依赖go-compilers  | 
| 
 dde-api  | 
 依赖go-compilers  | 
需要
A-Tune(@hanxinke)、go-compilers(@ultra_planet)软件包owner进行修复
报错:go: inconsistent vendoring in /home/abuild/rpmbuild/BUILD/A-Tune
建议使用
go mod vendor更新源码包中的go.mod文件进行适配。
报错:unexpected directory layout
尝试处理golist问题。
李翔 (LI XIANG)
华为技术有限公司
Tel : +86 15651111331
Email : lixiang172@huawei.com
