使用jinja2比较版本号

BBD*_*BDG 4 jinja2 salt-stack ansible

我正在使用jinja2模板来安装/升级包.

逻辑是为当前安装的版本设置变量,并将其与可用版本进行比较.它工作正常,但一旦我们传入10.x,比较退出工作.

是否可以转换变量,以便正确识别10.9.8是否大于9.8.7?

谢谢

current_version=['9.8.7']

{% if current_version < '10.9.8' %}

Kon*_*rov 7

有一个特殊的测试版本_compare:

{% if current_version | version_compare('10.9.8', '<') %}
Run Code Online (Sandbox Code Playgroud)

current_version 应该是字符串(在您的示例中是一个列表).

  • 你为什么在这种情况下加上'ansible`标签? (5认同)
  • 对于 Ansible &gt; 2.5,version_compare 已替换为 version。https://docs.ansible.com/ansible/latest/user_guide/playbooks_tests.html (3认同)