我需要构建两个逻辑卷。 sda1将始终形成/ root并为日志等分区,但/ application可能包含一到四个额外磁盘。我知道他们将始终以sdb开头并继续使用sde或sdf。我可以想到几个不同的快速和脏的解决方案,比如运行一个bash命令来构建一个列表以注册为变量,但我想要做的是从Ansible设置事实的ansible_devices部分下拉并匹配sd [bz]的正则表达式。我知道我不太可能拥有sdz,但我希望尽可能保持灵活性。有人有一个很好的技术吗? jinja2过滤器是错误的方法吗?
答案 0 :(得分:0)
您可以使用select
过滤器match
测试:
{{ ansible_devices.keys() | select('match','sd[b-c]') | list }}
使用map('regex_replace','^','/dev/')
添加列表中的每个字符串都可以。