%PDF- %PDF-
| Direktori : /etc/ansible/roles/web/tasks/ |
| Current File : //etc/ansible/roles/web/tasks/delete_site.yml |
---
# delete site with defined name - link type
# site_name - name site
# site_dir - direcory name for site
######## create, upload variables that used in playbook
#####
- name: gathering facts about deleted site
delegate_to: "{{ cluster_web_server }}"
bx_facts: name=status password=0 site={{ web_site_name }} site_dir={{ web_site_dir }}
tags: configure_site
- name: create variable with site options
set_fact:
bx_site_info: "{{ hostvars[inventory_hostname]['bx_sites'][0] }}"
tags: configure_site
- name: set variables for deleted site
set_fact:
web_site_dir: "{{ bx_site_info.DocumentRoot }}"
web_site_db: "{{ bx_site_info.DBName }}"
web_site_dbuser: "{{ bx_site_info.DBLogin }}"
web_site_dbserv: "{{ bx_site_info.DBHost }}"
web_site_type: "{{ bx_site_info.SiteInstall }}"
web_site_root_dir: "{{ bx_site_info.DocumentRoot }}"
web_site_shname: "{{ bx_site_info.SiteShort }}"
web_site_csync2: "{{ bx_site_info.SiteCsync2 }}"
web_site_cron: "{{ bx_site_info.CronTask }}"
web_site_email: "{{ bx_site_info.EmailAddress }}"
tags: configure_site
- name: set additional variables
set_fact:
web_site_sess_dir: "{{ bx_site_info.phpSessionDir }}"
web_site_upld_dir: "{{ bx_site_info.phpUploadDir }}"
web_site_ngx_http_link: "{{ bx_site_info.NginxHTTPEDir }}/{{ bx_site_info.NginxHTTPConfig }}"
web_site_ngx_https_link: "{{ bx_site_info.NginxHTTPEDir }}/{{ bx_site_info.NginxHTTPSConfig }}"
web_site_ngx_http_conf: "{{ bx_site_info.NginxHTTPDir }}/{{ bx_site_info.NginxHTTPConfig }}"
web_site_ngx_https_conf: "{{ bx_site_info.NginxHTTPDir }}/{{ bx_site_info.NginxHTTPSConfig }}"
web_site_apache_conf: "{{ bx_site_info.ApacheConf }}"
web_site_apache_scale_conf: "{{ bx_site_info.ApacheConfScale }}"
tags: configure_site
when: "web_site_type == 'kernel' or web_site_type == 'link'"
# defined is_cluster and bx_sites_info variables
- include: bx_sites_info.yml
- name: web cluster update for site data
set_fact:
web_site_dbserv: "{{ master_server }}"
tags: configure_site
when: "is_cluster == 'enable'"
#####
######## /create, upload variables that used in playbook
######## delete site configuration data; we don't remove by file, because we need to support older versions
####
- name: delete cron settings
bx_site_opts: name=cron state=disable site={{ web_site_name }} dir={{ web_site_root_dir }}
when: "inventory_hostname == cluster_web_server and web_site_cron == 'enable'"
ignore_errors: yes
- name: delete email settings
bx_site_opts: name=mail state=disable site={{ web_site_name }} dir={{ web_site_root_dir }}
when: "inventory_hostname == cluster_web_server and web_site_email != ''"
ignore_errors: yes
####
######## /delete site config data
####
######## delete files data
- name: delete site document root
file: path={{ web_site_root_dir }} state=absent
tags: dir_site
when: "'bitrix-web' in group_names"
- name: delete site php-directories
file: path={{ item }} state=absent
with_items:
- "{{ web_site_sess_dir }}"
- "{{ web_site_upld_dir }}"
tags: dir_site
when: "web_site_type != 'ext_kernel' and 'bitrix-web' in group_names"
- name: delete systemd-tmpfiles site config
file: path=/etc/tmpfiles.d/{{ web_site_name }}.conf state=absent
when: "'bitrix-web' in group_names and ansible_distribution == 'CentOS' and ansible_distribution_major_version == '7'"
####
######## /delete files data
######## delete config for web services
#####
- name: delete nginx config files
file: path={{ item }} state=absent
with_items:
- "{{ web_site_ngx_http_link }}"
- "{{ web_site_ngx_https_link }}"
- "{{ web_site_ngx_http_conf }}"
- "{{ web_site_ngx_https_conf }}"
notify: restart nginx
when: "web_site_type != 'ext_kernel' and 'bitrix-web' in group_names"
- name: delete apache config files
file: path={{ item }} state=absent
with_items:
- "{{ web_site_apache_conf }}"
notify: restart httpd
when: "web_site_type != 'ext_kernel' and 'bitrix-web' in group_names"
- name: delete apache config files
file: path={{ item }} state=absent
with_items:
- "{{ web_site_apache_scale_conf }}"
notify: restart httpd-scale
when: web_site_type != "ext_kernel"
and ansible_distribution_major_version == "7"
and inventory_hostname == cluster_web_server
- name: change default site root directory
lineinfile:
dest: "/etc/httpd/conf/httpd.conf"
regexp: "DocumentRoot"
line: "DocumentRoot '/var/www/html'"
when: "web_site_name == 'default' and 'bitrix-web' in group_names"
notify: restart httpd
- name: change default site root directory
lineinfile:
dest: /etc/httpd/conf/httpd-scale.conf
regexp: "DocumentRoot"
line: "DocumentRoot '/var/www/html'"
when: web_site_name == "default"
and ansible_distribution_major_version == "7"
and inventory_hostname == cluster_web_server
notify: restart httpd-scale
- name: add listen directive to httpd config
lineinfile:
dest: /etc/httpd/conf/httpd.conf
line: "Listen 127.0.0.1:8888"
state: present
when: "web_site_name == 'default' and 'bitrix-web' in group_names"
notify: restart httpd
- name: add listen directive to httpd config
lineinfile:
dest: /etc/httpd/conf/httpd-scale.conf
line: "Listen 127.0.0.1:9887"
state: present
when: web_site_name == "default"
and ansible_distribution_major_version == "7"
and inventory_hostname == cluster_web_server
notify: restart httpd-scale
####
######## /delete config for web services
######## /delete database from mysql server
####
- include: delete_db.yml
when: "web_site_type == 'kernel' or web_site_type == 'ext_kernel'"
####
######## /delete database from mysql server
######## delete csync configuration
####
- include: delete_csync2.yml
when: "fstype is defined and cluster_web_configure == 'enable' and fstype == 'csync'"
- include: configs_lsyncd_delete_site.yml
when: "fstype is defined and cluster_web_configure == 'enable' and fstype == 'lsync'"
####
######## /delete csync configuration