diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-21 11:54:28 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-21 11:54:28 +0000 |
commit | e6918187568dbd01842d8d1d2c808ce16a894239 (patch) | |
tree | 64f88b554b444a49f656b6c656111a145cbbaa28 /monitoring/ceph-mixin/CMakeLists.txt | |
parent | Initial commit. (diff) | |
download | ceph-e6918187568dbd01842d8d1d2c808ce16a894239.tar.xz ceph-e6918187568dbd01842d8d1d2c808ce16a894239.zip |
Adding upstream version 18.2.2.upstream/18.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'monitoring/ceph-mixin/CMakeLists.txt')
-rw-r--r-- | monitoring/ceph-mixin/CMakeLists.txt | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/monitoring/ceph-mixin/CMakeLists.txt b/monitoring/ceph-mixin/CMakeLists.txt new file mode 100644 index 000000000..e63c740b7 --- /dev/null +++ b/monitoring/ceph-mixin/CMakeLists.txt @@ -0,0 +1,57 @@ +if(WITH_GRAFANA) + set(CEPH_GRAFANA_DASHBOARDS_DIR "${CMAKE_INSTALL_SYSCONFDIR}/grafana/dashboards/ceph-dashboard" + CACHE PATH "Location for grafana dashboards") + file(GLOB CEPH_GRAFANA_DASHBOARDS "dashboards_out/*.json") + install(FILES + ${CEPH_GRAFANA_DASHBOARDS} + DESTINATION ${CEPH_GRAFANA_DASHBOARDS_DIR}) + if(WITH_TESTS) + set(CEPH_BUILD_VIRTUALENV $ENV{TMPDIR}) + if(NOT CEPH_BUILD_VIRTUALENV) + include(AddCephTest) + set(CEPH_BUILD_VIRTUALENV ${CMAKE_BINARY_DIR}) + + add_test(NAME jsonnet-bundler-build + COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/jsonnet-bundler-build.sh ${CMAKE_CURRENT_BINARY_DIR}) + set_property(TEST jsonnet-bundler-build PROPERTY + FIXTURES_SETUP jsonnet-bundler) + add_test(NAME jsonnet-bundler-cleanup + COMMAND rm -rf jsonnet-bundler ${CMAKE_CURRENT_BINARY_DIR}/jb) + set_property(TEST jsonnet-bundler-cleanup PROPERTY + FIXTURES_CLEANUP jsonnet-bundler) + + add_tox_test(grafana-lint TOX_ENVS lint) + add_tox_test(jsonnet-lint TOX_ENVS jsonnet-lint) + set_property(TEST run-tox-jsonnet-lint PROPERTY + FIXTURES_REQUIRED venv-for-jsonnet-lint) + add_tox_test(jsonnet-check TOX_ENVS jsonnet-check) + set_property(TEST run-tox-jsonnet-check PROPERTY + FIXTURES_REQUIRED venv-for-jsonnet-check jsonnet-bundler) + + add_tox_test(alerts-check TOX_ENVS alerts-check) + add_tox_test(alerts-lint TOX_ENVS alerts-lint) + add_tox_test(promql-query-test TOX_ENVS promql-query-test) + endif() + + if(DEFINED PROMTOOL_EXECUTABLE) + set(promtool_executable_checked TRUE) + endif() + + find_program(PROMTOOL_EXECUTABLE promtool) + if(PROMTOOL_EXECUTABLE) + execute_process( + COMMAND ${PROMTOOL_EXECUTABLE} test rules /dev/null + RESULT_VARIABLE rc + OUTPUT_QUIET) + if(NOT rc) + add_ceph_test(run-promtool-unittests + ${PROMTOOL_EXECUTABLE} test rules ${CMAKE_SOURCE_DIR}/monitoring/ceph-mixin/tests_alerts/test_alerts.yml) + elseif(NOT promtool_executable_checked) + message(WARNING "'${PROMTOOL_EXECUTABLE} test rules' does not work, " + "please use a newer prometheus") + endif() + elseif(NOT promtool_executable_checked) + message(WARNING "run-promtool-unittests is skipped due to missing promtool") + endif() + endif() +endif() |