diff --git a/playbooks/roles/grafana/templates/docker-compose.yaml.j2 b/playbooks/roles/grafana/templates/docker-compose.yaml.j2 index 170ba6d97d..1bae5667af 100644 --- a/playbooks/roles/grafana/templates/docker-compose.yaml.j2 +++ b/playbooks/roles/grafana/templates/docker-compose.yaml.j2 @@ -5,7 +5,7 @@ version: '2' services: grafana: restart: always - image: docker.io/grafana/grafana-oss:10.4.15 + image: docker.io/grafana/grafana-oss:11.5.1 network_mode: host environment: GF_SERVER_DOMAIN: 'grafana.opendev.org' diff --git a/testinfra/test_grafana.py b/testinfra/test_grafana.py index f213ff2f1b..6dca78d363 100644 --- a/testinfra/test_grafana.py +++ b/testinfra/test_grafana.py @@ -43,12 +43,22 @@ def test_grafana_screenshots(host): ('https://localhost/', None, 'grafana-main-page.png'), ('https://localhost/dashboards', None, 'grafana-dashboards-page.png') ] + json_defs = [] cmd = host.run("curl -s --insecure " "--resolve grafana.opendev.org:443:127.0.0.1 " "https://grafana.opendev.org/api/search") j = json.loads(cmd.stdout) for dashboard in j: url = dashboard["url"] + uid = dashboard["uid"] name = dashboard["uri"].split("/")[-1] shots.append(("https://localhost" + url, None, name + '.png')) + json_defs.append((uid, name + '.json')) take_screenshots(host, shots) + host.run('mkdir /tmp/json_blobs') + for uid, dst in json_defs: + host.run("curl -s --insecure " + "--resolve grafana.opendev.org:443:127.0.0.1 " + "https://grafana.opendev.org/api/dashboards/uid/%s " + "-o /tmp/json_blobs/%s" % + (uid, dst)) diff --git a/zuul.d/system-config-run.yaml b/zuul.d/system-config-run.yaml index 031b30bc0a..7609679bf5 100644 --- a/zuul.d/system-config-run.yaml +++ b/zuul.d/system-config-run.yaml @@ -743,6 +743,10 @@ - playbooks/letsencrypt.yaml - playbooks/service-grafana.yaml run_test_playbook: playbooks/test-grafana.yaml + host-vars: + grafana02.opendev.org: + host_copy_output: + '/tmp/json_blobs': logs files: - playbooks/bootstrap-bridge.yaml - playbooks/letsencrypt.yaml