2016-08-25 8 views
0

gnome拡張を無能なプレイブックにインストールして、これを見つけました:https://galaxy.ansible.com/eddyhub/gnome_shell/ nice!別の役割からeddyhub.gnome_shellの役割を呼び出す

私は自分のプレイブックを整理しているので、別のタスクの中からその役割を呼びたいので、このようなタスクを作成しました(これは(roles/common/tasks/gnomeにある完全なタスクファイルです)。 YAML):

dependencies: 
    - { role: eddyhub.gnome_shell, gnome_extension_path: /home/nathanhuesken/.local/share/gnome-shell/extensions/, gnome_extension_owner: nathanhuesken, gnome_shell_extensions: [442] } 

しかし、脚本を実行している、私はこのエラーを取得する:

ERROR! Unexpected Exception: global name 'AnsibleError' is not defined 
the full traceback was: 

Traceback (most recent call last): 
    File "/usr/bin/ansible-playbook", line 92, in <module> 
    exit_code = cli.run() 
    File "/usr/lib/python2.7/site-packages/ansible/cli/playbook.py", line 154, in run 
    results = pbex.run() 
    File "/usr/lib/python2.7/site-packages/ansible/executor/playbook_executor.py", line 73, in run 
    pb = Playbook.load(playbook_path, variable_manager=self._variable_manager, loader=self._loader) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/__init__.py", line 53, in load 
    pb._load_playbook_data(file_name=file_name, variable_manager=variable_manager) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/__init__.py", line 98, in _load_playbook_data 
    entry_obj = Play.load(entry, variable_manager=variable_manager, loader=self._loader) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 115, in load 
    return p.load_data(data, variable_manager=variable_manager, loader=loader) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/base.py", line 206, in load_data 
    self._attributes[name] = method(name, ds[name]) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 217, in _load_roles 
    roles.append(Role.load(ri, play=self)) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.py", line 116, in load 
    r._load_role_data(role_include, parent_role=parent_role) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/role/__init__.py", line 169, in _load_role_data 
    self._task_blocks = load_list_of_blocks(task_data, play=self._play, role=self, loader=self._loader, variable_manager=self._variable_manager) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/helpers.py", line 58, in load_list_of_blocks 
    loader=loader 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/block.py", line 79, in load 
    return b.load_data(data, variable_manager=variable_manager, loader=loader) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/base.py", line 206, in load_data 
    self._attributes[name] = method(name, ds[name]) 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/block.py", line 115, in _load_block 
    use_handlers=self._use_handlers, 
    File "/usr/lib/python2.7/site-packages/ansible/playbook/helpers.py", line 178, in load_list_of_tasks 
    raise AnsibleError("included task files must contain a list of tasks", obj=data) 
NameError: global name 'AnsibleError' is not defined 

は私が間違って何をやっている

+0

**付属のタスクファイルにはタスクのリストが含まれている必要があります** - 間違った方法でファイルをインクルードします。 playbookスニペットに 'include'ステートメントと含めるファイルを指定してください。 –

+0

私は自分のプレイブックにincludeステートメントを含むプレイブックスニペットを持っていません – Nathan

+0

'dependencies:'はどこに入力しましたか?ファイルを投稿してください。 – techraf

答えて

2

What am I doing wrong?

を?

role dependenciesについてもっと読む)に属している間に、dependencies:(これはAnsibleモジュールではありません)をタスクファイルに入れています。

現在、Ansibleのタスクから役割を呼び出す方法はありません。

+0

OK。知っておいて、ありがとう! – Nathan