在我的剧本中,我运行一个执行脚本的local_action并存储该值以供将来使用:
- local_action: command python release.py
register: release_url
Run Code Online (Sandbox Code Playgroud)
这很有效,直到我将我的剧本移动到子目录中.事实证明,该命令从您当前的工作目录(您运行ansible)运行,因此路径需要如下所示:
- local_action: command python roles/ghost/release.py
Run Code Online (Sandbox Code Playgroud)
我有一个目录结构如下:
但是,角色/ ghost文件夹名称可以更改(并且硬编码这将不允许您从另一个目录运行该playbook).
如何获取tasks/main.yml的目录路径(发出local_action命令),所以我可以给它一个相对路径?
小智 2
您可以将release.py脚本放在roles/ghost/files/中,然后将其与local_action一起使用吗
- name: local scrpt
local_action: script release.py
Run Code Online (Sandbox Code Playgroud)
这样你可能不需要获取目录路径
这参考了目录布局部分中的操作http://www.ansibleworks.com/docs/playbooks_best_practices.html
归档时间: |
|
查看次数: |
7860 次 |
最近记录: |