如何比较 salt sls 文件中的版本字符串
How to compare version strings in salt sls files
saltstack 是否有等同于 puppets versioncmp() 的函数?或者,有没有办法在 jinja+yaml 呈现的 sls 文件中获取 distutils.version 或 packaging.version.parse 方法(如 Compare version strings in Python 中所述)?
您可以使用模块 pkg.version_cmp
:
# salt-call pkg.version_cmp '1.0.2' '1.1.1'
local:
-1
# salt-call pkg.version_cmp '0.2.4.1-0ubuntu1' '0.2.4-0ubuntu1'
local:
1
在 jinja 中,您可以像这样使用它:
{% if salt['pkg.version_cmp']('1.1.0','1.0.5') > 0 %}
....
{% endif %}
saltstack 是否有等同于 puppets versioncmp() 的函数?或者,有没有办法在 jinja+yaml 呈现的 sls 文件中获取 distutils.version 或 packaging.version.parse 方法(如 Compare version strings in Python 中所述)?
您可以使用模块 pkg.version_cmp
:
# salt-call pkg.version_cmp '1.0.2' '1.1.1'
local:
-1
# salt-call pkg.version_cmp '0.2.4.1-0ubuntu1' '0.2.4-0ubuntu1'
local:
1
在 jinja 中,您可以像这样使用它:
{% if salt['pkg.version_cmp']('1.1.0','1.0.5') > 0 %}
....
{% endif %}