1
我有一個文件夾放置未維護的python軟件包,所以我從zip安裝它們而不是從它們的存儲庫中安裝它們。使用Ansible 2.0從一個文件夾安裝所有軟件包
我使用Ansible 2.0,所以find命令似乎是做
到目前爲止,我在做下列方式:
- name: Install unmaintained dependencies
pip:
name: "{{ my_project_app }}/requirements/{{ item }}"
virtualenv: "{{ my_project_venv }}"
with_items:
- django-hijack-2.0.0.zip
- django-image-cropping-django-19.zip
- pisa-3.0.33.zip
現在我與find
命令打
- name: Loading unmaintained dependencies
find:
paths: "{{ my_project_app }}/requirements"
patterns: "*.zip"
register: unmaintained_dependencies
- debug:
var: unmaintained_dependencies
如果我運行上面的劇本,我得到下面的輸出
ok: [192.168.1.212] => {
"files_found": {
"changed": false,
"examined": 3,
"files": [
{
...
"path": "/data/my_project/requirements/pisa-3.0.33.zip",
...
},
...
],
"matched": 3,
"msg": ""
}
}
我想必須有一種方法來把所有東西放在一起,但這裏是我卡住的地方。
第一個選項解決了我的問題,我不知道訪問字符很明顯!我無法使用'with_fileglob'(糾正答案中的小錯誤引用錯位),因爲它似乎只適用於中央機器中託管的文件,而不是節點中的文件。 – dnaranjo
'with_items:files_found.files'不適用於我,必須執行'with_items:「{{files_found.files}}」'。 – Richlv
謝謝@Richlv,我相信Ansible在某個時候停止了這種語法。我已經改變了答案。 – palvarez89