Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ visual_studio_code_mirror: 'https://packages.microsoft.com'
# - for zypper the option gpgcheck is set to 0
visual_studio_code_gpgcheck: true

# Indicates if apt should use deb822 or one-line sources format
# See https://repolib.readthedocs.io/en/latest/deb822-format.html
visual_studio_code_use_deb822_format: false

# skip task to add repo for remote package manager
# if set to true, the task 'install VS Code repo (apt/yum/dnf/zypper)' will be skipped
# if set to false, the repo will be added, this is the default
Expand Down
14 changes: 14 additions & 0 deletions tasks/apt-source-deb822.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# code: language=ansible
---
- name: Install VS Code repo (apt - deb822)
become: true
ansible.builtin.deb822_repository:
name: vscode
types: deb
uris: "{{ visual_studio_code_mirror }}/repos/code"
suites: stable
components: main
architectures: "{{ visual_studio_code_deb_architecture }}"
signed_by: "{{ visual_studio_code_mirror }}/keys/microsoft.asc"
trusted: "{{ not visual_studio_code_gpgcheck }}"
when: not visual_studio_code_skip_add_repo
29 changes: 29 additions & 0 deletions tasks/apt-source-oneline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# code: language=ansible
---
- name: Install dependencies (apt - oneline)
become: true
ansible.builtin.apt:
name:
- ca-certificates
- apt-transport-https
state: present

- name: Install key (apt - oneline)
become: true
ansible.builtin.get_url:
url: '{{ visual_studio_code_mirror }}/keys/microsoft.asc'
dest: '/etc/apt/keyrings/'
mode: 'u=rw,go=r'
force: true

- name: Install VS Code repo (apt - oneline)
become: true
ansible.builtin.apt_repository:
repo: >-
deb [arch={{ visual_studio_code_deb_architecture }}
{{ visual_studio_code_gpgcheck | ternary("", " trusted=true") }}
signed-by=/etc/apt/keyrings/microsoft.asc]
{{ visual_studio_code_mirror }}/repos/code stable main
filename: vscode
state: present
when: not visual_studio_code_skip_add_repo
30 changes: 2 additions & 28 deletions tasks/install-apt.yml
Original file line number Diff line number Diff line change
@@ -1,39 +1,13 @@
# code: language=ansible
---
- name: Install dependencies (apt)
become: true
ansible.builtin.apt:
name:
- ca-certificates
- apt-transport-https
state: present

- name: Create APT keyrings dir
- name: Create keyrings dir (apt)
become: true
ansible.builtin.file:
path: '/etc/apt/keyrings'
state: directory
mode: 'u=rwx,go=rx'

- name: Install key (apt)
become: true
ansible.builtin.get_url:
url: '{{ visual_studio_code_mirror }}/keys/microsoft.asc'
dest: '/etc/apt/keyrings/'
mode: 'u=rw,go=r'
force: true

- name: Install VS Code repo (apt)
become: true
ansible.builtin.apt_repository:
repo: >-
deb [arch={{ visual_studio_code_deb_architecture }}
{{ visual_studio_code_gpgcheck | ternary("", " trusted=true") }}
signed-by=/etc/apt/keyrings/microsoft.asc]
{{ visual_studio_code_mirror }}/repos/code stable main
filename: vscode
state: present
when: not visual_studio_code_skip_add_repo
- include_tasks: 'apt-source-{{ visual_studio_code_use_deb822_format | ternary("deb822", "oneline" )}}.yml'

- name: Install VS Code (apt)
become: true
Expand Down