首页 文章

Ansible Subversion Revision Export问题

提问于
浏览
0

我对Ansible相当新,但我们的网站初始设置新客户或重新部署客户网站都有相当全面的手册 .

Ansible Revision = 2.0.0.2

Host = Ubuntu 16.04是最新的

远程主机= CentOS 7最新安装

后者是我遇到问题的地方,我从我们的SVN仓库中导出,这很好用 .

name: Export from subversion
subversion: repo=svn+ssh://svnserver/file/path/svn/repo/trunk dest={{site_dir}} username=svn export=True

当我添加

name: Export from subversion
subversion: repo=svn+ssh://svnserver/file/path/svn/repo/trunk dest={{site_dir}} username=svn export=True revision={{svn_rev}}

我收到此错误:

失败了! => {“已更改”:false,“failed”:true,“module_stderr”:“”,“module_stdout”:“回溯(最近一次调用最后一次):\ r \ n文件\”/ root / .ansible / tmp / ansible-tmp-1489135585.97-151625467432517 / subversion \“,第2194行,在\ r \ n main()\ r \ n文件\”/ root / .ansible / tmp / ansible-tmp-1489135585.97-151625467432517 / subversion \“,第231行,在主\ r \ n svn.export(force = force)\ r \ n文件\“/ root / .ansible / tmp / ansible-tmp-1489135585.97-151625467432517 / subversion \”,第149行,在export \中r \ n self._exec(cmd)\ r \ n文件\“/ root / .ansible / tmp / ansible-tmp-1489135585.97-151625467432517 / subversion \”,第127行,在_exec \ r \ n rc中,out,err = self.module.run_command(bits,check_rc)\ r \ n文件\“/ root / .ansible / tmp / ansible-tmp-1489135585.97-151625467432517 / subversion \”,第2019行,在run_command \ r \ n \ n \ args = [ os.path.expandvars(os.path.expanduser(x))for args] \ r \ n File \“/ usr / lib64 / python2.7 / posixpath.py \”,第261行,在expanduser \ r \中n如果不是path.startswith('〜'):\ r \ nAttributeError:'int'对象没有属性'startswith'\ r \ n“ ,“msg”:“MODULE FAILURE”,“已解析”:false}

现在如果我手动输入修订版保存 revision=7840 它按预期工作 .

如果我调试变量

debug: msg={{svn_rev}}

它再次输出正确的修订版 .

只是想知道是否有人能指出我正确的方向,因为我此刻有点难过 . 这可能是subversion模块的错误吗?

1 回答

  • 0

    该模块显然需要一个字符串值,因此将 svn_rev 定义为字符串:

    vars:
      svn_rev: "7840"
    

    或者将其转换为字符串 .

    您没有在问题中指明如何获得 Value ,因此您需要自己跟进 .


    您可能还会考虑在GitHub上填写问题或PR,因为常识是转换模块内的值 .

相关问题