我正在尝试重组一个分子文件,以使用一个通用的剧本来减少代码重复。
我可以让它与相对路径一起工作,但使用引用其他剧本相对于环境变量,比如ANSIBLE_ROLES_PATH会更直观。
下面注释掉的版本不起作用,但第三个变种可以。
有没有办法做到这一点?
more molecule.yml
// SNIP
provisioner:
name: ansible
config_options:
defaults:
callback_whitelist: "profile_tasks, timer"
env:
ANSIBLE_ROLES_PATH: ../../../../../../roles
playbooks:
# destroy: "{{ lookup('env', 'ANSIBLE_ROLES_PATH') }}/molecule/destroy.yml"
# destroy: "{{ANSIBLE_ROLES_PATH}}/molecule/destroy.yml"
destroy: "../../../../../../roles/molecule/destroy.yml"
scenario:
name: default
verifier:
name: testinfra
lint:
name: flake8发布于 2020-10-29 22:13:09
您应该能够像在bash中那样使用${YOU_ENV_VAR},或者在没有设置变量的情况下使用默认值:${YOU_ENV_VAR:-defaultvalue}
more molecule.yml
// SNIP
provisioner:
name: ansible
config_options:
defaults:
callback_whitelist: "profile_tasks, timer"
env:
ANSIBLE_ROLES_PATH: ../../../../../../roles
playbooks:
destroy: ${MYPLAYBOOKS_PATH:-"${ANSIBLE_ROLES_PATH}/molecule/destroy.yml"}
scenario:
name: default
verifier:
name: testinfra
lint:
name: flake8https://stackoverflow.com/questions/59034734
复制相似问题