Jenkins执行节点和上传模块返回错误:ca键太小



我们在docker-compose中使用Jenkins (2.235.2)和BlueOcean,并使用来自jenkinsci/jnlp-slave:latest的slave。
因此,当我需要使用node(10.15.3)dwupload(3.8.2)在Salesforce沙箱中使用两个工厂身份验证时,我们会得到以下错误:

# command
dwupload --hostname cert.staging.(...).demandware.net --username **** --password **** --cartridge cartridges/lib_productlist --code-version hav_12 --p12 **** --passphrase ****
# error logs
{ 'file-upload': false, 'cartridge-upload': false, 'directory-create': false, 'file-delete': false } [15:28:53] Error: ca key too small

你能帮我一下吗?

OpenSSL是这种情况下的罪魁祸首,因为不太新的安装要求更长的密钥长度,所以有两种方法可以解决这个问题:

  • 旧的快速和肮脏的方式&;;:只要降低它:
sudo cp /etc/ssl/openssl.cnf{,.backup}
sudo sed -i 's/SECLEVEL=2/SECLEVEL=1/g' /etc/ssl/openssl.cnf

你就可以走了。如果你使用Docker镜像运行Jenkins,你需要更新它们。这种方法的问题在于它是系统范围的。

  • 您可以通过在Jenkins管道中创建替代OpenSSL配置文件来更改dwupload。像这样:
sh "sed 's/SECLEVEL=2/SECLEVEL=1/g' /etc/ssl/openssl.cnf > openssl_custom.cnf"
sh "OPENSSL_CONF=openssl_custom.cnf dwupload --hostname ${hostname} --username ${username} ..."
sh "rm -rf openssl_custom.cnf"

Abracos !

相关内容

最新更新