解决walle报错:宿主机代码检出检测出错,请确认svn用户名密码无误

时间:2022-12-29 17:06:52

使用walle检测报错:

解决walle报错:宿主机代码检出检测出错,请确认svn用户名密码无误

查看日志
# tail -f /tmp/walle/walle-20161010.log
报错:
2016-10-10 14:20:30 -- ---------------------------------
2016-10-10 14:20:30 -- ---- Executing: $ mkdir -p /data/www/deploy/from/prod/chinsoft-h5  && cd /data/www/deploy/from/prod/chinsoft-h5  && /usr/bin/env LC_ALL=en_US.UTF-8 svn checkout -q 'https://192.168.3.11/svn/chinasoft-videobuy/h5/trunk/chinsoft-h5' . --username='admin'
--password='admin' --non-interactive --trust-server-cert
2016-10-10 14:20:30 -- svn: E175002: Unable to connect to a repository at URL 'https://192.168.1.18/svn/chinasoft-videobuy/h5/trunk/chinsoft-h5'
svn: E175002: OPTIONS of 'https://192.168.1.18/svn/chinasoft-videobuy/h5/trunk/chinsoft-h5': Server certificate verification failed: certificate has expired, certificate issued for a different hostname, issuer is not trusted (https://192.168.1.18)

原因分析:
传输协议加了ssl,svnsync第一次同步,带有--non-interactive选项,有可能会报标题所示错误。

原因是第一次认证时会弹出如下交互文字。
验证“https://192.168.1.18:443”的服务器证书时出错:

- 此证书并不是由信任的权威机权颁发。请使用此指纹手工验证其有效性!
 - 证书的主机名称不匹配。
证书信息:
 - 主机名称: SV0051
 - 有效时间: 自 Mon, 28 Feb 2011 00:55:03 GMT 至 Thu, 25 Feb 2021 00:55:03 GMT
 - 发行者: SV0051
 - 指纹: f4:b2:70:22:93:95:64:cb:38:a4:4c:d0:49:9c:20:87:64:35:75:85
(R)拒绝,(t)暂时接受,或(p)永远接受?p

解决方法是:
# su - www_php (一定要切换到walle运行php-fpm的用户下,因为是该用户和svn服务器进行交互)
第一次时不带--non-interactive,然后选择p,在以后的自动同步中带上此选项。
svn checkout -q 'https://192.168.1.18/svn/chinasoft-videobuy/h5/trunk/chinsoft-h5' . --username='admin' --password='admin'
Error validating server certificate for 'https://192.168.1.18:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
 - The certificate hostname does not match.
 - The certificate has expired.
Certificate information:
 - Hostname: JUYUN
 - Valid: from Mon, 12 Nov 2012 08:21:56 GMT until Wed, 12 Dec 2012 08:21:56 GMT
 - Issuer: JUYUN, JUYUN, SZ, GD, CN
 - Fingerprint: 54:31:82:d2:53:a3:3d:9f:a0:fe:74:9f:7f:58:75:d6:20:a3:21:5d
(R)eject, accept (t)emporarily or accept (p)ermanently? p

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

<https://192.168.1.18:443> Subversion Repository

can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.

You can avoid future appearances of this warning by setting the value
of the 'store-plaintext-passwords' option to either 'yes' or 'no' in
'/root/.subversion/servers'.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes

问题解决

解决walle报错:宿主机代码检出检测出错,请确认svn用户名密码无误