gantsign.visual-studio-code

Ansible Role: Visual Studio Code

This role helps you install the Visual Studio Code IDE/text editor.

Requirements

  • Ansible Core Version: 2.12 or higher
  • Compatible Linux Distributions:
    • Debian Family (like Ubuntu)
      • Ubuntu Focal (20.04)
      • Ubuntu Jammy (22.04)
    • RedHat Family
      • Rocky Linux 8
      • Fedora 35
    • SUSE Family
      • openSUSE 15.3
    • Note: Other versions may work but haven't been tested.

Role Variables

You can customize this role using the following variables (default values are listed):

# Version of Visual Studio Code to install (defaults to latest)
visual_studio_code_version: ''

# Build type ('stable' or 'insiders' for Ubuntu only)
visual_studio_code_build: stable

# URL for downloading Visual Studio Code and public keys
visual_studio_code_mirror: 'https://packages.microsoft.com'

# Should gpg check be enabled?
visual_studio_code_gpgcheck: true

# Skip adding the repository for package manager
visual_studio_code_skip_add_repo: false

# Users for extension installation and settings
users: []

User Configuration:

users:
  - username: # Unix username
    visual_studio_code_extensions:
      - # Extension 1
      - # Extension 2
    visual_studio_code_settings_overwrite: # Overwrite existing settings? true/false (default: false)
    visual_studio_code_settings: # JSON object
    visual_studio_code_keybindings_overwrite: # Overwrite existing keybindings? true/false (default: false)
    visual_studio_code_keybindings: # JSON array

Example Playbooks

Basic playbook:

- hosts: servers
  roles:
    - role: gantsign.visual-studio-code

Playbook with extensions and custom settings:

- 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"
            }
          ]

More Roles From GantSign

Find more roles by GantSign on Ansible Galaxy.

Development & Testing

This project uses several tools:

A Visual Studio Code Dev Container is available for development and testing.

License

MIT

Author Information

John Freeman

GantSign Ltd.
Company No. 06109112 (registered in England)

Informazioni sul progetto

Role for installing the Visual Studio Code IDE.

Installa
ansible-galaxy install gantsign.visual-studio-code
Licenza
mit
Download
155.2k
Proprietario