Wednesday, January 5, 2022

[SOLVED] Install a list of software via apt using a list variable

Issue

While it's possible to install a list of software the following way:

- name: Install what I want
  apt:
    name:
      - docker
      - nmap

Is it also possible to use a variable that contains a list of software names instead? Like so:

vars:
  my_list:
    - docker
    - nmap

- name: Install what I want
  apt:
    name: "{{ my_list }}"

Solution

Yes. It's possible. name is "A list of package names". Both versions of the code are equivalent.

vars:
  my_list:
    - docker
    - nmap
tasks:
  - name: Install what I want
    apt:
      name: "{{ my_list }}"


It's also possible to use a loop. But, this is less efficient.

vars:
  my_list:
    - docker
    - map
tasks:
  - name: Install what I want
    apt:
      name: "{{ item }}"
    loop: "{{ my_list }}"


Answered By - Vladimir Botka