Azure Pipline with Ubuntu 22.04

安装的是 Azure DevOps Server 2020 这个版本,然后手残升级某台 agent 的系统到 Ubuntu 22.04,然后那台机子就挂了。 然后找了一台替代机,结果又手残装了 Ubuntu 22.04, 然后这个设备的虽然能用,但是面另一个问题, Ubuntu 22.04 升级到了 libssl 3.0,这就导致了包括 Azure Pipeline Agent 在内的一些程序无法使用 libssl 1.x。详情可以看 microsoft/azure-pipelines-agent/issues/3922 这里提到的。

简单来说,有两个解决的方法,一个是安装 libssl 的 1.x 版本。从 Ubuntu Package 搜索 libssl 1.x 版本的安装包,然后下载下来,在安装。或者直接从 openssl/openssl 这里下载 1.x 版本对应的源代码,然后编译安装。但是我这里没成功过。。

所以尝试了另一个解决的方法,从 azure-pipeline 的仓库下载一个比较新的(例如 2.206.1) 。然后安装了使用,但是我这里遇到了问题,提示服务端的证书有问题,然后因为版本过高系统老是让回退版本,所以,在 runsvc.sh 这个文件或者 systemd service 文件的地方,增加两个环境变量:

AZP_AGENT_USE_LEGACY_HTTP=true
AZP_AGENT_DOWNGRADE_DISABLED=true

然后就可以了。