Как добавить callback-плагин в докер AWX - PullRequest
0 голосов
/ 25 марта 2019

Установленный докер AWX отсюда - https://github.com/ansible/awx. Я пытаюсь добавить callback-плагин для конкретного проекта, как здесь написано - https://docs.ansible.com/ansible-tower/latest/html/administration/tipsandtricks.html#using-callback-plugins-with-tower. Не работает. Добавляю в Template-> EXTRA VARIABLES строки

---
bin_ansible_callbacks: true
callback_plugins: /callback_plugins
stdout_callback: selective

Не работает.

Я добавляю каталог /var/lib/awx/projects/test/callback_plugins/ в SETTINGS-> JOBS-> ANSIBLE CALLBACK PLUGINS - он тоже не работает.

Подскажите, пожалуйста, как это сделать правильно, чтобы другой (кастомный) плагин забирал и зарабатывал.

1 Ответ

0 голосов
/ 24 июня 2019

Я выдаю ту же проблему, после некоторых отладок я открыл проблему в проекте AWX https://github.com/ansible/awx/issues/4149

Тем временем я применил обходной путь, который заключается в создании символических ссылок для каждого плагина обратного вызова, который вы хотите использовать в папке callback_plugins вашего проекта ролей

Например, если вы используете проект ara

    - name: Research for callbacks in virtualenv libs
      find:
        path: '{{ ansible_playbook_python|dirname|dirname }}/{{ item }}'
        file_type: file
        depth: 1
        patterns: '*.py'
        excludes: '__init__*'
      register: _internal__callbacks
      with_items:
        - lib/python3.6/site-packages/ara/plugins/callbacks

# TODO : prevent existing callbacks to be overwritten

    - name: Create symlinks from virtualenv lib directory to local callback_plugins/
      file:
        src: '{{ item }}'
        dest: '{{ playbook_dir }}/callback_plugins/{{ item|basename }}'
        state: link
      with_items: "{{ _internal__callbacks.results|map(attribute='files')|flatten|map(attribute='path')|list }}"
...