Role to install the Visual Studio Code IDE / text editor.
-
Ansible >= 2.6
-
Linux Distribution
-
Debian Family
-
Ubuntu
- Xenial (16.04)
- Bionic (18.04)
-
-
RedHat Family
-
CentOS
- 7
-
Fedora
- 28
-
-
SUSE Family
-
openSUSE
- 15.1
-
-
Note: other versions are likely to work but have not been tested.
-
The following variables will change the behavior of this role (default values are shown below):
# Visual Studio Code version number (defaults to the latest version)
visual_studio_code_version: ''
# Build (either 'stable' or 'insiders') https://code.visualstudio.com/insiders/
# Ubuntu only (code-insiders isn't in Microsoft's RPM repo)
visual_studio_code_build: stable
# Users to install extensions for and/or write settings.json
users: []
Users are configured as follows:
users:
- username: # Unix user name
visual_studio_code_extensions:
- # extension 1
- # extension 2
visual_studio_code_settings: # JSON object
Minimal playbook:
- hosts: servers
roles:
- role: gantsign.visual-studio-code
Playbook with extensions installed:
- 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: {
"editor.rulers": [80, 100, 120],
"editor.renderWhitespace": true,
"files.associations": {
"Vagrantfile": "ruby"
}
}
You can find more roles from GantSign on Ansible Galaxy.
This project uses Molecule to aid in the development and testing; the role is unit tested using Testinfra and pytest.
To develop or test you'll need to have installed the following:
Because the above can be tricky to install, this project includes Molecule Wrapper. Molecule Wrapper is a shell script that installs Molecule and it's dependencies (apart from Linux) and then executes Molecule with the command you pass it.
To test this role using Molecule Wrapper run the following command from the project root:
./moleculew test
Note: some of the dependencies need sudo
permission to install.
MIT
John Freeman
GantSign Ltd. Company No. 06109112 (registered in England)