mac-setup/tasks/extra-packages.yml
Paul van Noort 01c1e0d2a1 dingen
2021-04-07 13:26:28 +02:00

39 lines
1.5 KiB
YAML

---
- name: Ensure extra packages are installed
block:
- name: Install global Composer packages.
composer:
command: "{{ (item.state | default('present') == 'absent') | ternary('remove', 'require') }}"
arguments: "{{ item.name | default(item) }} {{ item.version | default('@stable') }}"
# Ansible 2.4 supports `global_command` making `working_dir` optional.
working_dir: "{{ lookup('env', 'COMPOSER_HOME') | default('~/.composer', true) }}"
loop: "{{ composer_packages }}"
- name: Install global NPM packages.
ansible.builtin.npm:
name: "{{ item.name | default(item) }}"
state: "{{ item.state | default('present') }}"
version: "{{ item.version | default(omit) }}"
global: true
executable: "{{ item.executable | default(omit) }}"
loop: "{{ npm_packages }}"
- name: Install global Pip packages.
ansible.builtin.pip:
name: "{{ item.name | default(item) }}"
state: "{{ item.state | default('present') }}"
version: "{{ item.version | default(omit) }}"
executable: "{{ pip_executable | default(omit) }}"
loop: "{{ pip_packages }}"
- name: Install global Ruby gems.
ansible.builtin.gem:
name: "{{ item.name | default(item) }}"
state: "{{ item.state | default('present') }}"
version: "{{ item.version | default(omit) }}"
user_install: false
install_dir: "{{ gem_dir }}"
executable: "{{ gem_executable | default(omit) }}"
loop: "{{ gem_packages }}"
tags: ['extra-packages']