intellij-plugins
Ansible Роль: Плагины IntelliJ
Роль для загрузки и установки плагинов IntelliJ IDEA.
Внимание: эта роль зависит от внутренних API IntelliJ IDEA и в данный момент является экспериментальной.
Требования
Ansible >= 2.9
Дистрибутив Linux
Семейство Debian
Ubuntu
- Bionic (18.04)
- Focal (20.04)
Семейство RedHat
Rocky Linux
- 8
Примечание: другие версии, скорее всего, будут работать, но не были протестированы.
Переменные роли
Следующие переменные изменяют поведение этой роли (значения по умолчанию показаны ниже):
# Домашний каталог установки IntelliJ IDEA
intellij_plugins_intellij_home: '{{ ansible_local.intellij.general.home }}'
# Каталог, содержащий плагины IntelliJ IDEA (относительно домашнего каталога пользователя)
intellij_plugins_intellij_user_plugins_dir: '{{ ansible_local.intellij.general.user_plugins_dir }}'
# Каталог для хранения загруженных файлов установки IntelliJ IDEA
intellij_plugins_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"
# URL веб-сервиса менеджера плагинов IntelliJ IDEA
intellij_plugins_manager_url: 'https://plugins.jetbrains.com/pluginManager/'
# Список пользователей, для которых нужно настроить IntelliJ IDEA
users: []
Пользователи настраиваются следующим образом:
users:
- username: # Имя пользователя Unix
intellij_plugins:
- # ID плагина для установки
Примеры плейбуков
Минимальный плейбук:
- hosts: servers
roles:
- role: gantsign.intellij-plugins
users:
- username: vagrant
intellij_plugins:
- CheckStyle-IDEA
Плейбук с указанными домашним каталогом IntelliJ и именем каталога пользователя:
- hosts: servers
roles:
- role: gantsign.intellij-plugins
intellij_plugins_intellij_home: '/opt/idea/idea-community-2016.2.5'
intellij_plugins_intellij_user_dirname: '.IdeaIC2016.2'
users:
- username: vagrant
intellij_plugins:
- CheckStyle-IDEA
Дополнительные роли от GantSign
Вы можете найти больше ролей от GantSign на Ansible Galaxy.
Разработка и тестирование
Этот проект использует Molecule для помощи в разработке и тестировании; роль тестируется с помощью Testinfra и pytest.
Для разработки или тестирования вам нужно установить следующее:
Поскольку установка вышеуказанных компонентов может быть сложной, этот проект включает Molecule Wrapper. Molecule Wrapper — это сценарий оболочки, который устанавливает Molecule и его зависимости (кроме Linux) и затем выполняет Molecule с переданной командой.
Чтобы протестировать эту роль с помощью Molecule Wrapper, выполните следующую команду из корневого каталога проекта:
./moleculew test
Примечание: некоторые зависимости требуют разрешения sudo
для установки.
Лицензия
MIT
Информация об авторе
Джон Фриман
GantSign Ltd. Регистрационный номер компании 06109112 (зарегистрирована в Англии)
ansible-galaxy install gantsign/ansible-role-intellij-plugins