[MOLECULE] Add molecule setup for kube_prometheus.yml playbook 15/126415/2
authorBartek Grzybowski <b.grzybowski@partner.samsung.com>
Tue, 4 Jan 2022 12:51:54 +0000 (13:51 +0100)
committerBartek Grzybowski <b.grzybowski@partner.samsung.com>
Wed, 5 Jan 2022 09:44:48 +0000 (09:44 +0000)
nfs_mount_path in kube-prometheus-stack role is coerced to global
value from group_vars to allow direct verifier test reuse in
playbook run.

Change-Id: I125355f2b65b57ae6782b9eafcb6d6b58a7444e0
Issue-ID: OOM-2908
Signed-off-by: Bartek Grzybowski <b.grzybowski@partner.samsung.com>
ansible/roles/kube-prometheus-stack/molecule/default/molecule.yml
ansible/roles/kube-prometheus-stack/molecule/default/tests/test_default.py
ansible/test/play-kube_prometheus/.yamllint [new file with mode: 0644]
ansible/test/play-kube_prometheus/molecule/default/converge.yml [new file with mode: 0644]
ansible/test/play-kube_prometheus/molecule/default/molecule.yml [new file with mode: 0644]
ansible/test/play-kube_prometheus/molecule/default/prepare.yml [new file with mode: 0644]
ansible/test/play-kube_prometheus/molecule/default/vars.yml [new file with mode: 0644]

index c1eafa3..bf9ed85 100644 (file)
@@ -23,6 +23,6 @@ provisioner:
       all:
         app_name: onap
         app_data_path: "/opt/{{ app_name }}"
-        nfs_mount_path: "/nfs"
+        nfs_mount_path: "/dockerdata-nfs"
 verifier:
   name: testinfra
index ad2d90c..18da24e 100644 (file)
@@ -26,7 +26,7 @@ def test_helm_values_file(host):
 
 
 def test_grafana_dashboards(host):
-    assert host.file('/nfs/kube-prometheus/kube-prometheus-grafana/'
+    assert host.file('/dockerdata-nfs/kube-prometheus/kube-prometheus-grafana/'
                      'dashboards/custom/grafana_dashboard.json').exists
-    assert host.file('/nfs/kube-prometheus/kube-prometheus-grafana/'
+    assert host.file('/dockerdata-nfs/kube-prometheus/kube-prometheus-grafana/'
                      'dashboards/grafana_home.json').exists
diff --git a/ansible/test/play-kube_prometheus/.yamllint b/ansible/test/play-kube_prometheus/.yamllint
new file mode 100644 (file)
index 0000000..c5ae64b
--- /dev/null
@@ -0,0 +1,12 @@
+---
+extends: default
+
+rules:
+  braces:
+    max-spaces-inside: 1
+    level: error
+  brackets:
+    max-spaces-inside: 1
+    level: error
+  line-length: disable
+  truthy: disable
diff --git a/ansible/test/play-kube_prometheus/molecule/default/converge.yml b/ansible/test/play-kube_prometheus/molecule/default/converge.yml
new file mode 100644 (file)
index 0000000..f47c622
--- /dev/null
@@ -0,0 +1,8 @@
+---
+- name: Initialize
+  hosts: all
+  tasks:
+    - name: Include variables
+      include_vars: vars.yml
+
+- import_playbook: ../../../../kube_prometheus.yml
diff --git a/ansible/test/play-kube_prometheus/molecule/default/molecule.yml b/ansible/test/play-kube_prometheus/molecule/default/molecule.yml
new file mode 100644 (file)
index 0000000..a21bf1e
--- /dev/null
@@ -0,0 +1,24 @@
+---
+dependency:
+  name: galaxy
+driver:
+  name: docker
+lint: |
+  set -e
+  yamllint .
+  ansible-lint .
+  flake8
+platforms:
+  - name: infrastructure-play-kube-prometheus
+    image: molecule-${PREBUILD_PLATFORM_DISTRO:-centos}:${PREBUILD_DISTRO_VERSION:-centos7.9}
+    pre_build_image: true
+    groups:
+      - infrastructure
+provisioner:
+  name: ansible
+  env:
+    ANSIBLE_ROLES_PATH: ../../../../test/roles
+    ANSIBLE_LIBRARY: ../../../../library
+verifier:
+  name: testinfra
+  directory: ../../../../roles/kube-prometheus-stack/molecule/default/tests/
diff --git a/ansible/test/play-kube_prometheus/molecule/default/prepare.yml b/ansible/test/play-kube_prometheus/molecule/default/prepare.yml
new file mode 100644 (file)
index 0000000..1a1a298
--- /dev/null
@@ -0,0 +1,10 @@
+---
+- name: Prepare infra
+  hosts: infrastructure
+  pre_tasks:
+    - name: Include infrastructure group variables
+      include_vars: ../../../../group_vars/infrastructure.yml
+    - name: Include test setup variables
+      include_vars: vars.yml
+  roles:
+    - prepare-kube-prometheus-stack
diff --git a/ansible/test/play-kube_prometheus/molecule/default/vars.yml b/ansible/test/play-kube_prometheus/molecule/default/vars.yml
new file mode 100644 (file)
index 0000000..1256ac4
--- /dev/null
@@ -0,0 +1,5 @@
+---
+k8s_volumes: []
+app_name: onap
+app_data_path: "/opt/{{ app_name }}"
+nfs_mount_path: "/dockerdata-nfs"