gantsign.visual-studio-code
Rôle Ansible : Visual Studio Code
Rôle pour installer l'IDE / éditeur de texte Visual Studio Code.
Conditions requises
Ansible Core >= 2.12
Distribution Linux
Famille Debian
Ubuntu
- Focal (20.04)
- Jammy (22.04)
Famille RedHat
Rocky Linux
- 8
Fedora
- 35
Famille SUSE
openSUSE
- 15.3
Remarque : d'autres versions peuvent fonctionner mais n'ont pas été testées.
Variables de rôle
Les variables suivantes changeront le comportement de ce rôle (les valeurs par défaut sont indiquées ci-dessous) :
# Numéro de version de Visual Studio Code (par défaut, la dernière version)
visual_studio_code_version: ''
# Build (soit 'stable' ou 'insiders') https://code.visualstudio.com/insiders/
# Uniquement pour Ubuntu (code-insiders n'est pas dans le dépôt RPM de Microsoft)
visual_studio_code_build: stable
# Serveur miroir pour récupérer les clés publiques et le paquet d'installation de Visual Studio Code.
# L'URL peut inclure des répertoires. L'URL ne doit pas se terminer par une barre oblique.
visual_studio_code_mirror: 'https://packages.microsoft.com'
# doit-on activer le gpgcheck du dépôt ?
# si vrai
# - pour le dépôt apt, l'option trusted=yes n'est PAS ajoutée
# - pour dnf/yum, l'option gpgcheck est définie sur yes
# - pour zypper, l'option gpgcheck est définie sur 1
# vrai est la valeur par défaut
# si faux
# - pour le dépôt apt, l'option trusted=yes est ajoutée à la définition du dépôt
# - pour dnf/yum, l'option gpgcheck est définie sur no
# - pour zypper, l'option gpgcheck est définie sur 0
visual_studio_code_gpgcheck: true
# ignorer la tâche d'ajout de dépôt pour le gestionnaire de paquets distant
# si défini sur true, la tâche 'installer le dépôt VS Code (apt/yum/dnf/zypper)' sera ignorée
# si défini sur false, le dépôt sera ajouté, c'est la valeur par défaut
visual_studio_code_skip_add_repo: false
# Utilisateurs pour installer des extensions et/ou écrire les settings.json
users: []
Les utilisateurs sont configurés comme suit :
users:
- username: # nom d'utilisateur Unix
visual_studio_code_extensions:
- # extension 1
- # extension 2
visual_studio_code_settings_overwrite: # Écraser le fichier des paramètres s'il existe. Options : booléen "true" ou "false" (par défaut "false").
visual_studio_code_settings: # objet JSON
visual_studio_code_keybindings_overwrite: # Écraser le fichier des raccourcis s'il existe. Options : booléen "true" ou "false" (par défaut "false").
visual_studio_code_keybindings: # tableau JSON
Exemples de Playbooks
Playbook minimal :
- hosts: servers
roles:
- role: gantsign.visual-studio-code
Playbook avec des extensions installées qui écrase les paramètres et les raccourcis :
- 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"
}
]
Autres rôles de GantSign
Vous pouvez trouver d'autres rôles de GantSign sur Ansible Galaxy.
Développement et Tests
Ce projet utilise les outils suivants :
- Molecule pour orchestrer les scénarios de test
- Testinfra pour tester les modifications sur le système distant
- pytest le cadre de test
- Tox gère les environnements virtuels Python pour le linting et les tests
- pip-tools pour gérer les dépendances
Un Dev Container de Visual Studio Code est fourni pour le développement et les tests de ce rôle.
Licence
MIT
Informations sur l'auteur
John Freeman
GantSign Ltd. Numéro de société 06109112 (enregistré en Angleterre)
ansible-galaxy install gantsign.visual-studio-code