![在 ansible 中使用嵌套条件块](https://linux22.com/image/679757/%E5%9C%A8%20ansible%20%E4%B8%AD%E4%BD%BF%E7%94%A8%E5%B5%8C%E5%A5%97%E6%9D%A1%E4%BB%B6%E5%9D%97.png)
我正在尝试在条件块内插入一个条件块:
- block:
- postgresql_db: name={{ dbname }} state=absent
- postgresql_db: name={{ dbname }}
...
- block:
- get_url: url={{ remote_database_dump }} dest={{ local_database_dump }}
- command: pg_restore -d {{ dbname }} {{ local_database_dump }}
when remote_database_dump != ""
become: true
become_user: postgres
become_method: su
when: db_recreate == "true"
但我收到一条ERROR! Syntax Error while loading YAML.
消息。如果我删除when remote_database_dump != ""
,它就可以正常工作。
这种嵌套可以实现吗?如果可以,如何实现?
答案1
实际上,when remote_database_dump != ""
后面缺少一个冒号when
,因此正确的行是when: remote_database_dump != ""
。