dashboard: move code into a dedicated playbook

Move dashboard, grafana/prometheus and node-exporter plays into a
dedicated playbook in infrastructure-playbook directory.
To avoid using 'dashboard_enabled | bool' condition multiple time
in the main playbook we can just import the dashboard playbook or
not.
This patch also allows to use an unique dashboard playbook for
both baremetal and container playbooks.

Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
(cherry picked from commit 43135840b1)
pull/4279/head
Dimitri Savineau 2019-06-28 10:39:38 -04:00 committed by Guillaume Abrioux
parent 93826e061d
commit dd87db70ca
3 changed files with 108 additions and 214 deletions

View File

@ -0,0 +1,99 @@
---
- hosts: all
become: true
pre_tasks:
- name: set ceph node exporter install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_node_exporter:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-facts
tags: ['ceph_update_config']
- import_role:
name: ceph-container-engine
- import_role:
name: ceph-node-exporter
post_tasks:
- name: set ceph node exporter install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_node_exporter:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
- hosts: '{{ groups["grafana-server"][0] | default(groups["mgrs"][0]) | default(groups["mons"][0]) | default(omit) }}'
become: true
pre_tasks:
- name: set ceph grafana install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_grafana:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-facts
tags: ['ceph_update_config']
- import_role:
name: ceph-container-engine
- import_role:
name: ceph-prometheus
- import_role:
name: ceph-grafana
post_tasks:
- name: set ceph grafana install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_grafana:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
- hosts: '{{ groups["mgrs"][0] | default(groups["mons"][0]) | default(omit) }}'
become: true
pre_tasks:
- name: set ceph dashboard install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_dashboard:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-facts
tags: ['ceph_update_config']
- import_role:
name: ceph-dashboard
post_tasks:
- name: set ceph dashboard install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_dashboard:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"

View File

@ -105,9 +105,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -154,9 +151,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -198,9 +192,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -242,9 +233,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -286,9 +274,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -330,9 +315,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -374,9 +356,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -416,13 +395,10 @@
name: ceph-handler
- import_role:
name: ceph-container-engine
when: inventory_hostname == groups.get('clients', ['']) | first or dashboard_enabled
when: inventory_hostname == groups.get('clients', ['']) | first
- import_role:
name: ceph-container-common
when: inventory_hostname == groups.get('clients', ['']) | first
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -466,9 +442,6 @@
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
- import_role:
name: ceph-config
tags: ['ceph_update_config']
@ -517,80 +490,7 @@
run_once: true
when: not ceph_status.failed
- hosts: '{{ groups["grafana-server"][0] | default(groups["mgrs"][0]) | default(groups["mons"][0]) | default(omit) }}'
become: true
pre_tasks:
- name: set ceph grafana install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_grafana:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-facts
tags: ['ceph_update_config']
- import_role:
name: ceph-handler
- import_role:
name: ceph-container-engine
- import_role:
name: ceph-container-common
- import_role:
name: ceph-node-exporter
- import_role:
name: ceph-config
tags: ['ceph_update_config']
- import_role:
name: ceph-prometheus
- import_role:
name: ceph-grafana
when: dashboard_enabled | bool
post_tasks:
- name: set ceph grafana install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_grafana:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
- hosts: '{{ groups["mgrs"][0] | default(groups["mons"][0]) | default(omit) }}'
become: true
pre_tasks:
- name: set ceph dashboard install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_dashboard:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-dashboard
when: dashboard_enabled | bool
post_tasks:
- name: set ceph dashboard install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_dashboard:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
- import_playbook: infrastructure-playbooks/dashboard.yml
when:
- dashboard_enabled | bool
- groups.get(grafana_server_group_name, []) | length > 0

View File

@ -481,112 +481,7 @@
run_once: true
when: not ceph_status.failed
- hosts: all
become: true
pre_tasks:
- name: set ceph node exporter install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_node_exporter:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
tasks:
- block:
- import_role:
name: ceph-defaults
- import_role:
name: ceph-facts
- import_role:
name: ceph-handler
- import_role:
name: ceph-container-engine
- import_role:
name: ceph-node-exporter
when: dashboard_enabled | bool
post_tasks:
- name: set ceph node exporter install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_node_exporter:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
- hosts: '{{ groups["grafana-server"][0] | default(groups["mgrs"][0]) | default(groups["mons"][0]) | default(omit) }}'
become: true
pre_tasks:
- name: set ceph grafana install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_grafana:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-facts
tags: ['ceph_update_config']
- import_role:
name: ceph-handler
- import_role:
name: ceph-common
- import_role:
name: ceph-config
tags: ['ceph_update_config']
- import_role:
name: ceph-prometheus
- import_role:
name: ceph-grafana
when: dashboard_enabled | bool
post_tasks:
- name: set ceph grafana install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_grafana:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
- hosts: '{{ groups["mgrs"][0] | default(groups["mons"][0]) | default(omit) }}'
become: true
pre_tasks:
- name: set ceph dashboard install 'In Progress'
run_once: true
set_stats:
data:
installer_phase_ceph_dashboard:
status: "In Progress"
start: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
tasks:
- block:
- import_role:
name: ceph-defaults
tags: ['ceph_update_config']
- import_role:
name: ceph-dashboard
when: dashboard_enabled | bool
post_tasks:
- name: set ceph dashboard install 'Complete'
run_once: true
set_stats:
data:
installer_phase_ceph_dashboard:
status: "Complete"
end: "{{ lookup('pipe', 'date +%Y%m%d%H%M%SZ') }}"
when: dashboard_enabled | bool
- import_playbook: infrastructure-playbooks/dashboard.yml
when:
- dashboard_enabled | bool
- groups.get(grafana_server_group_name, []) | length > 0