72 lines
2.9 KiB
YAML
72 lines
2.9 KiB
YAML
---
|
|
# vars file for bootstrap
|
|
|
|
_bootstrap_packages:
|
|
Alpine: python3 sudo
|
|
Archlinux: python sudo
|
|
Debian: python3 sudo gnupg python3-apt
|
|
Gentoo: python sudo gentoolkit
|
|
RedHat: &redhat_packages python3 sudo
|
|
Suse: python3 python3-xml sudo
|
|
Amazon: python sudo
|
|
CentOS_7: python sudo
|
|
Debian_8: python sudo gnupg
|
|
Debian_9: python sudo gnupg
|
|
RedHat_7: python sudo
|
|
|
|
# Map the right set of packages, based on gathered bootstrap facts.
|
|
bootstrap_packages: "{{ _bootstrap_packages[bootstrap_distribution ~'_'~ bootstrap_distribution_major_version]|default(
|
|
_bootstrap_packages[bootstrap_distribution] )|default(
|
|
_bootstrap_packages[bootstrap_os_family] ) }}"
|
|
|
|
_bootstrap_install:
|
|
Alpine:
|
|
raw: "LANG=C apk update ; apk add {{ bootstrap_packages }}"
|
|
stdout_regex: 'Installing'
|
|
Archlinux:
|
|
raw: "LANG=C pacman -Sy --noconfirm {{ bootstrap_packages }}"
|
|
stdout_regex: ' installing python'
|
|
Debian:
|
|
raw: "LANG=C apt-get update && apt-get install -y {{ bootstrap_packages }}"
|
|
stdout_regex: ' 0 newly installed'
|
|
Gentoo:
|
|
raw: "LANG=C equery l {{ bootstrap_packages }} ||
|
|
(emaint -a sync ; emerge -qkv {{ bootstrap_packages }} ; echo 'changed')"
|
|
stdout_regex: 'changed'
|
|
RedHat:
|
|
raw: "LANG=C yum -y install {{ bootstrap_packages }}"
|
|
stdout_regex: 'Nothing'
|
|
Suse:
|
|
raw: "LANG=C zypper -n install {{ bootstrap_packages }}"
|
|
stdout_regex: 'Nothing'
|
|
|
|
# Map the right install command, based on gathered bootstrap facts.
|
|
bootstrap_install: "{{ _bootstrap_install[bootstrap_distribution ~'_'~ bootstrap_distribution_major_version]|default(
|
|
_bootstrap_install[bootstrap_distribution] )|default(
|
|
_bootstrap_install[bootstrap_os_family] ) }}"
|
|
|
|
# See URL for available OS families and search queries
|
|
# https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/facts/system/distribution.py
|
|
bootstrap_os_family_map:
|
|
Alpine: [Alpine]
|
|
Archlinux: [Archlinux, Antergos, Manjaro]
|
|
Debian: [Debian, Ubuntu, Raspbian, Neon, KDE neon,
|
|
Linux Mint, SteamOS, Devuan, Kali, Cumulus Linux,
|
|
'Pop!_OS', Parrot, Pardus GNU/Linux]
|
|
Gentoo: [Gentoo, Funtoo]
|
|
RedHat: [RedHat, Fedora, CentOS, Scientific, SLC,
|
|
Ascendos, CloudLinux, PSBM, Rocky, OracleLinux,
|
|
OVS, OEL, Amazon, Virtuozzo, XenServer, Alibaba,
|
|
EulerOS, openEuler, AlmaLinux]
|
|
Suse: [SLED, openSUSE Tumbleweed, openSUSE Leap,
|
|
SLES_SAP, SUSE_LINUX, SLES, openSUSE, SuSE]
|
|
|
|
bootstrap_search:
|
|
Archlinux: 'Arch Linux'
|
|
OracleLinux: 'Oracle Linux'
|
|
RedHat: 'Red Hat'
|
|
|
|
# Map the right set of packages, based on gathered ansible_facts.
|
|
bootstrap_facts_packages: "{{ _bootstrap_packages[ansible_distribution ~'_'~ ansible_distribution_major_version]|default(
|
|
_bootstrap_packages[ansible_distribution] )|default(
|
|
_bootstrap_packages[ansible_os_family] ) }}"
|