summaryrefslogtreecommitdiffstats
path: root/monitoring/ceph-mixin/tox.ini
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
commite6918187568dbd01842d8d1d2c808ce16a894239 (patch)
tree64f88b554b444a49f656b6c656111a145cbbaa28 /monitoring/ceph-mixin/tox.ini
parentInitial commit. (diff)
downloadceph-upstream/18.2.2.tar.xz
ceph-upstream/18.2.2.zip
Adding upstream version 18.2.2.upstream/18.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--monitoring/ceph-mixin/tox.ini75
1 files changed, 75 insertions, 0 deletions
diff --git a/monitoring/ceph-mixin/tox.ini b/monitoring/ceph-mixin/tox.ini
new file mode 100644
index 000000000..d0d97fc98
--- /dev/null
+++ b/monitoring/ceph-mixin/tox.ini
@@ -0,0 +1,75 @@
+[tox]
+envlist =
+ lint,
+ jsonnet-{check,lint,fix},
+ jsonnet-bundler-{install,update},
+ promql-query-{test,lint},
+ alerts-check
+skipsdist = true
+
+[testenv:jsonnet-bundler-{install,update}]
+allowlist_externals =
+ jb
+description =
+ install: Install the jsonnet dependencies
+ update: Update the jsonnet dependencies
+commands =
+ install: jb install
+ update: jb update
+
+[testenv:jsonnet-{check,fix,lint}]
+basepython = python3
+allowlist_externals =
+ find
+ jb
+ jsonnet
+ jsonnetfm
+ sh
+description =
+ check: Ensure that auto-generated files matches the current version
+ fix: Update generated files from jsonnet file with latest changes
+ lint: Test if jsonnet files are linted (without any update)
+deps =
+ -rrequirements-grafonnet.txt
+depends = jsonnet-bundler-install
+commands =
+ check: sh test-jsonnet.sh
+ lint: ./lint-jsonnet.sh --test
+ fix: jsonnet -J vendor -m dashboards_out dashboards.jsonnet
+
+[testenv:lint]
+description =
+ Run python linters
+deps =
+ -rrequirements-lint.txt
+setenv =
+commands =
+ pylint --rcfile=.pylintrc tests_dashboards
+ mypy tests_dashboards
+ isort tests_dashboards
+
+[testenv:promql-query-test]
+description =
+ lint: Run promtool check on grafana queries
+ test: Run promtool unit testing on grafana queries.
+deps =
+ -rrequirements-lint.txt
+depends = grafonnet-check
+setenv =
+allowlist_externals =
+ promtool
+commands =
+ behave tests_dashboards/features
+
+[testenv:alerts-{fix,check,lint}]
+deps =
+ -rrequirements-alerts.txt
+ pytest
+depends = grafonnet-check
+allowlist_externals =
+ promtool
+commands =
+ fix: jsonnet -J vendor -S alerts.jsonnet -o prometheus_alerts.yml
+ lint: promtool check rules prometheus_alerts.yml
+ test: pytest -rA tests_alerts/test_syntax.py tests_alerts/test_unittests.py
+ python3 ./tests_alerts/validate_rules.py