43 lines
1.5 KiB
YAML
43 lines
1.5 KiB
YAML
---
|
|
- name: Grafana | Check grafana-admin-secret exists
|
|
ansible.builtin.command: >
|
|
kubectl get secret {{ grafana_admin_secret }}
|
|
-n {{ logging_namespace }}
|
|
environment:
|
|
KUBECONFIG: "{{ logging_kubeconfig }}"
|
|
PATH: "/usr/local/bin:/usr/bin:/bin"
|
|
changed_when: false
|
|
failed_when: false
|
|
register: _grafana_secret
|
|
|
|
- name: Grafana | Assert grafana-admin-secret exists
|
|
ansible.builtin.assert:
|
|
that: _grafana_secret.rc == 0
|
|
fail_msg: >-
|
|
Secret '{{ grafana_admin_secret }}' not found in namespace '{{ logging_namespace }}'.
|
|
Create it manually before running this playbook:
|
|
kubectl create namespace {{ logging_namespace }}
|
|
kubectl create secret generic {{ grafana_admin_secret }}
|
|
--from-literal=admin-user=admin --from-literal=admin-password='YOUR_PASSWORD'
|
|
-n {{ logging_namespace }}
|
|
|
|
- name: Grafana | Render Grafana values
|
|
ansible.builtin.template:
|
|
src: grafana-values.yml.j2
|
|
dest: /tmp/grafana-values.yml
|
|
mode: "0600"
|
|
|
|
- name: Grafana | Install or upgrade Grafana
|
|
ansible.builtin.command: >
|
|
helm upgrade --install grafana grafana/grafana
|
|
--namespace {{ logging_namespace }}
|
|
--version {{ grafana_chart_version }}
|
|
--values /tmp/grafana-values.yml
|
|
--timeout 5m0s
|
|
--wait
|
|
environment:
|
|
KUBECONFIG: "{{ logging_kubeconfig }}"
|
|
PATH: "/usr/local/bin:/usr/bin:/bin"
|
|
register: _helm_install
|
|
changed_when: "'STATUS: deployed' in _helm_install.stdout or 'has been upgraded' in _helm_install.stdout"
|