From 5416f8599ffa92b69bb87434dc1175d760760bbe Mon Sep 17 00:00:00 2001 From: "Suren A. Chilingaryan" Date: Thu, 5 Jul 2018 16:22:30 +0200 Subject: Initial import --- roles/common/README | 11 +++++++++++ roles/common/default/main.yml | 1 + roles/common/tasks/main.yml | 18 ++++++++++++++++++ roles/common/tasks/software.yml | 30 ++++++++++++++++++++++++++++++ roles/kernel/tasks/software.yml | 11 +++++++++++ 5 files changed, 71 insertions(+) create mode 100644 roles/common/README create mode 100644 roles/common/default/main.yml create mode 100644 roles/common/tasks/main.yml create mode 100644 roles/common/tasks/software.yml create mode 100644 roles/kernel/tasks/software.yml (limited to 'roles') diff --git a/roles/common/README b/roles/common/README new file mode 100644 index 0000000..c8bd679 --- /dev/null +++ b/roles/common/README @@ -0,0 +1,11 @@ +Dependencies: + - Executed on all nodes + - No dependencies & no facts + +Parameters: + extra_packages: list of extra packages to install + +Actions: + - Enables standard repositories + - Install a set of common packages on all nodes (mc, etc.) + \ No newline at end of file diff --git a/roles/common/default/main.yml b/roles/common/default/main.yml new file mode 100644 index 0000000..d355d15 --- /dev/null +++ b/roles/common/default/main.yml @@ -0,0 +1 @@ +os_update: "{{ ands_update | default(false) }}" \ No newline at end of file diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml new file mode 100644 index 0000000..8070bc6 --- /dev/null +++ b/roles/common/tasks/main.yml @@ -0,0 +1,18 @@ +- name: Ensure all required repositories are configured + package: name={{item}} state=present + register: result + with_items: + - epel-release + when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux' + +- name: Add our repository with updates and overrides + yum_repository: name="{{ item.name }}" description= "{{ item.description | default('Ands repository') }}" baseurl="{{ item.url }}" enabled="yes" gpgcheck="no" cost="{{ item.cost | default(1) }}" + with_items: "{{ ands_repositories | default([]) }}" + +# We always update on first install and if requested +- name: Update CentOS + yum: name=* state=latest update_cache=yes + when: (result | changed) or (os_update | default(false)) + +- name: Install additional software + include_tasks: software.yml diff --git a/roles/common/tasks/software.yml b/roles/common/tasks/software.yml new file mode 100644 index 0000000..c621ef3 --- /dev/null +++ b/roles/common/tasks/software.yml @@ -0,0 +1,30 @@ +- name: Install various ansible requirements + package: name={{item}} state=present + with_items: + - yum-plugin-versionlock + - libselinux-python + - libsemanage-python + - yamllint + - pyOpenSSL + - python-passlib + - python2-ruamel-yaml + - python2-jmespath + - python-ipaddress + - iptables-services + - PyYAML + - python-rhsm-certificates + +- name: Install various administrative tools + package: name={{item}} state=present + with_items: + - mc + - telnet + - lsof + - strace + - bzr + - git + - pciutils + +- name: Ensure all extra packages are installed + package: name={{item}} state=present + with_items: "{{ extra_packages | default([]) }}" diff --git a/roles/kernel/tasks/software.yml b/roles/kernel/tasks/software.yml new file mode 100644 index 0000000..92733aa --- /dev/null +++ b/roles/kernel/tasks/software.yml @@ -0,0 +1,11 @@ +- name: Install various administrative tools + package: name={{item}} state=present + register: result + with_items: + - kernel-devel + +# We always update on first install and if requested +- name: Update kernel + package: name=kernel state=latest + when: (result | changed) + -- cgit v1.2.1