gantsign.visual-studio-code

Rôle Ansible : Visual Studio Code

Tests Ansible Galaxy License

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)

À propos du projet

Role for installing the Visual Studio Code IDE.

Installer
ansible-galaxy install gantsign.visual-studio-code
Licence
mit
Téléchargements
155.2k
Propriétaire