visual-studio-code
Ansible Роль: Visual Studio Code
Роль для установки среды разработки / текстового редактора Visual Studio Code.
Требования
Ansible Core >= 2.12
Дистрибутив Linux
Семейство Debian
Ubuntu
- Focal (20.04)
- Jammy (22.04)
Семейство RedHat
Rocky Linux
- 8
Fedora
- 35
Семейство SUSE
openSUSE
- 15.3
Примечание: другие версии могут работать, но не были протестированы.
Переменные роли
Следующие переменные изменят поведение этой роли (значения по умолчанию показаны ниже):
# Номер версии Visual Studio Code (по умолчанию - последняя версия)
visual_studio_code_version: ''
# Сборка (либо 'stable', либо 'insiders') https://code.visualstudio.com/insiders/
# Только для Ubuntu (code-insiders отсутствует в репозитории Microsoft RPM)
visual_studio_code_build: stable
# Сервер-зеркало для получения открытых ключей и пакета установки Visual Studio Code.
# URL может включать директории. URL не должен заканчиваться на косую черту.
visual_studio_code_mirror: 'https://packages.microsoft.com'
# Должен ли быть включен gpgcheck репозитория?
# если true
# - для apt репозитория опция trusted=yes НЕ добавляется
# - для dnf/yum опция gpgcheck устанавливается в yes
# - для zypper опция gpgcheck устанавливается в 1
# true по умолчанию
# если false
# - для apt репозитория опция trusted=yes добавляется в определение репозитория
# - для dnf/yum опция gpgcheck устанавливается в no
# - для zypper опция gpgcheck устанавливается в 0
visual_studio_code_gpgcheck: true
# Пропустить задачу по добавлению репозитория для удалённого пакетного менеджера
# если установлено true, задача 'установить репозиторий VS Code (apt/yum/dnf/zypper)' будет пропущена
# если установлено false, репозиторий будет добавлен, это значение по умолчанию
visual_studio_code_skip_add_repo: false
# Пользователи, для которых устанавливаются расширения и/или записывается settings.json
users: []
Пользователи настраиваются следующим образом:
users:
- username: # Имя пользователя Unix
visual_studio_code_extensions:
- # расширение 1
- # расширение 2
visual_studio_code_settings_overwrite: # Перезаписать файл настроек, если он существует. Опции: логическое "true" или "false" (по умолчанию "false").
visual_studio_code_settings: # JSON объект
visual_studio_code_keybindings_overwrite: # Перезаписать файл привязок клавиш, если он существует. Опции: логическое "true" или "false" (по умолчанию "false").
visual_studio_code_keybindings: # JSON массив
Пример плейбуков
Минимальный плейбук:
- hosts: servers
roles:
- role: gantsign.visual-studio-code
Плейбук с установленными расширениями, который перезаписывает настройки и привязки клавиш:
- hosts: servers
roles:
- role: gantsign.visual-studio-code
users:
- username: vagrant
visual_studio_code_extensions:
- streetsidesoftware.code-spell-checker
- wholroyd.jinja
- ms-python.python
visual_studio_code_settings_overwrite: true
visual_studio_code_settings: {
"editor.rulers": [80, 100, 120],
"editor.renderWhitespace": true,
"files.associations": {
"Vagrantfile": "ruby"
}
}
visual_studio_code_keybindings_overwrite: true
visual_studio_code_keybindings: [
{
"key": "ctrl+'",
"command": "workbench.action.terminal.focus"
},
{
"key": "ctrl+'",
"command": "workbench.action.focusActiveEditorGroup",
"when": "terminalFocus"
}
]
Больше ролей от GantSign
Вы можете найти больше ролей от GantSign на Ansible Galaxy.
Разработка и тестирование
Этот проект использует следующие инструменты:
- Molecule для организации тестовых сценариев
- Testinfra для проверки изменений на удаленном сервере
- pytest - тестовый фреймворк
- Tox управляет виртуальными окружениями Python для линтинга и тестирования
- pip-tools для управления зависимостями
Для разработки и тестирования этой роли предоставлен контейнер Dev Container для Visual Studio Code.
Лицензия
MIT
Информация об авторе
Джон Фриман
GantSign Ltd. Компания № 06109112 (зарегистрирована в Англии)
ansible-galaxy install gantsign/ansible-role-visual-studio-code