31 lines
1.1 KiB
Text
31 lines
1.1 KiB
Text
|
|
#!/usr/bin/env nu
|
||
|
|
use lib/runner.nu [run-reflection-mode, print-summary-and-exit]
|
||
|
|
|
||
|
|
def main [
|
||
|
|
--workspace: string = "libre-wuji",
|
||
|
|
--kubeconfig: string = "",
|
||
|
|
--prometheus-url: string = "http://prometheus.observability.svc.cluster.local:9090",
|
||
|
|
--grafana-url: string = "http://grafana.observability.svc.cluster.local:3000",
|
||
|
|
--loki-url: string = "http://loki.observability.svc.cluster.local:3100",
|
||
|
|
--provisioning-root: string = "",
|
||
|
|
]: nothing -> nothing {
|
||
|
|
let root = if not ($provisioning_root | is-empty) {
|
||
|
|
$provisioning_root
|
||
|
|
} else {
|
||
|
|
$env | get -o PROVISIONING_ROOT | default ($env.FILE_PWD | path join ".." | path expand)
|
||
|
|
}
|
||
|
|
|
||
|
|
let results = with-env (
|
||
|
|
if not ($kubeconfig | is-empty) { { KUBECONFIG: $kubeconfig } } else { {} }
|
||
|
|
) {
|
||
|
|
run-reflection-mode $"($root)/reflection/modes/validate-observability.ncl" {
|
||
|
|
workspace: $workspace,
|
||
|
|
kubeconfig: $kubeconfig,
|
||
|
|
prometheus_url: $prometheus_url,
|
||
|
|
grafana_url: $grafana_url,
|
||
|
|
loki_url: $loki_url,
|
||
|
|
} $root
|
||
|
|
}
|
||
|
|
print-summary-and-exit $results
|
||
|
|
}
|