ubuntu - 在ansible中,比较ubuntu主要版本和次要版本

当完整的Ubuntu版本(Major Minor如18.10)大于或小于指定值时,我需要动态安装apt软件包,


- name: Execute on ubuntu 18.10 or newer


 shell:"echo Youre on Ubuntu 18.10 or newer"


 when: ansible_distribution_version | version('18.10', '>=')



条件检查'ansible_distribution_version |version ('19.10','>=')'失败,错误为:模板化字符串时出现模板错误: 没有名为'版本'的筛选器。

最新(当前2.9 )文档不包含版本comparisation的筛选器,我尝试了float对话,它似乎工作:


- name: Execute on ubuntu 18.10 or newer


 shell:"echo executed on ubuntu 18.10 or newer"


 when: ansible_distribution_version | float >= 18.10



时间:

不推荐使用测试作为筛选器,不使用result is version (文档 )


when: ansible_distribution_version is version('18.10', '>=')



...