From 7958728837c2e50e28bd737015ec6c3044e8b1e6 Mon Sep 17 00:00:00 2001 From: Emiliano Vavassori Date: Thu, 16 Apr 2015 18:23:01 +0200 Subject: [PATCH] Pulizia nei tasks di setup. Aggiunta async per task lunghi. --- roles/setup/tasks/ansible.yml | 5 ++- roles/setup/tasks/centos_delrepos.yml | 15 ------- .../{centos_addrepos.yml => centos_pkgs.yml} | 30 ++++++++++++-- roles/setup/tasks/clearos_pkgs.yml | 34 ++-------------- roles/setup/tasks/main.yml | 11 ++++-- roles/setup/tasks/packages.yml | 13 ------- roles/setup/vars/main.yml | 39 +++++++++++++++++++ 7 files changed, 81 insertions(+), 66 deletions(-) delete mode 100644 roles/setup/tasks/centos_delrepos.yml rename roles/setup/tasks/{centos_addrepos.yml => centos_pkgs.yml} (73%) delete mode 100644 roles/setup/tasks/packages.yml diff --git a/roles/setup/tasks/ansible.yml b/roles/setup/tasks/ansible.yml index 7e65395..15efbd7 100644 --- a/roles/setup/tasks/ansible.yml +++ b/roles/setup/tasks/ansible.yml @@ -1,9 +1,12 @@ --- +- name: Verifica installazione git + yum: name=git-svn state=present + - name: Download della gestione client con ansible git: repo=http://github.com/syntaxerrormmm/ps-clientmgmt.git dest=/root/clientmgmt - remote_user: amgmt + sudo_user: root sudo: yes tags: - git diff --git a/roles/setup/tasks/centos_delrepos.yml b/roles/setup/tasks/centos_delrepos.yml deleted file mode 100644 index 99fa044..0000000 --- a/roles/setup/tasks/centos_delrepos.yml +++ /dev/null @@ -1,15 +0,0 @@ ---- - -- name: Rimozione repository centrali CentOS 6 - shell: rm -f /etc/yum.repos.d/{{ item }} - with_items: centos_repo_files - sudo: yes - -- name: Rimozione firme GPG repository CentOS 6 - shell: rm -f /etc/pki/rpm-gpg/{{ item }} - with_items: centos_gpg_files - sudo: yes - -- name: Ripristino repository ad originali - shell: yum clean all && yum repolist - sudo: yes diff --git a/roles/setup/tasks/centos_addrepos.yml b/roles/setup/tasks/centos_pkgs.yml similarity index 73% rename from roles/setup/tasks/centos_addrepos.yml rename to roles/setup/tasks/centos_pkgs.yml index 9282123..ee25d1f 100644 --- a/roles/setup/tasks/centos_addrepos.yml +++ b/roles/setup/tasks/centos_pkgs.yml @@ -1,9 +1,18 @@ --- -- name: Verifica configurazione CentOS 6 - file: name=/etc/yum.repos.d/CentOS-Base.repo state=file +- name: Verifica installazione pacchetti aggiuntivi + shell: rpm -q {{ item }} sudo: yes - ignore_errors: yes + with_items: addins_pkg + register: check_pkg + changed_when: check_pkg.rc != 0 + tags: pkg + +- name: Verifica configurazione CentOS 6 + file: name=/etc/yum.repos.d/{{ item }} state=file + sudo: yes + with_items: centos_repo_files + when: check_pkg|changed register: check_repos tags: repo @@ -40,12 +49,16 @@ - name: Prima attivazione repo shell: yum clean all && yum repolist sudo: yes + register: first_repo_activate when: centos_repo_installed|changed + async: 600 + poll: 10 tags: repo - name: Attivo EPEL yum: name=epel-release state=present sudo: yes + when: first_repo_activate|changed register: epel_installed tags: repo @@ -53,6 +66,8 @@ shell: yum clean all && yum repolist sudo: yes when: epel_installed|changed + async: 600 + poll: 10 tags: repo - name: Pulizia @@ -60,3 +75,12 @@ sudo: yes when: check_repos|failed tags: repo + +- name: Installo pacchetti di gestione + yum: name={{ item }} state=present + sudo: yes + when: ansible_os_family == 'ClearOS' + with_items: addin_pkgs + async: 3600 + poll: 30 + tags: pkg diff --git a/roles/setup/tasks/clearos_pkgs.yml b/roles/setup/tasks/clearos_pkgs.yml index 2d7151d..9dc01fd 100644 --- a/roles/setup/tasks/clearos_pkgs.yml +++ b/roles/setup/tasks/clearos_pkgs.yml @@ -3,34 +3,6 @@ - name: Aggiunta pacchetti specifici ClearOS yum: name={{ item }} state=present sudo: yes - with_items: - - app-content-filter - - app-web-proxy - - app-proxy-report - - app-openldap-directory - - app-ntp - - app-configuration-backup - - app-firewall - - app-network - - app-users - - app-groups - - app-administrators - - app-password-policies - - app-accounts - - app-account-import - - app-services - - app-software-repository - - app-software-updates - - app-ssh-server - - app-dhcp - - app-flexshare - - app-process-viewer - - app-log-viewer - - app-print-server - - app-samba - - app-user-profile - - app-date - - app-marketplace - - app-registration - - app-dashboard - - app-base + with_items: clearos_pkgs + async: 3600 + poll: 30 diff --git a/roles/setup/tasks/main.yml b/roles/setup/tasks/main.yml index bfff07d..bbdd610 100644 --- a/roles/setup/tasks/main.yml +++ b/roles/setup/tasks/main.yml @@ -1,7 +1,12 @@ --- - include: clearos_pkgs.yml -- include: centos_addrepos.yml -- include: packages.yml -- include: centos_delrepos.yml + tags: clearos + +- include: centos_pkgs.yml + tags: centos + - include: ansible.yml + tags: + - git + - ansible diff --git a/roles/setup/tasks/packages.yml b/roles/setup/tasks/packages.yml deleted file mode 100644 index b3aff10..0000000 --- a/roles/setup/tasks/packages.yml +++ /dev/null @@ -1,13 +0,0 @@ ---- - -- name: Installo pacchetti di gestione - yum: name={{ item }} state=present - sudo: yes - when: ansible_os_family == 'ClearOS' - with_items: - - git-svn - - vim-enhanced - - screen - - sshpass - - ansible - tags: pkg diff --git a/roles/setup/vars/main.yml b/roles/setup/vars/main.yml index c1a0536..1daa268 100644 --- a/roles/setup/vars/main.yml +++ b/roles/setup/vars/main.yml @@ -10,3 +10,42 @@ centos_gpg_files: - RPM-GPG-KEY-CentOS-Security-6 - RPM-GPG-KEY-CentOS-Debug-6 - RPM-GPG-KEY-CentOS-Testing-6 + +addin_pkgs: + - git-svn + - vim-enhanced + - screen + - sshpass + - ansible + +clearos_pkgs: + - app-content-filter + - app-web-proxy + - app-proxy-report + - app-openldap-directory + - app-ntp + - app-configuration-backup + - app-firewall + - app-network + - app-users + - app-groups + - app-administrators + - app-password-policies + - app-accounts + - app-account-import + - app-services + - app-software-repository + - app-software-updates + - app-ssh-server + - app-dhcp + - app-flexshare + - app-process-viewer + - app-log-viewer + - app-print-server + - app-samba + - app-user-profile + - app-date + - app-marketplace + - app-registration + - app-dashboard + - app-base