diff --git a/grafana_dashboards/schema/template/query.py b/grafana_dashboards/schema/template/query.py index df458ec..02608ac 100644 --- a/grafana_dashboards/schema/template/query.py +++ b/grafana_dashboards/schema/template/query.py @@ -32,6 +32,7 @@ class Query(Base): default=1): v.All(int, v.Range(min=0, max=2)), v.Optional('datasource'): v.All(str), v.Optional('hide'): v.All(int, v.Range(min=0, max=2)), + v.Optional('regex'): v.All(str), } query.update(self.base) return v.Schema(query) diff --git a/tests/schema/fixtures/dashboard-0027.json b/tests/schema/fixtures/dashboard-0027.json index 7b1adbf..47761ed 100644 --- a/tests/schema/fixtures/dashboard-0027.json +++ b/tests/schema/fixtures/dashboard-0027.json @@ -47,6 +47,15 @@ "refresh": 2, "type": "query" }, + { + "includeAll": false, + "multi": false, + "name": "test_query_regex", + "query": "*", + "refresh": 2, + "regex": "/.*?-foo-(.*)/", + "type": "query" + }, { "current": { "text": "undercloud", diff --git a/tests/schema/fixtures/dashboard-0027.yaml b/tests/schema/fixtures/dashboard-0027.yaml index 93081c2..7cb0d87 100644 --- a/tests/schema/fixtures/dashboard-0027.yaml +++ b/tests/schema/fixtures/dashboard-0027.yaml @@ -7,6 +7,11 @@ dashboard: type: query query: "*" refresh: 2 + - name: test_query_regex + type: query + query: "*" + refresh: 2 + regex: "/.*?-foo-(.*)/" - name: test_custom_1 type: custom options: