├── .envrc ├── .github └── CODEOWNERS ├── LICENSE ├── README.md ├── imports.dhall ├── package.dhall ├── refreeze.sh ├── shell.nix └── v1 ├── APIServerConfig.dhall ├── AlertingSpec.dhall ├── Alertmanager.dhall ├── AlertmanagerConfig.dhall ├── AlertmanagerConfigList.dhall ├── AlertmanagerConfigSpec.dhall ├── AlertmanagerEndpoints.dhall ├── AlertmanagerList.dhall ├── AlertmanagerSpec.dhall ├── AlertmanagerStatus.dhall ├── ArbitraryFSAccessThroughSMsConfig.dhall ├── BasicAuth.dhall ├── EmbeddedObjectMetadata.dhall ├── EmbeddedPersistentVolumeClaim.dhall ├── Endpoint.dhall ├── HTTPConfig.dhall ├── InhibitRule.dhall ├── Matcher.dhall ├── NamespaceSelector.dhall ├── OpsGenieConfig.dhall ├── OpsGenieConfigDetail.dhall ├── OpsGenieConfigResponder.dhall ├── PagerDutyConfig.dhall ├── PagerDutyConfigDetail.dhall ├── PodMetricsEndpoint.dhall ├── PodMonitor.dhall ├── PodMonitorList.dhall ├── PodMonitorSpec.dhall ├── Probe.dhall ├── ProbeList.dhall ├── ProbeSpec.dhall ├── ProbeTargetIngress.dhall ├── ProbeTargetStaticConfig.dhall ├── ProbeTargets.dhall ├── ProberSpec.dhall ├── Prometheus.dhall ├── PrometheusList.dhall ├── PrometheusRule.dhall ├── PrometheusRuleExcludeConfig.dhall ├── PrometheusRuleList.dhall ├── PrometheusRuleSpec.dhall ├── PrometheusSpec.dhall ├── PrometheusStatus.dhall ├── QuerySpec.dhall ├── QueueConfig.dhall ├── Receiver.dhall ├── RelabelConfig.dhall ├── RemoteReadSpec.dhall ├── RemoteWriteSpec.dhall ├── Route.dhall ├── Rule.dhall ├── RuleGroup.dhall ├── Rules.dhall ├── RulesAlert.dhall ├── SafeTLSConfig.dhall ├── SecretOrConfigMap.dhall ├── ServiceMonitor.dhall ├── ServiceMonitorList.dhall ├── ServiceMonitorSpec.dhall ├── StorageSpec.dhall ├── TLSConfig.dhall ├── ThanosRuler.dhall ├── ThanosRulerList.dhall ├── ThanosRulerSpec.dhall ├── ThanosRulerStatus.dhall ├── ThanosSpec.dhall ├── WeChatConfig.dhall ├── WebhookConfig.dhall ├── package.dhall └── schemas.dhall /.envrc: -------------------------------------------------------------------------------- 1 | eval "$(lorri direnv)" -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @ari-becker @oded-dd @ShauliSolomovich 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2019 Coralogix, Inc. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # dhall-prometheus-operator 2 | [![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme) 3 | 4 | > Dhall types for Kubernetes Prometheus Operator 5 | 6 | This repository includes types, default records, and functions that produce default records in the [Dhall language](https://github.com/dhall-lang/dhall-lang) which model the Prometheus Operator API domain. They are based off the [Prometheus Operator documentation reference](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md). 7 | 8 | This allows the user to more easily generate type-safe Kubernetes resources for Prometheus/Alertmanager, through the use of the Dhall project's `dhall-to-yaml` tool. 9 | 10 | ### Note 11 | This project relies upon resources provided by the [`dhall-kubernetes`](https://github.com/dhall-lang/dhall-kubernetes) project. However, as these resources are imported directly from `raw.githubusercontent.com`, they do not need to be manually installed. 12 | 13 | ## Install 14 | For stability, users are encouraged to import from a tagged release, not from the master branch, and to watch for new releases. This project does not yet have rigorous testing set up for it and new commits on the master branch are prone to break compatibility and are almost sure to change the import hash for the expression. 15 | ``` 16 | https://raw.githubusercontent.com/coralogix/dhall-prometheus-operator/v8.0.0/package.dhall sha256:ebc5f0c5f57d410412c2b7cbb64d0883be648eafc094f0c3e10dba4e6bd46ed4 17 | ``` 18 | 19 | ## Example Usage 20 | ### Example ServiceMonitor 21 | ```dhall 22 | let Kubernetes = https://raw.githubusercontent.com/dhall-lang/dhall-kubernetes/v6.0.0/package.dhall sha256:532e110f424ea8a9f960a13b2ca54779ddcac5d5aa531f86d82f41f8f18d7ef1 23 | 24 | let PrometheusOperator = (https://raw.githubusercontent.com/coralogix/dhall-prometheus-operator/v8.0.0/package.dhall sha256:ebc5f0c5f57d410412c2b7cbb64d0883be648eafc094f0c3e10dba4e6bd46ed4).v1 25 | 26 | in PrometheusOperator.ServiceMonitor::{ 27 | , metadata = 28 | Kubernetes.ObjectMeta::{ name = Some "example" } 29 | , spec = 30 | PrometheusOperator.ServiceMonitorSpec::{ 31 | , selector = 32 | Kubernetes.LabelSelector::{ 33 | , matchLabels = Some 34 | (toMap { app = "example" }) 35 | } 36 | , endpoints = 37 | Some [ PrometheusOperator.Endpoint.Union.TargetPort 38 | PrometheusOperator.Endpoint.TargetPort::{ 39 | , targetPort = Kubernetes.NatOrString.String "example" 40 | , interval = Some "60s" 41 | , scrapeTimeout = Some "40s" 42 | } 43 | ] 44 | , namespaceSelector = 45 | Some 46 | ( PrometheusOperator.NamespaceSelector.Any { any = True } 47 | ) 48 | } 49 | } 50 | ``` 51 | 52 | ## Maintainers 53 | [Ari Becker](https://github.com/ari-becker) 54 | [Oded David](https://github.com/oded-dd) 55 | [Shauli Solomovich](https://github.com/ShauliSolomovich) 56 | 57 | ## Contributing 58 | TBD 59 | 60 | ## License 61 | [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0) © Coralogix, Inc. 62 | -------------------------------------------------------------------------------- /imports.dhall: -------------------------------------------------------------------------------- 1 | { Kubernetes = 2 | https://raw.githubusercontent.com/dhall-lang/dhall-kubernetes/v7.0.0/package.dhall sha256:705f7bd1c157c5544143ab5917bdc3972fe941300ce4189a8ea89e6ddd9c1875 3 | ? https://raw.githubusercontent.com/dhall-lang/dhall-kubernetes/v7.0.0/package.dhall 4 | , Prelude = 5 | https://raw.githubusercontent.com/dhall-lang/dhall-lang/v17.0.0/Prelude/package.dhall sha256:10db3c919c25e9046833df897a8ffe2701dc390fa0893d958c3430524be5a43e 6 | ? https://raw.githubusercontent.com/dhall-lang/dhall-lang/v17.0.0/Prelude/package.dhall 7 | } 8 | -------------------------------------------------------------------------------- /package.dhall: -------------------------------------------------------------------------------- 1 | { v1 = 2 | ./v1/package.dhall sha256:1443b1a580900147c97cea725c197652e26ca766bb8f785f468e0f3019545276 3 | ? ./v1/package.dhall 4 | } 5 | -------------------------------------------------------------------------------- /refreeze.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -euo pipefail 4 | 5 | echo '[INFO][dhall-types-env][refreeze.sh] Refreezing...' 6 | deepest_level=$(find . -name 'package.dhall' | sed 's/[^\/]//g' | awk '{ print length }' | sort | tail -n 1) 7 | for depth in $(seq "${deepest_level}" -1 1) ; do 8 | while IFS= read -r -d '' package_dhall ; do 9 | echo "[INFO][dhall-types-env][refreeze.sh] Freezing: ${package_dhall} ..." 10 | dhall freeze --cache --all --inplace "${package_dhall}" 11 | done < <(find . -mindepth "${depth}" -maxdepth "${depth}" -name 'package.dhall' -print0) 12 | done 13 | echo '[INFO][dhall-types-env][refreeze.sh] Finished refreezing successfully!' 14 | -------------------------------------------------------------------------------- /shell.nix: -------------------------------------------------------------------------------- 1 | let 2 | nixpkgs = import ( 3 | let 4 | version = "0c960262d159d3a884dadc3d4e4b131557dad116"; 5 | in builtins.fetchTarball { 6 | name = "nixpkgs-${version}"; 7 | url = "https://github.com/NixOS/nixpkgs/archive/${version}.tar.gz"; 8 | sha256 = "0d7ms4dxbxvd6f8zrgymr6njvka54fppph1mrjjlcan7y0dhi5rb"; 9 | } 10 | ) {}; 11 | 12 | # broken on OS X - using easy-dhall-nix as a workaround 13 | /* 14 | dhall-haskell = import ( 15 | let 16 | version = "1.32.0"; 17 | in nixpkgs.fetchFromGitHub { 18 | owner = "dhall-lang"; 19 | repo = "dhall-haskell"; 20 | rev = version; 21 | fetchSubmodules = true; 22 | sha256 = "1qn6d1lsw5aky9s5g9v77l1khnl12g2ihj8q865x33d7k4gnrxqd"; 23 | } 24 | ); 25 | */ 26 | 27 | easy-dhall-nix = import ( 28 | let 29 | version = "1.32.0"; 30 | in nixpkgs.fetchFromGitHub { 31 | owner = "justinwoo"; 32 | repo = "easy-dhall-nix"; 33 | rev = "62f6ab3eec5a2c0bf62f604f48cd15465b10023a"; 34 | sha256 = "07lvvc3yvjy6ji3z320f467n485hzwwa9ldwi6zylxcb6a2jb7i0"; 35 | } 36 | ) {}; 37 | 38 | in nixpkgs.mkShell { 39 | buildInputs = [ 40 | # broken on OS X - using easy-dhall-nix as a workaround 41 | /* 42 | dhall-haskell.dhall 43 | dhall-haskell.dhall-yaml 44 | */ 45 | easy-dhall-nix.dhall-simple 46 | easy-dhall-nix.dhall-json-simple 47 | easy-dhall-nix.dhall-yaml-simple 48 | ]; 49 | } 50 | -------------------------------------------------------------------------------- /v1/APIServerConfig.dhall: -------------------------------------------------------------------------------- 1 | let BasicAuth = 2 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 3 | ? ./BasicAuth.dhall 4 | 5 | let TLSConfig = 6 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 7 | ? ./TLSConfig.dhall 8 | 9 | let Common = { host : Text, tlsConfig : Optional TLSConfig.Type } 10 | 11 | let BasicAuth = Common ⩓ { basicAuth : Optional BasicAuth.Type } 12 | 13 | let BearerToken = Common ⩓ { bearerToken : Optional Text } 14 | 15 | let BearerTokenFile = Common ⩓ { bearerTokenFile : Optional Text } 16 | 17 | let common = { tlsConfig = None TLSConfig.Type } 18 | 19 | let APIServerConfig = 20 | { Type = 21 | < BasicAuth : BasicAuth 22 | | BearerToken : BearerToken 23 | | BearerTokenFile : BearerTokenFile 24 | > 25 | , BasicAuth = { Type = BasicAuth, default = common } 26 | , BearerToken = { Type = BearerToken, default = common } 27 | , BearerTokenFile = { Type = BearerTokenFile, default = common } 28 | } 29 | 30 | let test = 31 | let Kubernetes = 32 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 33 | ? ../imports.dhall 34 | ).Kubernetes 35 | 36 | let BasicAuth = 37 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 38 | ? ./BasicAuth.dhall 39 | 40 | in { basicAuth = 41 | APIServerConfig.Type.BasicAuth 42 | APIServerConfig.BasicAuth::{ 43 | , host = "example.com" 44 | , basicAuth = Some BasicAuth::{ 45 | , username = Kubernetes.SecretKeySelector::{ 46 | , key = "example-username-key" 47 | } 48 | , password = Kubernetes.SecretKeySelector::{ 49 | , key = "example-password-key" 50 | } 51 | } 52 | } 53 | , bearerToken = 54 | APIServerConfig.Type.BearerToken 55 | APIServerConfig.BearerToken::{ 56 | , host = "example.com" 57 | , bearerToken = Some "example" 58 | } 59 | , bearerTokenFile = 60 | APIServerConfig.Type.BearerTokenFile 61 | APIServerConfig.BearerTokenFile::{ 62 | , host = "example.com" 63 | , bearerTokenFile = Some "path/to/example" 64 | } 65 | } 66 | 67 | in APIServerConfig 68 | -------------------------------------------------------------------------------- /v1/AlertingSpec.dhall: -------------------------------------------------------------------------------- 1 | let AlertmanagerEndpoints = 2 | ./AlertmanagerEndpoints.dhall sha256:d628edd8a1930362f586470a5bf141bf0286e69deb463ff12cae53a34f1f3747 3 | ? ./AlertmanagerEndpoints.dhall 4 | 5 | let AlertingSpec = 6 | { Type = { alertmanagers : Optional (List AlertmanagerEndpoints.Type) } 7 | , default.alertmanagers = None (List AlertmanagerEndpoints.Type) 8 | } 9 | 10 | let test = AlertingSpec::{=} 11 | 12 | in AlertingSpec 13 | -------------------------------------------------------------------------------- /v1/Alertmanager.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let AlertmanagerSpec = 8 | ./AlertmanagerSpec.dhall sha256:f39005803d189f9c7867e4bc88f5fd8e698c0141410505e961bbe132ab7c1ba9 9 | ? ./AlertmanagerSpec.dhall 10 | 11 | let AlertmanagerStatus = 12 | ./AlertmanagerStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 13 | ? ./AlertmanagerStatus.dhall 14 | 15 | in { Type = 16 | { apiVersion : Text 17 | , kind : Text 18 | , metadata : Kubernetes.ObjectMeta.Type 19 | , spec : AlertmanagerSpec.Type 20 | , status : Optional AlertmanagerStatus.Type 21 | } 22 | , default = 23 | { apiVersion = "monitoring.coreos.com/v1" 24 | , kind = "Alertmanager" 25 | , status = None AlertmanagerStatus.Type 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /v1/AlertmanagerConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let AlertmanagerConfigSpec = 8 | ./AlertmanagerConfigSpec.dhall sha256:b9487178302a27b6ff8aa47180cd23c9be20471436fe8981dceb8be28e4d09da 9 | ? ./AlertmanagerConfigSpec.dhall 10 | 11 | let Generator = 12 | λ(ConfigSpec : Type) → 13 | { Type = 14 | { apiVersion : Text 15 | , kind : Text 16 | , metadata : Optional Kubernetes.ObjectMeta.Type 17 | , spec : ConfigSpec 18 | } 19 | , default = 20 | { apiVersion = "monitoring.coreos.com/v1" 21 | , kind = "AlertmanagerConfig" 22 | , metadata = None Kubernetes.ObjectMeta.Type 23 | } 24 | } 25 | 26 | let test = 27 | (Generator AlertmanagerConfigSpec.Simple.Type)::{ 28 | , spec = AlertmanagerConfigSpec.Simple::{=} 29 | } 30 | 31 | let Simple = Generator AlertmanagerConfigSpec.Simple.Type 32 | 33 | in { Generator, Simple } 34 | -------------------------------------------------------------------------------- /v1/AlertmanagerConfigList.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let AlertmanagerConfigSpec = 8 | ./AlertmanagerConfigSpec.dhall sha256:b9487178302a27b6ff8aa47180cd23c9be20471436fe8981dceb8be28e4d09da 9 | ? ./AlertmanagerConfigSpec.dhall 10 | 11 | let Generator = 12 | λ(ConfigSpec : Type) → 13 | { Type = 14 | { apiVersion : Text 15 | , kind : Text 16 | , metadata : Optional Kubernetes.ObjectMeta.Type 17 | , items : List ConfigSpec 18 | } 19 | , default = 20 | { apiVersion = "monitoring.coreos.com/v1" 21 | , kind = "AlertmanagerConfigList" 22 | , metadata = None Kubernetes.ObjectMeta.Type 23 | } 24 | } 25 | 26 | let test = 27 | let AlertmanagerConfigSpec = 28 | ./AlertmanagerConfigSpec.dhall sha256:b9487178302a27b6ff8aa47180cd23c9be20471436fe8981dceb8be28e4d09da 29 | ? ./AlertmanagerConfigSpec.dhall 30 | 31 | in (Generator AlertmanagerConfigSpec.Simple.Type)::{ 32 | , items = [] : List AlertmanagerConfigSpec.Simple.Type 33 | } 34 | 35 | let Simple = Generator AlertmanagerConfigSpec.Simple.Type 36 | 37 | in { Generator, Simple } 38 | -------------------------------------------------------------------------------- /v1/AlertmanagerConfigSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let Receiver = 8 | ./Receiver.dhall sha256:10acdd3e184cf84e1fa59db34d56fe926c9d661ac4a1b39adf4eabffcdb90564 9 | ? ./Receiver.dhall 10 | 11 | let InhibitRule = 12 | ./InhibitRule.dhall sha256:a2c058aaf87549e02bf31cdd9cb1d45e386faffc98c53a6fc964a64f894c758c 13 | ? ./InhibitRule.dhall 14 | 15 | let Generator = 16 | λ(Route : Type) → 17 | { Type = 18 | { route : Optional Route 19 | , receivers : Optional (List Receiver.Type) 20 | , inhibitRules : Optional (List InhibitRule.Type) 21 | } 22 | , default = 23 | { route = None Route 24 | , receivers = None (List Receiver.Type) 25 | , inhibitRules = None (List InhibitRule.Type) 26 | } 27 | } 28 | 29 | let test = (Generator <>)::{=} 30 | 31 | let Simple = 32 | let Route = 33 | ./Route.dhall sha256:07329d1a72d3e3a3410cf74e7295b095a20cbf2c21da9a5b60f907300590914d 34 | ? ./Route.dhall 35 | 36 | let SimpleRootRoute = Route.Root 37 | 38 | in Generator SimpleRootRoute.Type 39 | 40 | in { Generator, Simple } 41 | -------------------------------------------------------------------------------- /v1/AlertmanagerEndpoints.dhall: -------------------------------------------------------------------------------- 1 | let NatOrString = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes.NatOrString 5 | 6 | let TLSConfig = 7 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 8 | ? ./TLSConfig.dhall 9 | 10 | in { Type = 11 | { namespace : Text 12 | , name : Text 13 | , port : NatOrString 14 | , scheme : Optional Text 15 | , pathPrefix : Optional Text 16 | , tlsConfig : Optional TLSConfig.Type 17 | , bearerTokenFile : Optional Text 18 | , apiVersion : Optional Text 19 | } 20 | , default = 21 | { scheme = None Text 22 | , pathPrefix = None Text 23 | , tlsConfig = None TLSConfig.Type 24 | , bearerTokenFile = None Text 25 | , apiVersion = None Text 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /v1/AlertmanagerList.dhall: -------------------------------------------------------------------------------- 1 | let ListMeta = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes.ListMeta.Type 5 | 6 | let Alertmanager = 7 | ./Alertmanager.dhall sha256:009ca2c566ca0d356b2ac37a79a14fe0e26b19870d02f7ebe7a436189e14098b 8 | ? ./Alertmanager.dhall 9 | 10 | let AlertmanagerList = 11 | { Type = 12 | { apiVersion : Text 13 | , kind : Text 14 | , metadata : Optional ListMeta 15 | , items : Optional (List Alertmanager.Type) 16 | } 17 | , default = 18 | { apiVersion = "monitoring.coreos.com/v1" 19 | , kind = "AlertmanagerList" 20 | , metadata = None ListMeta 21 | , items = None (List Alertmanager.Type) 22 | } 23 | } 24 | 25 | let test = AlertmanagerList::{=} 26 | 27 | in AlertmanagerList 28 | -------------------------------------------------------------------------------- /v1/AlertmanagerSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | let Kubernetes = imports.Kubernetes 8 | 9 | let StorageSpec = 10 | ./StorageSpec.dhall sha256:e73aa9d82a6b493998a99576bd22a60d658cde4d61a862ead79268450a58df55 11 | ? ./StorageSpec.dhall 12 | 13 | let EmbeddedObjectMetadata = 14 | ./EmbeddedObjectMetadata.dhall sha256:5a9eb9672ed429bd9d7e9aa333c30aef5c8e44ade302895f8af57f286248c8fa 15 | ? ./EmbeddedObjectMetadata.dhall 16 | 17 | let AlertmanagerSpec = 18 | { Type = 19 | { podMetadata : Optional EmbeddedObjectMetadata.Type 20 | , image : Optional Text 21 | , version : Optional Text 22 | , imagePullSecrets : 23 | Optional (List Kubernetes.LocalObjectReference.Type) 24 | , secrets : Optional (List Text) 25 | , configMaps : Optional (List Text) 26 | , configSecret : Optional Text 27 | , logLevel : Optional Text 28 | , logFormat : Optional Text 29 | , replicas : Optional Natural 30 | , retention : Optional Text 31 | , storage : Optional StorageSpec.Type 32 | , volumes : Optional (List Kubernetes.Volume.Type) 33 | , volumeMounts : Optional (List Kubernetes.VolumeMount.Type) 34 | , externalUrl : Optional Text 35 | , routePrefix : Optional Text 36 | , paused : Optional Bool 37 | , nodeSelector : Optional (Map Text Text) 38 | , resources : Optional Kubernetes.ResourceRequirements.Type 39 | , affinity : Optional Kubernetes.Affinity.Type 40 | , tolerations : Optional (List Kubernetes.Toleration.Type) 41 | , securityContext : Optional Kubernetes.PodSecurityContext.Type 42 | , serviceAccountName : Optional Text 43 | , listenLocal : Optional Bool 44 | , containers : Optional (List Kubernetes.Container.Type) 45 | , initContainers : Optional (List Kubernetes.Container.Type) 46 | , priorityClassName : Optional Text 47 | , additionalPeers : Optional (List Text) 48 | , clusterAdvertiseAddress : Optional Text 49 | , portName : Optional Text 50 | , alertmanagerConfigSelector : Optional Kubernetes.LabelSelector.Type 51 | , alertmanagerConfigNamespaceSelector : 52 | Optional Kubernetes.LabelSelector.Type 53 | } 54 | , default = 55 | { podMetadata = None EmbeddedObjectMetadata.Type 56 | , image = None Text 57 | , version = None Text 58 | , imagePullSecrets = None (List Kubernetes.LocalObjectReference.Type) 59 | , secrets = None (List Text) 60 | , configMaps = None (List Text) 61 | , configSecret = None Text 62 | , logLevel = None Text 63 | , logFormat = None Text 64 | , replicas = None Natural 65 | , retention = None Text 66 | , storage = None StorageSpec.Type 67 | , volumes = None (List Kubernetes.Volume.Type) 68 | , volumeMounts = None (List Kubernetes.VolumeMount.Type) 69 | , externalUrl = None Text 70 | , routePrefix = None Text 71 | , paused = None Bool 72 | , nodeSelector = None (Map Text Text) 73 | , resources = None Kubernetes.ResourceRequirements.Type 74 | , affinity = None Kubernetes.Affinity.Type 75 | , tolerations = None (List Kubernetes.Toleration.Type) 76 | , securityContext = None Kubernetes.PodSecurityContext.Type 77 | , serviceAccountName = None Text 78 | , listenLocal = None Bool 79 | , containers = None (List Kubernetes.Container.Type) 80 | , initContainers = None (List Kubernetes.Container.Type) 81 | , priorityClassName = None Text 82 | , additionalPeers = None (List Text) 83 | , clusterAdvertiseAddress = None Text 84 | , portName = None Text 85 | , alertmanagerConfigSelector = None Kubernetes.LabelSelector.Type 86 | , alertmanagerConfigNamespaceSelector = 87 | None Kubernetes.LabelSelector.Type 88 | } 89 | } 90 | 91 | let test = AlertmanagerSpec::{=} 92 | 93 | in AlertmanagerSpec 94 | -------------------------------------------------------------------------------- /v1/AlertmanagerStatus.dhall: -------------------------------------------------------------------------------- 1 | { Type = 2 | { paused : Bool 3 | , replicas : Natural 4 | , updatedReplicas : Natural 5 | , availableReplicas : Natural 6 | , unavailableReplicas : Natural 7 | } 8 | , default = {=} 9 | } 10 | -------------------------------------------------------------------------------- /v1/ArbitraryFSAccessThroughSMsConfig.dhall: -------------------------------------------------------------------------------- 1 | { Type = { deny : Optional Bool }, default.deny = None Bool } 2 | -------------------------------------------------------------------------------- /v1/BasicAuth.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let BasicAuth = 7 | { Type = 8 | { username : Kubernetes.SecretKeySelector.Type 9 | , password : Kubernetes.SecretKeySelector.Type 10 | } 11 | , default = {=} 12 | } 13 | 14 | let test = 15 | BasicAuth::{ 16 | , username = Kubernetes.SecretKeySelector::{ 17 | , key = "example-username-key" 18 | } 19 | , password = Kubernetes.SecretKeySelector::{ 20 | , key = "example-password-key" 21 | } 22 | } 23 | 24 | in BasicAuth 25 | -------------------------------------------------------------------------------- /v1/EmbeddedObjectMetadata.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | in { Type = 8 | { name : Optional Text 9 | , labels : Optional (Map Text Text) 10 | , annotations : Optional (Map Text Text) 11 | } 12 | , default = 13 | { name = None Text 14 | , labels = None (Map Text Text) 15 | , annotations = None (Map Text Text) 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v1/EmbeddedPersistentVolumeClaim.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let EmbeddedObjectMetadata = 7 | ./EmbeddedObjectMetadata.dhall sha256:5a9eb9672ed429bd9d7e9aa333c30aef5c8e44ade302895f8af57f286248c8fa 8 | ? ./EmbeddedObjectMetadata.dhall 9 | 10 | in { Type = 11 | { metadata : Optional EmbeddedObjectMetadata.Type 12 | , spec : Optional Kubernetes.PersistentVolumeClaimSpec.Type 13 | , status : Optional Kubernetes.PersistentVolumeClaimStatus.Type 14 | } 15 | , default = 16 | { metadata = None EmbeddedObjectMetadata.Type 17 | , spec = None Kubernetes.PersistentVolumeClaimSpec.Type 18 | , status = None Kubernetes.PersistentVolumeClaimStatus.Type 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /v1/Endpoint.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | let Kubernetes = imports.Kubernetes 8 | 9 | let BasicAuth = 10 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 11 | ? ./BasicAuth.dhall 12 | 13 | let RelabelConfig = 14 | ./RelabelConfig.dhall sha256:55536331ee4787f7a5063964fbfbc3d903903deae1ccf49365211e35764361fb 15 | ? ./RelabelConfig.dhall 16 | 17 | let TLSConfig = 18 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 19 | ? ./TLSConfig.dhall 20 | 21 | let Common = 22 | { path : Optional Text 23 | , scheme : Optional Text 24 | , params : Optional (Map Text (List Text)) 25 | , interval : Optional Text 26 | , scrapeTimeout : Optional Text 27 | , tlsConfig : Optional TLSConfig.Type 28 | , bearerTokenFile : Optional Text 29 | , bearerTokenSecret : Optional Kubernetes.SecretKeySelector.Type 30 | , honorLabels : Optional Bool 31 | , honorTimestamps : Optional Bool 32 | , basicAuth : Optional BasicAuth.Type 33 | , metricRelabelings : Optional (List RelabelConfig.Type) 34 | , relabelings : Optional (List RelabelConfig.Type) 35 | , proxyUrl : Optional Text 36 | } 37 | : Type 38 | 39 | let common = 40 | { path = None Text 41 | , scheme = None Text 42 | , params = None (Map Text (List Text)) 43 | , interval = None Text 44 | , scrapeTimeout = None Text 45 | , tlsConfig = None TLSConfig.Type 46 | , bearerTokenFile = None Text 47 | , bearerTokenSecret = None Kubernetes.SecretKeySelector.Type 48 | , honorLabels = None Bool 49 | , honorTimestamps = None Bool 50 | , basicAuth = None BasicAuth.Type 51 | , metricRelabelings = None (List RelabelConfig.Type) 52 | , relabelings = None (List RelabelConfig.Type) 53 | , proxyUrl = None Text 54 | } 55 | 56 | let Port = Common ⩓ { port : Text } 57 | 58 | let TargetPort = Common ⩓ { targetPort : Kubernetes.NatOrString } 59 | 60 | let Endpoint = 61 | { Union = < Port : Port | TargetPort : TargetPort > 62 | , Port = { Type = Port, default = common } 63 | , TargetPort = { Type = TargetPort, default = common } 64 | } 65 | 66 | let test = 67 | { port = Endpoint.Union.Port Endpoint.Port::{ port = "example-port" } 68 | , targetPort = 69 | Endpoint.Union.TargetPort 70 | Endpoint.TargetPort::{ 71 | , targetPort = Kubernetes.NatOrString.Nat 8080 72 | } 73 | } 74 | 75 | in Endpoint 76 | -------------------------------------------------------------------------------- /v1/HTTPConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let BasicAuth = 8 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 9 | ? ./BasicAuth.dhall 10 | 11 | let SafeTLSConfig = 12 | ./SafeTLSConfig.dhall sha256:33847e3bc9669b8e4666acb3deed9cd271ef5f45d4bfe1b36f0f416b4442c39d 13 | ? ./SafeTLSConfig.dhall 14 | 15 | let HTTPConfig = 16 | { Type = 17 | { basicAuth : Optional BasicAuth.Type 18 | , bearerTokenSecret : Optional Kubernetes.SecretKeySelector.Type 19 | , tlsConfig : Optional SafeTLSConfig.Type 20 | , proxyURL : Optional Text 21 | } 22 | , default = 23 | { basicAuth = None BasicAuth.Type 24 | , bearerTokenSecret = None Kubernetes.SecretKeySelector.Type 25 | , tlsConfig = None SafeTLSConfig.Type 26 | , proxyURL = None Text 27 | } 28 | } 29 | 30 | in HTTPConfig 31 | -------------------------------------------------------------------------------- /v1/InhibitRule.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Matcher = 6 | ./Matcher.dhall sha256:c8519226bf49d086fafacdac890df38fb63e10921984abfd2787e78aa3d90f3c 7 | ? ./Matcher.dhall 8 | 9 | let InhibitRule = 10 | { Type = 11 | { targetMatch : Optional (List Matcher.Type) 12 | , sourceMatch : Optional (List Matcher.Type) 13 | , equal : Optional (List Text) 14 | } 15 | , default = 16 | { targetMatch = None (List Matcher.Type) 17 | , sourceMatch = None (List Matcher.Type) 18 | , equal = None (List Text) 19 | } 20 | } 21 | 22 | in InhibitRule 23 | -------------------------------------------------------------------------------- /v1/Matcher.dhall: -------------------------------------------------------------------------------- 1 | let Matcher = 2 | { Type = { name : Text, value : Text, regex : Optional Bool } 3 | , default.regex = None Bool 4 | } 5 | 6 | in Matcher 7 | -------------------------------------------------------------------------------- /v1/NamespaceSelector.dhall: -------------------------------------------------------------------------------- 1 | let NamespaceSelector = 2 | < Any : { any : Bool } | MatchNames : { matchNames : List Text } > 3 | 4 | let test = 5 | { any = NamespaceSelector.Any { any = True } 6 | , matchNames = 7 | NamespaceSelector.MatchNames { matchNames = [ "example-name" ] } 8 | } 9 | 10 | in NamespaceSelector 11 | -------------------------------------------------------------------------------- /v1/OpsGenieConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let BasicAuth = 8 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 9 | ? ./BasicAuth.dhall 10 | 11 | let HTTPConfig = 12 | ./HTTPConfig.dhall sha256:b33237d271ba53c43ad70ee79463355d929ee65040d413c0f15ef3e3071af17f 13 | ? ./HTTPConfig.dhall 14 | 15 | let OpsGenieConfigDetail = 16 | ./OpsGenieConfigDetail.dhall sha256:9bb842a44771c837f8f1d7a39c837ff7821ff436f4b198bdfcce0a681dc08b2e 17 | ? ./OpsGenieConfigDetail.dhall 18 | 19 | let OpsGenieConfigResponder = 20 | ./OpsGenieConfigResponder.dhall sha256:49d9e33fa13b200230a0f65b12ff4fcbe5675b4cf5dbaf9b64d9797899300587 21 | ? ./OpsGenieConfigResponder.dhall 22 | 23 | let OpsGenieConfig = 24 | { Type = 25 | { sendResolved : Optional Bool 26 | , apiKey : Optional Kubernetes.SecretKeySelector.Type 27 | , apiURL : Optional Text 28 | , message : Optional Text 29 | , description : Optional Text 30 | , source : Optional Text 31 | , tags : Optional Text 32 | , note : Optional Text 33 | , priority : Optional Text 34 | , details : Optional (List OpsGenieConfigDetail.Type) 35 | , responders : Optional (List OpsGenieConfigResponder.Type) 36 | , httpConfig : Optional HTTPConfig.Type 37 | } 38 | , default = 39 | { sendResolved = None Bool 40 | , apiKey = None Kubernetes.SecretKeySelector.Type 41 | , apiURL = None Text 42 | , message = None Text 43 | , description = None Text 44 | , source = None Text 45 | , tags = None Text 46 | , note = None Text 47 | , priority = None Text 48 | , details = None (List OpsGenieConfigDetail.Type) 49 | , responders = None (List OpsGenieConfigResponder.Type) 50 | , httpConfig = None HTTPConfig.Type 51 | } 52 | } 53 | 54 | in OpsGenieConfig 55 | -------------------------------------------------------------------------------- /v1/OpsGenieConfigDetail.dhall: -------------------------------------------------------------------------------- 1 | let OpsGenieConfigDetail = 2 | { Type = { key : Text, value : Text }, default = {=} } 3 | 4 | in OpsGenieConfigDetail 5 | -------------------------------------------------------------------------------- /v1/OpsGenieConfigResponder.dhall: -------------------------------------------------------------------------------- 1 | let OpsGenieConfigResponder = 2 | { Type = 3 | { id : Optional Text 4 | , name : Optional Text 5 | , username : Optional Text 6 | , type : Optional Text 7 | } 8 | , default = 9 | { id = None Text 10 | , name = None Text 11 | , username = None Text 12 | , type = None Text 13 | } 14 | } 15 | 16 | in OpsGenieConfigResponder 17 | -------------------------------------------------------------------------------- /v1/PagerDutyConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let HTTPConfig = 8 | ./HTTPConfig.dhall sha256:b33237d271ba53c43ad70ee79463355d929ee65040d413c0f15ef3e3071af17f 9 | ? ./HTTPConfig.dhall 10 | 11 | let PagerDutyConfigDetail = 12 | ./PagerDutyConfigDetail.dhall sha256:9bb842a44771c837f8f1d7a39c837ff7821ff436f4b198bdfcce0a681dc08b2e 13 | ? ./PagerDutyConfigDetail.dhall 14 | 15 | let PagerDutyConfig = 16 | { Type = 17 | { sendResolved : Optional Bool 18 | , routingKey : Optional Kubernetes.SecretKeySelector.Type 19 | , serviceKey : Optional Kubernetes.SecretKeySelector.Type 20 | , url : Optional Text 21 | , client : Optional Text 22 | , clientURL : Optional Text 23 | , description : Optional Text 24 | , severity : Optional Text 25 | , class : Optional Text 26 | , group : Optional Text 27 | , component : Optional Text 28 | , details : Optional (List PagerDutyConfigDetail.Type) 29 | , httpConfig : Optional HTTPConfig.Type 30 | } 31 | , default = 32 | { sendResolved = None Bool 33 | , routingKey = None Kubernetes.SecretKeySelector.Type 34 | , serviceKey = None Kubernetes.SecretKeySelector.Type 35 | , url = None Text 36 | , client = None Text 37 | , clientURL = None Text 38 | , description = None Text 39 | , severity = None Text 40 | , class = None Text 41 | , group = None Text 42 | , component = None Text 43 | , details = None (List PagerDutyConfigDetail.Type) 44 | , httpConfig = None HTTPConfig.Type 45 | } 46 | } 47 | 48 | in PagerDutyConfig 49 | -------------------------------------------------------------------------------- /v1/PagerDutyConfigDetail.dhall: -------------------------------------------------------------------------------- 1 | let PagerDutyConfigDetail = 2 | { Type = { key : Text, value : Text }, default = {=} } 3 | 4 | in PagerDutyConfigDetail 5 | -------------------------------------------------------------------------------- /v1/PodMetricsEndpoint.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let Prelude = imports.Prelude 8 | 9 | let RelabelConfig = 10 | ( ./RelabelConfig.dhall sha256:55536331ee4787f7a5063964fbfbc3d903903deae1ccf49365211e35764361fb 11 | ? ./RelabelConfig.dhall 12 | ).Type 13 | 14 | in { Type = 15 | { port : Optional Text 16 | , targetPort : Optional Kubernetes.NatOrString 17 | , path : Optional Text 18 | , scheme : Optional Text 19 | , params : Optional (Prelude.Map.Type Text Text) 20 | , interval : Optional Text 21 | , scrapeTimeout : Optional Text 22 | , honorLabels : Optional Bool 23 | , honorTimestamps : Optional Bool 24 | , metricRelabelings : Optional (List RelabelConfig) 25 | , relabelings : Optional (List RelabelConfig) 26 | , proxyUrl : Optional Text 27 | } 28 | , default = 29 | { port = None Text 30 | , targetPort = None Kubernetes.NatOrString 31 | , path = None Text 32 | , scheme = None Text 33 | , params = None (Prelude.Map.Type Text Text) 34 | , interval = None Text 35 | , scrapeTimeout = None Text 36 | , honorLabels = None Bool 37 | , honorTimestamps = None Bool 38 | , metricRelabelings = None (List RelabelConfig) 39 | , relabelings = None (List RelabelConfig) 40 | , proxyUrl = None Text 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /v1/PodMonitor.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let PodMonitorSpec = 7 | ./PodMonitorSpec.dhall sha256:0d27ac2419e5075e24c99593a9eebd5a751c17e13a7a1c34520215648e33d04e 8 | ? ./PodMonitorSpec.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ObjectMeta.Type 14 | , spec : PodMonitorSpec.Type 15 | } 16 | , default = { apiVersion = "monitoring.coreos.com/v1", kind = "PodMonitor" } 17 | } 18 | -------------------------------------------------------------------------------- /v1/PodMonitorList.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let PodMonitor = 7 | ./PodMonitor.dhall sha256:8694053f14ea9534f2cd36b0f6f9244a8d59297f68e12f28ef260b411e4e992a 8 | ? ./PodMonitor.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ListMeta.Type 14 | , items : Optional (List PodMonitor.Type) 15 | } 16 | , default = 17 | { apiVersion = "monitoring.coreos.com/v1", kind = "PodMonitorList" } 18 | } 19 | -------------------------------------------------------------------------------- /v1/PodMonitorSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let PodMetricsEndpoint = 8 | ./PodMetricsEndpoint.dhall sha256:645afdb97a53570df548a6ce3153f8ba855f3e92d7f2186ee871b809188b6b77 9 | ? ./PodMetricsEndpoint.dhall 10 | 11 | let NamespaceSelector = 12 | ./NamespaceSelector.dhall sha256:22a8b9f1fb7f20831916ede9b6426f6dbf7c44a1499ccd54e78e9c9c3638988a 13 | ? ./NamespaceSelector.dhall 14 | 15 | in { Type = 16 | { jobLabel : Optional Text 17 | , podTargetLabels : Optional (List Text) 18 | , podMetricsEndpoints : Optional (List PodMetricsEndpoint.Type) 19 | , selector : Kubernetes.LabelSelector.Type 20 | , namespaceSelector : Optional NamespaceSelector 21 | , sampleLimit : Optional Natural 22 | } 23 | , default = 24 | { jobLabel = None Text 25 | , podTargetLabels = None (List Text) 26 | , namespaceSelector = None NamespaceSelector 27 | , sampleLimit = None Natural 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /v1/Probe.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let ProbeSpec = 7 | ./ProbeSpec.dhall sha256:8acd59f1430e2d0f784d364d7d64bf5646dad139f8cb4bd8c5810b22ee447381 8 | ? ./ProbeSpec.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ObjectMeta.Type 14 | , spec : ProbeSpec.Type 15 | } 16 | , default = { apiVersion = "monitoring.coreos.com/v1", kind = "Probe" } 17 | } 18 | -------------------------------------------------------------------------------- /v1/ProbeList.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let Probe = 7 | ./Probe.dhall sha256:a6caef579f87c5a4746de44abaf6ed11cab900136c9bd046106625be5cb7f5dc 8 | ? ./Probe.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ListMeta.Type 14 | , items : Optional (List Probe.Type) 15 | } 16 | , default = { apiVersion = "monitoring.coreos.com/v1", kind = "ProbeList" } 17 | } 18 | -------------------------------------------------------------------------------- /v1/ProbeSpec.dhall: -------------------------------------------------------------------------------- 1 | let ProberSpec = 2 | ./ProberSpec.dhall sha256:12aa19e0e0a2a32ed6e8f609df1071e5348d539e9d7374dcde15b35a0f13900b 3 | ? ./ProberSpec.dhall 4 | 5 | let ProbeTargets = 6 | ./ProbeTargets.dhall sha256:67308c3bc5d8d8f140746e0e9cf49ff9fb341b1100a536a2c54adb02b922b80e 7 | ? ./ProbeTargets.dhall 8 | 9 | in { Type = 10 | { jobName : Optional Text 11 | , prober : Optional ProberSpec.Type 12 | , module : Optional Text 13 | , targets : Optional ProbeTargets.Type 14 | , interval : Optional Text 15 | , scrapeTimeout : Optional Text 16 | } 17 | , default = 18 | { jobName = None Text 19 | , prober = None ProberSpec.Type 20 | , module = None Text 21 | , targets = None ProbeTargets.Type 22 | , interval = None Text 23 | , scrapeTimeout = None Text 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /v1/ProbeTargetIngress.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let NamespaceSelector = 8 | ./NamespaceSelector.dhall sha256:22a8b9f1fb7f20831916ede9b6426f6dbf7c44a1499ccd54e78e9c9c3638988a 9 | ? ./NamespaceSelector.dhall 10 | 11 | let RelabelConfig = 12 | ./RelabelConfig.dhall sha256:55536331ee4787f7a5063964fbfbc3d903903deae1ccf49365211e35764361fb 13 | ? ./RelabelConfig.dhall 14 | 15 | in { Type = 16 | { selector : Optional Kubernetes.LabelSelector.Type 17 | , namespaceSelector : Optional NamespaceSelector 18 | , relabelingConfigs : Optional (List RelabelConfig.Type) 19 | } 20 | , default = 21 | { selector = None Kubernetes.LabelSelector.Type 22 | , namespaceSelector = None NamespaceSelector 23 | , relabelingConfigs = None (List RelabelConfig.Type) 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /v1/ProbeTargetStaticConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | in { Type = 8 | { static : Optional (List Text), labels : Optional (Map Text Text) } 9 | , default = { static = None (List Text), labels = None (Map Text Text) } 10 | } 11 | -------------------------------------------------------------------------------- /v1/ProbeTargets.dhall: -------------------------------------------------------------------------------- 1 | let ProbeTargetStaticConfig = 2 | ./ProbeTargetStaticConfig.dhall sha256:4951044922978b45e6bfa05197dd2a67bb53d015b24e7cf8361490c460288c65 3 | ? ./ProbeTargetStaticConfig.dhall 4 | 5 | let ProbeTargetIngress = 6 | ./ProbeTargetIngress.dhall sha256:be2190ff7e7497c870bf343a1bd48c32c5d6aa804c8a12338d5900c7e702ac5b 7 | ? ./ProbeTargetIngress.dhall 8 | 9 | in { Type = 10 | { staticConfig : Optional ProbeTargetStaticConfig.Type 11 | , ingress : Optional ProbeTargetIngress.Type 12 | } 13 | , default = 14 | { staticConfig = None ProbeTargetStaticConfig.Type 15 | , ingress = None ProbeTargetIngress.Type 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /v1/ProberSpec.dhall: -------------------------------------------------------------------------------- 1 | { Type = { url : Text, scheme : Optional Text, path : Optional Text } 2 | , default = { scheme = None Text, path = None Text } 3 | } 4 | -------------------------------------------------------------------------------- /v1/Prometheus.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let PrometheusSpec = 8 | ./PrometheusSpec.dhall sha256:57cf9741ed49b0fc5be376bf1c1e72f5fed3828aafef0b53415adc078a4e71dc 9 | ? ./PrometheusSpec.dhall 10 | 11 | let PrometheusStatus = 12 | ./PrometheusStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 13 | ? ./PrometheusStatus.dhall 14 | 15 | in { Type = 16 | { apiVersion : Text 17 | , kind : Text 18 | , metadata : Kubernetes.ObjectMeta.Type 19 | , spec : PrometheusSpec.Type 20 | , status : Optional PrometheusStatus.Type 21 | } 22 | , default = 23 | { apiVersion = "monitoring.coreos.com/v1" 24 | , kind = "Prometheus" 25 | , status = None PrometheusStatus.Type 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /v1/PrometheusList.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let Prometheus = 7 | ./Prometheus.dhall sha256:d06554a7113406b22d168e2c083bf61b7faebcdad774f68ccb98d30b3300f049 8 | ? ./Prometheus.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ListMeta.Type 14 | , items : Optional (List Prometheus.Type) 15 | } 16 | , default = 17 | { apiVersion = "monitoring.coreos.com/v1", kind = "PrometheusList" } 18 | } 19 | -------------------------------------------------------------------------------- /v1/PrometheusRule.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let PrometheusRuleSpec = 8 | ./PrometheusRuleSpec.dhall sha256:eaa770c9ecb0f1614c3d9cd4cefaa9af77c24fc23fb52beca7aac5f0af04e970 9 | ? ./PrometheusRuleSpec.dhall 10 | 11 | in { Type = 12 | { apiVersion : Text 13 | , kind : Text 14 | , metadata : Kubernetes.ObjectMeta.Type 15 | , spec : PrometheusRuleSpec.Type 16 | } 17 | , default = 18 | { apiVersion = "monitoring.coreos.com/v1", kind = "PrometheusRule" } 19 | } 20 | -------------------------------------------------------------------------------- /v1/PrometheusRuleExcludeConfig.dhall: -------------------------------------------------------------------------------- 1 | { Type = { ruleNamespace : Text, ruleName : Text }, default = {=} } 2 | -------------------------------------------------------------------------------- /v1/PrometheusRuleList.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let PrometheusRule = 7 | ./PrometheusRule.dhall sha256:e7a5c48703ab955510176b2b5fa77e16b96a53fe174c5c58f04352eab83e7e0d 8 | ? ./PrometheusRule.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ListMeta.Type 14 | , items : Optional (List PrometheusRule.Type) 15 | } 16 | , default = 17 | { apiVersion = "monitoring.coreos.com/v1", kind = "PrometheusRuleList" } 18 | } 19 | -------------------------------------------------------------------------------- /v1/PrometheusRuleSpec.dhall: -------------------------------------------------------------------------------- 1 | let RuleGroup = 2 | ./RuleGroup.dhall sha256:da9e7a14f1ec8a5693267c70cb779d3131e96719bfbf04d446471f513ee1be85 3 | ? ./RuleGroup.dhall 4 | 5 | let PrometheusRuleSpec = 6 | { Type = { groups : List RuleGroup.Type } 7 | , default.groups = [] : List RuleGroup.Type 8 | } 9 | 10 | let test = PrometheusRuleSpec::{=} 11 | 12 | in PrometheusRuleSpec 13 | -------------------------------------------------------------------------------- /v1/PrometheusSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | let Kubernetes = imports.Kubernetes 8 | 9 | let AlertingSpec = 10 | ./AlertingSpec.dhall sha256:a86110361968bdc46d818901a3f5c832fe7fa6cc91f7444074430e25e4202e61 11 | ? ./AlertingSpec.dhall 12 | 13 | let APIServerConfig = 14 | ./APIServerConfig.dhall sha256:26445538bef8b140e36b52b2915466053d7eabdbde9a744a58ec874fef1f1f98 15 | ? ./APIServerConfig.dhall 16 | 17 | let ArbitraryFSAccessThroughSMsConfig = 18 | ./ArbitraryFSAccessThroughSMsConfig.dhall sha256:5da9e232ecba3823ce2f918148b8ba813e795426f795f227f198aac9225d62d7 19 | ? ./ArbitraryFSAccessThroughSMsConfig.dhall 20 | 21 | let QuerySpec = 22 | ./QuerySpec.dhall sha256:39089f4d09e138ff2883540f94e981a1565834c4e4d01cfdcd9c5bbeff8aaa0b 23 | ? ./QuerySpec.dhall 24 | 25 | let RemoteWriteSpec = 26 | ./RemoteWriteSpec.dhall sha256:797023d62e5fa639422d54014397f5062fb2b9e369cf258fe9d891bb946e054f 27 | ? ./RemoteWriteSpec.dhall 28 | 29 | let RemoteReadSpec = 30 | ./RemoteReadSpec.dhall sha256:35f9b0d4d222bae5cc8f4a9fff22b56e69f29c191a9176242a68b10b3c873b09 31 | ? ./RemoteReadSpec.dhall 32 | 33 | let Rules = 34 | ./Rules.dhall sha256:52e8a85f28b05b9d6b9c2bf99da75e10ab6199bc09af7c1c1a8c8b3c98edd918 35 | ? ./Rules.dhall 36 | 37 | let StorageSpec = 38 | ./StorageSpec.dhall sha256:e73aa9d82a6b493998a99576bd22a60d658cde4d61a862ead79268450a58df55 39 | ? ./StorageSpec.dhall 40 | 41 | let ThanosSpec = 42 | ./ThanosSpec.dhall sha256:c9e26e61bf4bab7ed01c9b2de1a09d2a2323a5dfbc20669f68c1b4271166308c 43 | ? ./ThanosSpec.dhall 44 | 45 | let PrometheusRuleExcludeConfig = 46 | ./PrometheusRuleExcludeConfig.dhall sha256:9de82d0ac332d06b3cca9e96dee8208689bd3e0281f5f807361d4a72109fca18 47 | ? ./PrometheusRuleExcludeConfig.dhall 48 | 49 | let EmbeddedObjectMetadata = 50 | ./EmbeddedObjectMetadata.dhall sha256:5a9eb9672ed429bd9d7e9aa333c30aef5c8e44ade302895f8af57f286248c8fa 51 | ? ./EmbeddedObjectMetadata.dhall 52 | 53 | in { Type = 54 | { podMetadata : Optional EmbeddedObjectMetadata.Type 55 | , serviceMonitorSelector : Optional Kubernetes.LabelSelector.Type 56 | , serviceMonitorNamespaceSelector : 57 | Optional Kubernetes.LabelSelector.Type 58 | , podMonitorSelector : Optional Kubernetes.LabelSelector.Type 59 | , podMonitorNamespaceSelector : Optional Kubernetes.LabelSelector.Type 60 | , probeSelector : Optional Kubernetes.LabelSelector.Type 61 | , probeNamespaceSelector : Optional Kubernetes.LabelSelector.Type 62 | , version : Optional Text 63 | , paused : Optional Bool 64 | , image : Optional Text 65 | , imagePullSecrets : 66 | Optional (List Kubernetes.LocalObjectReference.Type) 67 | , replicas : Optional Natural 68 | , replicaExternalLabelName : Optional Text 69 | , prometheusExternalLabelName : Optional Text 70 | , retention : Optional Text 71 | , retentionSize : Optional Text 72 | , disableCompaction : Optional Bool 73 | , walCompression : Optional Bool 74 | , logLevel : Optional Text 75 | , logFormat : Optional Text 76 | , scrapeInterval : Optional Text 77 | , scrapeTimeout : Optional Text 78 | , evaluationInterval : Optional Text 79 | , rules : Optional Rules.Type 80 | , externalLabels : Optional (Map Text Text) 81 | , enableAdminAPI : Optional Bool 82 | , externalUrl : Optional Text 83 | , routePrefix : Optional Text 84 | , query : Optional QuerySpec.Type 85 | , storage : Optional StorageSpec.Type 86 | , volumes : Optional (List Kubernetes.Volume.Type) 87 | , volumeMounts : Optional (List Kubernetes.VolumeMount.Type) 88 | , ruleSelector : Optional Kubernetes.LabelSelector.Type 89 | , ruleNamespaceSelector : Optional Kubernetes.LabelSelector.Type 90 | , alerting : Optional AlertingSpec.Type 91 | , resources : Optional Kubernetes.ResourceRequirements.Type 92 | , nodeSelector : Optional (Map Text Text) 93 | , serviceAccountName : Optional Text 94 | , secrets : Optional (List Text) 95 | , configMaps : Optional (List Text) 96 | , affinity : Optional Kubernetes.Affinity.Type 97 | , tolerations : Optional (List Kubernetes.Toleration.Type) 98 | , remoteWrite : Optional (List RemoteWriteSpec.Type) 99 | , remoteRead : Optional (List RemoteReadSpec.Type) 100 | , securityContext : Optional Kubernetes.PodSecurityContext.Type 101 | , listenLocal : Optional Bool 102 | , containers : Optional (List Kubernetes.Container.Type) 103 | , initContainers : Optional (List Kubernetes.Container.Type) 104 | , additionalScrapeConfigs : Optional Kubernetes.SecretKeySelector.Type 105 | , additionalAlertRelabelConfigs : 106 | Optional Kubernetes.SecretKeySelector.Type 107 | , additionalAlertManagerConfigs : 108 | Optional Kubernetes.SecretKeySelector.Type 109 | , apiserverConfig : Optional APIServerConfig.Type 110 | , thanos : Optional ThanosSpec.Type 111 | , priorityClassName : Optional Text 112 | , portName : Optional Text 113 | , arbitraryFSAccessThroughSMs : 114 | Optional ArbitraryFSAccessThroughSMsConfig.Type 115 | , overrideHonorLabels : Optional Bool 116 | , overrideHonorTimestamps : Optional Bool 117 | , ignoreNamespaceSelectors : Optional Bool 118 | , enforcedNamespaceLabel : Optional Text 119 | , prometheusRulesExcludedFromEnforce : 120 | Optional (List PrometheusRuleExcludeConfig.Type) 121 | , queryLogFile : Optional Text 122 | , enforcedSampleLimit : Optional Natural 123 | , allowOverlappingBlocks : Optional Bool 124 | } 125 | , default = 126 | { podMetadata = None EmbeddedObjectMetadata.Type 127 | , serviceMonitorSelector = None Kubernetes.LabelSelector.Type 128 | , serviceMonitorNamespaceSelector = None Kubernetes.LabelSelector.Type 129 | , podMonitorSelector = None Kubernetes.LabelSelector.Type 130 | , podMonitorNamespaceSelector = None Kubernetes.LabelSelector.Type 131 | , probeSelector = None Kubernetes.LabelSelector.Type 132 | , probeNamespaceSelector = None Kubernetes.LabelSelector.Type 133 | , version = None Text 134 | , paused = None Bool 135 | , image = None Text 136 | , imagePullSecrets = None (List Kubernetes.LocalObjectReference.Type) 137 | , replicas = None Natural 138 | , replicaExternalLabelName = None Text 139 | , prometheusExternalLabelName = None Text 140 | , retention = None Text 141 | , retentionSize = None Text 142 | , disableCompaction = None Bool 143 | , walCompression = None Bool 144 | , logLevel = None Text 145 | , logFormat = None Text 146 | , scrapeInterval = None Text 147 | , scrapeTimeout = None Text 148 | , evaluationInterval = None Text 149 | , rules = None Rules.Type 150 | , externalLabels = None (Map Text Text) 151 | , enableAdminAPI = None Bool 152 | , externalUrl = None Text 153 | , routePrefix = None Text 154 | , query = None QuerySpec.Type 155 | , storage = None StorageSpec.Type 156 | , volumes = None (List Kubernetes.Volume.Type) 157 | , volumeMounts = None (List Kubernetes.VolumeMount.Type) 158 | , ruleSelector = None Kubernetes.LabelSelector.Type 159 | , ruleNamespaceSelector = None Kubernetes.LabelSelector.Type 160 | , alerting = None AlertingSpec.Type 161 | , resources = None Kubernetes.ResourceRequirements.Type 162 | , nodeSelector = None (Map Text Text) 163 | , serviceAccountName = None Text 164 | , secrets = None (List Text) 165 | , configMaps = None (List Text) 166 | , affinity = None Kubernetes.Affinity.Type 167 | , tolerations = None (List Kubernetes.Toleration.Type) 168 | , remoteWrite = None (List RemoteWriteSpec.Type) 169 | , remoteRead = None (List RemoteReadSpec.Type) 170 | , securityContext = None Kubernetes.PodSecurityContext.Type 171 | , listenLocal = None Bool 172 | , containers = None (List Kubernetes.Container.Type) 173 | , initContainers = None (List Kubernetes.Container.Type) 174 | , additionalScrapeConfigs = None Kubernetes.SecretKeySelector.Type 175 | , additionalAlertRelabelConfigs = None Kubernetes.SecretKeySelector.Type 176 | , additionalAlertManagerConfigs = None Kubernetes.SecretKeySelector.Type 177 | , apiserverConfig = None APIServerConfig.Type 178 | , thanos = None ThanosSpec.Type 179 | , priorityClassName = None Text 180 | , portName = None Text 181 | , arbitraryFSAccessThroughSMs = 182 | None ArbitraryFSAccessThroughSMsConfig.Type 183 | , overrideHonorLabels = None Bool 184 | , overrideHonorTimestamps = None Bool 185 | , ignoreNamespaceSelectors = None Bool 186 | , enforcedNamespaceLabel = None Text 187 | , prometheusRulesExcludedFromEnforce = 188 | None (List PrometheusRuleExcludeConfig.Type) 189 | , queryLogFile = None Text 190 | , enforcedSampleLimit = None Natural 191 | , allowOverlappingBlocks = None Bool 192 | } 193 | } 194 | -------------------------------------------------------------------------------- /v1/PrometheusStatus.dhall: -------------------------------------------------------------------------------- 1 | { Type = 2 | { paused : Bool 3 | , replicas : Natural 4 | , updatedReplicas : Natural 5 | , availableReplicas : Natural 6 | , unavailableReplicas : Natural 7 | } 8 | , default = {=} 9 | } 10 | -------------------------------------------------------------------------------- /v1/QuerySpec.dhall: -------------------------------------------------------------------------------- 1 | let QuerySpec = 2 | { Type = 3 | { lookbackDelta : Optional Text 4 | , maxConcurrency : Optional Natural 5 | , timeout : Optional Text 6 | , maxSamples : Optional Natural 7 | } 8 | , default = 9 | { lookbackDelta = None Text 10 | , maxConcurrency = None Natural 11 | , timeout = None Text 12 | , maxSamples = None Natural 13 | } 14 | } 15 | 16 | let test = QuerySpec::{=} 17 | 18 | in QuerySpec 19 | -------------------------------------------------------------------------------- /v1/QueueConfig.dhall: -------------------------------------------------------------------------------- 1 | let QueueConfig = 2 | { Type = 3 | { capacity : Optional Natural 4 | , minShards : Optional Natural 5 | , maxShards : Optional Natural 6 | , maxSamplesPerSend : Optional Natural 7 | , batchSendDeadline : Optional Text 8 | , maxRetries : Optional Natural 9 | , minBackoff : Optional Text 10 | , maxBackoff : Optional Text 11 | } 12 | , default = 13 | { capacity = None Natural 14 | , minShards = None Natural 15 | , maxShards = None Natural 16 | , maxSamplesPerSend = None Natural 17 | , batchSendDeadline = None Text 18 | , maxRetries = None Natural 19 | , minBackoff = None Text 20 | , maxBackoff = None Text 21 | } 22 | } 23 | 24 | let test = QueueConfig::{=} 25 | 26 | in QueueConfig 27 | -------------------------------------------------------------------------------- /v1/Receiver.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let OpsGenieConfig = 6 | ./OpsGenieConfig.dhall sha256:84b0d36296b8dadd9eee814be280e7f594fa35679153cedfad52212edd9a64af 7 | ? ./OpsGenieConfig.dhall 8 | 9 | let PagerDutyConfig = 10 | ./PagerDutyConfig.dhall sha256:3cdffab07520af478c569df8ea1f5ebba3961c9a050f050fb1b981def67a689c 11 | ? ./PagerDutyConfig.dhall 12 | 13 | let WebhookConfig = 14 | ./WebhookConfig.dhall sha256:6381e39d10d4bfa438ee66d2aa394795713b273593c786e7612f4aa441b038f3 15 | ? ./WebhookConfig.dhall 16 | 17 | let WeChatConfig = 18 | ./WeChatConfig.dhall sha256:943fb7fe1350e90d8d5af7d34c9177b9a3421ff47b680ea38514b839dca7e3db 19 | ? ./WeChatConfig.dhall 20 | 21 | let Receiver = 22 | { Type = 23 | { name : Text 24 | , opsgenieConfigs : Optional (List OpsGenieConfig.Type) 25 | , pagerDutyConfigs : Optional (List PagerDutyConfig.Type) 26 | , webhookConfigs : Optional (List WebhookConfig.Type) 27 | , weChatConfig : Optional (List WeChatConfig.Type) 28 | } 29 | , default = 30 | { opsgenieConfigs = None (List OpsGenieConfig.Type) 31 | , pagerDutyConfigs = None (List PagerDutyConfig.Type) 32 | , webhookConfigs = None (List WebhookConfig.Type) 33 | , weChatConfig = None (List WeChatConfig.Type) 34 | } 35 | } 36 | 37 | let test = Receiver::{ name = "receiver" } 38 | 39 | in Receiver 40 | -------------------------------------------------------------------------------- /v1/RelabelConfig.dhall: -------------------------------------------------------------------------------- 1 | let RelabelConfig = 2 | { Type = 3 | { action : Optional Text 4 | , modulus : Optional Natural 5 | , regex : Optional Text 6 | , replacement : Optional Text 7 | , separator : Optional Text 8 | , sourceLabels : Optional (List Text) 9 | , targetLabel : Optional Text 10 | } 11 | , default = 12 | { action = None Text 13 | , modulus = None Natural 14 | , regex = None Text 15 | , replacement = None Text 16 | , separator = None Text 17 | , sourceLabels = None (List Text) 18 | , targetLabel = None Text 19 | } 20 | } 21 | 22 | let test = RelabelConfig::{=} 23 | 24 | in RelabelConfig 25 | -------------------------------------------------------------------------------- /v1/RemoteReadSpec.dhall: -------------------------------------------------------------------------------- 1 | let Map = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Prelude.Map.Type 5 | 6 | let BasicAuth = 7 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 8 | ? ./BasicAuth.dhall 9 | 10 | let TLSConfig = 11 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 12 | ? ./TLSConfig.dhall 13 | 14 | let RemoteReadSpec = 15 | { Type = 16 | { url : Text 17 | , name : Optional Text 18 | , requiredMatchers : Optional (Map Text Text) 19 | , remoteTimeout : Optional Text 20 | , readRecent : Optional Bool 21 | , basicAuth : Optional BasicAuth.Type 22 | , bearerToken : Optional Text 23 | , bearerTokenFile : Optional Text 24 | , tlsConfig : Optional TLSConfig.Type 25 | , proxyUrl : Optional Text 26 | } 27 | , default = 28 | { name = None Text 29 | , requiredMatchers = None (Map Text Text) 30 | , remoteTimeout = None Text 31 | , readRecent = None Bool 32 | , basicAuth = None BasicAuth.Type 33 | , bearerToken = None Text 34 | , bearerTokenFile = None Text 35 | , tlsConfig = None TLSConfig.Type 36 | , proxyUrl = None Text 37 | } 38 | } 39 | 40 | let test = RemoteReadSpec::{ url = "example.com" } 41 | 42 | in RemoteReadSpec 43 | -------------------------------------------------------------------------------- /v1/RemoteWriteSpec.dhall: -------------------------------------------------------------------------------- 1 | let BasicAuth = 2 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 3 | ? ./BasicAuth.dhall 4 | 5 | let QueueConfig = 6 | ./QueueConfig.dhall sha256:b882b46979605ffd73945d3daba3f4fc507506968a78996d5332fba1f0fa2572 7 | ? ./QueueConfig.dhall 8 | 9 | let RelabelConfig = 10 | ./RelabelConfig.dhall sha256:55536331ee4787f7a5063964fbfbc3d903903deae1ccf49365211e35764361fb 11 | ? ./RelabelConfig.dhall 12 | 13 | let TLSConfig = 14 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 15 | ? ./TLSConfig.dhall 16 | 17 | let RemoteWriteSpec = 18 | { Type = 19 | { url : Text 20 | , name : Optional Text 21 | , remoteTimeout : Optional Text 22 | , writeRelabelConfigs : Optional (List RelabelConfig.Type) 23 | , basicAuth : Optional BasicAuth.Type 24 | , bearerToken : Optional Text 25 | , bearerTokenFile : Optional Text 26 | , tlsConfig : Optional TLSConfig.Type 27 | , proxyUrl : Optional Text 28 | , queueConfig : Optional QueueConfig.Type 29 | } 30 | , default = 31 | { name = None Text 32 | , remoteTimeout = None Text 33 | , writeRelabelConfigs = None (List RelabelConfig.Type) 34 | , basicAuth = None BasicAuth.Type 35 | , bearerToken = None Text 36 | , bearerTokenFile = None Text 37 | , tlsConfig = None TLSConfig.Type 38 | , proxyUrl = None Text 39 | , queueConfig = None QueueConfig.Type 40 | } 41 | } 42 | 43 | let test = RemoteWriteSpec::{ url = "example.com" } 44 | 45 | in RemoteWriteSpec 46 | -------------------------------------------------------------------------------- /v1/Route.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let Matcher = 8 | ./Matcher.dhall sha256:c8519226bf49d086fafacdac890df38fb63e10921984abfd2787e78aa3d90f3c 9 | ? ./Matcher.dhall 10 | 11 | let Generator = 12 | λ(RouteObject : Type) → 13 | { Type = 14 | { receiver : Optional Text 15 | , groupBy : Optional (List Text) 16 | , groupWait : Optional Text 17 | , groupInterval : Optional Text 18 | , repeatInterval : Optional Text 19 | , matchers : Optional (List Matcher.Type) 20 | , continue : Optional Bool 21 | , routes : Optional (List RouteObject) 22 | } 23 | , default = 24 | { receiver = None Text 25 | , groupBy = None (List Text) 26 | , groupWait = None Text 27 | , groupInterval = None Text 28 | , repeatInterval = None Text 29 | , matchers = None (List Matcher.Type) 30 | , continue = None Bool 31 | , routes = None (List RouteObject) 32 | } 33 | } 34 | 35 | let test = (Generator <>)::{=} 36 | 37 | let Child = Generator <> 38 | 39 | let Root = Generator Child.Type 40 | 41 | in { Generator, Child, Root } 42 | -------------------------------------------------------------------------------- /v1/Rule.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | let NatOrString = imports.Kubernetes.NatOrString 8 | 9 | let Rule = 10 | { Type = 11 | { record : Optional Text 12 | , alert : Optional Text 13 | , expr : NatOrString 14 | , for : Optional Text 15 | , labels : Optional (Map Text Text) 16 | , annotations : Optional (Map Text Text) 17 | } 18 | , default = 19 | { record = None Text 20 | , alert = None Text 21 | , for = None Text 22 | , labels = None (Map Text Text) 23 | , annotations = None (Map Text Text) 24 | } 25 | } 26 | 27 | let test = Rule::{ expr = NatOrString.String "example" } 28 | 29 | in Rule 30 | -------------------------------------------------------------------------------- /v1/RuleGroup.dhall: -------------------------------------------------------------------------------- 1 | let Rule = 2 | ./Rule.dhall sha256:5d4291e1a984d630d9be65ebeb758f35c352fec94e7f8d613d53c290479c712e 3 | ? ./Rule.dhall 4 | 5 | let RuleGroup = 6 | { Type = 7 | { name : Text 8 | , interval : Optional Text 9 | , rules : Optional (List Rule.Type) 10 | , partial_response_strategy : Optional Text 11 | } 12 | , default = 13 | { interval = None Text 14 | , rules = None (List Rule.Type) 15 | , partial_response_strategy = None Text 16 | } 17 | } 18 | 19 | let test = RuleGroup::{ name = "example" } 20 | 21 | in RuleGroup 22 | -------------------------------------------------------------------------------- /v1/Rules.dhall: -------------------------------------------------------------------------------- 1 | let RulesAlert = 2 | ./RulesAlert.dhall sha256:959e713d7b2ac190c99505ef5fd038ae280635b4cfa0b55271328ed67dd3b1b7 3 | ? ./RulesAlert.dhall 4 | 5 | let Rules = { Type = { alert : RulesAlert.Type }, default = {=} } 6 | 7 | let test = Rules::{ alert = RulesAlert::{=} } 8 | 9 | in Rules 10 | -------------------------------------------------------------------------------- /v1/RulesAlert.dhall: -------------------------------------------------------------------------------- 1 | let RulesAlert = 2 | { Type = 3 | { forOutageTolerance : Optional Text 4 | , forGracePeriod : Optional Text 5 | , resendDelay : Optional Text 6 | } 7 | , default = 8 | { forOutageTolerance = None Text 9 | , forGracePeriod = None Text 10 | , resendDelay = None Text 11 | } 12 | } 13 | 14 | let test = RulesAlert::{=} 15 | 16 | in RulesAlert 17 | -------------------------------------------------------------------------------- /v1/SafeTLSConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let SecretOrConfigMap = 8 | ./SecretOrConfigMap.dhall sha256:c9d8cdd7a4b7d926fca0e9b1b89a26cb59a694366d9a9479297929ce180df5f1 9 | ? ./SecretOrConfigMap.dhall 10 | 11 | let SafeTLSConfig = 12 | { Type = 13 | { ca : Optional SecretOrConfigMap.Type 14 | , cert : Optional SecretOrConfigMap.Type 15 | , keySecret : Optional Kubernetes.SecretKeySelector.Type 16 | , serverName : Optional Text 17 | , insecureSkipVerify : Optional Bool 18 | } 19 | , default = 20 | { ca = None SecretOrConfigMap.Type 21 | , cert = None SecretOrConfigMap.Type 22 | , keySecret = None Kubernetes.SecretKeySelector.Type 23 | , serverName = None Text 24 | , insecureSkipVerify = None Bool 25 | } 26 | } 27 | 28 | in SafeTLSConfig 29 | -------------------------------------------------------------------------------- /v1/SecretOrConfigMap.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let SecretOrConfigMap = 8 | < Secret : Kubernetes.SecretKeySelector.Type 9 | | ConfigMap : Kubernetes.ConfigMapKeySelector.Type 10 | > 11 | 12 | in { Type = SecretOrConfigMap 13 | , Secret = SecretOrConfigMap.Secret 14 | , ConfigMap = SecretOrConfigMap.ConfigMap 15 | } 16 | -------------------------------------------------------------------------------- /v1/ServiceMonitor.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let ServiceMonitorSpec = 8 | ./ServiceMonitorSpec.dhall sha256:ecb532588e3daf9b0aa13181e9a9feb7afd2578764ee4c21f83afbbd8d38cd20 9 | ? ./ServiceMonitorSpec.dhall 10 | 11 | in { Type = 12 | { apiVersion : Text 13 | , kind : Text 14 | , metadata : Kubernetes.ObjectMeta.Type 15 | , spec : ServiceMonitorSpec.Type 16 | } 17 | , default = 18 | { apiVersion = "monitoring.coreos.com/v1", kind = "ServiceMonitor" } 19 | } 20 | -------------------------------------------------------------------------------- /v1/ServiceMonitorList.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let ServiceMonitor = 7 | ./ServiceMonitor.dhall sha256:f0bee94fb4cffa7451a55571100c388542c65f86d99721aefe6026298d1958c7 8 | ? ./ServiceMonitor.dhall 9 | 10 | in { Type = 11 | { apiVersion : Text 12 | , kind : Text 13 | , metadata : Kubernetes.ListMeta.Type 14 | , items : Optional (List ServiceMonitor.Type) 15 | } 16 | , default = 17 | { apiVersion = "monitoring.coreos.com/v1" 18 | , kind = "ServiceMonitorList" 19 | , items = None (List ServiceMonitor.Type) 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /v1/ServiceMonitorSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let Endpoint = 8 | ./Endpoint.dhall sha256:a3a2c83c2e1d1eff489daf1b1a6f45507acfcf3c85e89e739f3b771597751744 9 | ? ./Endpoint.dhall 10 | 11 | let NamespaceSelector = 12 | ./NamespaceSelector.dhall sha256:22a8b9f1fb7f20831916ede9b6426f6dbf7c44a1499ccd54e78e9c9c3638988a 13 | ? ./NamespaceSelector.dhall 14 | 15 | in { Type = 16 | { jobLabel : Optional Text 17 | , targetLabels : Optional (List Text) 18 | , podTargetLabels : Optional (List Text) 19 | , endpoints : Optional (List Endpoint.Union) 20 | , selector : Kubernetes.LabelSelector.Type 21 | , namespaceSelector : Optional NamespaceSelector 22 | , sampleLimit : Optional Natural 23 | } 24 | , default = 25 | { jobLabel = None Text 26 | , targetLabels = None (List Text) 27 | , podTargetLabels = None (List Text) 28 | , endpoints = None (List Endpoint.Union) 29 | , namespaceSelector = None NamespaceSelector 30 | , sampleLimit = None Natural 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /v1/StorageSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let EmbeddedPersistentVolumeClaim = 8 | ./EmbeddedPersistentVolumeClaim.dhall sha256:b43d5e1c1a395aea5e59ed84fbd7e9e5162f1aef3bf8755f45823363ede4daa3 9 | ? ./EmbeddedPersistentVolumeClaim.dhall 10 | 11 | let Common = { disableMountSubPath : Optional Bool } 12 | 13 | let EmptyDir = 14 | Common ⩓ { emptyDir : Optional Kubernetes.EmptyDirVolumeSource.Type } 15 | 16 | let VolumeClaimTemplate = 17 | Common 18 | ⩓ { volumeClaimTemplate : Optional EmbeddedPersistentVolumeClaim.Type } 19 | 20 | let common = { disableMountSubPath = None Bool } 21 | 22 | let StorageSpec = 23 | { Type = 24 | < EmptyDir : EmptyDir | VolumeClaimTemplate : VolumeClaimTemplate > 25 | , EmptyDir = { Type = EmptyDir, default = common } 26 | , VolumeClaimTemplate = { Type = VolumeClaimTemplate, default = common } 27 | } 28 | 29 | let test = 30 | let Kubernetes = 31 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 32 | ? ../imports.dhall 33 | ).Kubernetes 34 | 35 | let EmbeddedPersistentVolumeClaim = 36 | ./EmbeddedPersistentVolumeClaim.dhall sha256:b43d5e1c1a395aea5e59ed84fbd7e9e5162f1aef3bf8755f45823363ede4daa3 37 | ? ./EmbeddedPersistentVolumeClaim.dhall 38 | 39 | in { emptyDir = 40 | StorageSpec.Type.EmptyDir 41 | StorageSpec.EmptyDir::{ 42 | , disableMountSubPath = Some True 43 | , emptyDir = Some Kubernetes.EmptyDirVolumeSource::{=} 44 | } 45 | , volumeClaimTemplate = 46 | StorageSpec.Type.VolumeClaimTemplate 47 | StorageSpec.VolumeClaimTemplate::{ 48 | , disableMountSubPath = Some True 49 | , volumeClaimTemplate = Some EmbeddedPersistentVolumeClaim::{=} 50 | } 51 | } 52 | 53 | in StorageSpec 54 | -------------------------------------------------------------------------------- /v1/TLSConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let SecretOrConfigMap = 8 | ./SecretOrConfigMap.dhall sha256:c9d8cdd7a4b7d926fca0e9b1b89a26cb59a694366d9a9479297929ce180df5f1 9 | ? ./SecretOrConfigMap.dhall 10 | 11 | let TLSConfig = 12 | { Type = 13 | { caFile : Optional Text 14 | , ca : Optional SecretOrConfigMap.Type 15 | , certFile : Optional Text 16 | , cert : Optional SecretOrConfigMap.Type 17 | , keyFile : Optional Text 18 | , keySecret : Optional Kubernetes.SecretKeySelector.Type 19 | , serverName : Optional Text 20 | , insecureSkipVerify : Optional Bool 21 | } 22 | , default = 23 | { caFile = None Text 24 | , ca = None SecretOrConfigMap.Type 25 | , certFile = None Text 26 | , cert = None SecretOrConfigMap.Type 27 | , keyFile = None Text 28 | , keySecret = None Kubernetes.SecretKeySelector.Type 29 | , serverName = None Text 30 | , insecureSkipVerify = None Bool 31 | } 32 | } 33 | 34 | let test = TLSConfig::{=} 35 | 36 | in TLSConfig 37 | -------------------------------------------------------------------------------- /v1/ThanosRuler.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let ThanosRulerSpec = 8 | ./ThanosRulerSpec.dhall sha256:757a26ba9bfc6fa27ff1ff11de20e637878069d7910af2e6390d9c86c6c82db8 9 | ? ./ThanosRulerSpec.dhall 10 | 11 | let ThanosRulerStatus = 12 | ./ThanosRulerStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 13 | ? ./ThanosRulerStatus.dhall 14 | 15 | in { Type = 16 | { apiVersion : Text 17 | , kind : Text 18 | , metadata : Kubernetes.ObjectMeta.Type 19 | , spec : ThanosRulerSpec.Type 20 | , status : Optional ThanosRulerStatus.Type 21 | } 22 | , default = 23 | { apiVersion = "monitoring.coreos.com/v1" 24 | , kind = "ThanosRuler" 25 | , status = None ThanosRulerStatus.Type 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /v1/ThanosRulerList.dhall: -------------------------------------------------------------------------------- 1 | let ListMeta = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes.ListMeta.Type 5 | 6 | let ThanosRuler = 7 | ./ThanosRuler.dhall sha256:a1862c8b05438a4255d5194500eeccecb3940a3b06a451ec9dd2882a3ccca335 8 | ? ./ThanosRuler.dhall 9 | 10 | let ThanosRulerList = 11 | { Type = 12 | { apiVersion : Text 13 | , kind : Text 14 | , metadata : Optional ListMeta 15 | , items : Optional (List ThanosRuler.Type) 16 | } 17 | , default = 18 | { apiVersion = "monitoring.coreos.com/v1" 19 | , kind = "ThanosRulerList" 20 | , metadata = None ListMeta 21 | , items = None (List ThanosRuler.Type) 22 | } 23 | } 24 | 25 | let test = ThanosRulerList::{=} 26 | 27 | in ThanosRulerList 28 | -------------------------------------------------------------------------------- /v1/ThanosRulerSpec.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Map = imports.Prelude.Map.Type 6 | 7 | let Kubernetes = imports.Kubernetes 8 | 9 | let StorageSpec = 10 | ./StorageSpec.dhall sha256:e73aa9d82a6b493998a99576bd22a60d658cde4d61a862ead79268450a58df55 11 | ? ./StorageSpec.dhall 12 | 13 | let EmbeddedObjectMetadata = 14 | ./EmbeddedObjectMetadata.dhall sha256:5a9eb9672ed429bd9d7e9aa333c30aef5c8e44ade302895f8af57f286248c8fa 15 | ? ./EmbeddedObjectMetadata.dhall 16 | 17 | let TLSConfig = 18 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 19 | ? ./TLSConfig.dhall 20 | 21 | let PrometheusRuleExcludeConfig = 22 | ./PrometheusRuleExcludeConfig.dhall sha256:9de82d0ac332d06b3cca9e96dee8208689bd3e0281f5f807361d4a72109fca18 23 | ? ./PrometheusRuleExcludeConfig.dhall 24 | 25 | let ThanosRulerSpec = 26 | { Type = 27 | { podMetadata : Optional EmbeddedObjectMetadata.Type 28 | , image : Optional Text 29 | , imagePullSecrets : 30 | Optional (List Kubernetes.LocalObjectReference.Type) 31 | , paused : Optional Bool 32 | , replicas : Optional Natural 33 | , nodeSelector : Optional (Map Text Text) 34 | , resources : Optional Kubernetes.ResourceRequirements.Type 35 | , affinity : Optional Kubernetes.Affinity.Type 36 | , tolerations : Optional (List Kubernetes.Toleration.Type) 37 | , securityContext : Optional Kubernetes.PodSecurityContext.Type 38 | , priorityClassName : Optional Text 39 | , serviceAccountName : Optional Text 40 | , storage : Optional StorageSpec.Type 41 | , volumes : Optional (List Kubernetes.Volume.Type) 42 | , objectStorageConfig : Optional Kubernetes.SecretKeySelector.Type 43 | , listenLocal : Optional Bool 44 | , queryEndpoints : Optional (List Text) 45 | , queryConfig : Optional Kubernetes.SecretKeySelector.Type 46 | , alertmanagersUrl : Optional (List Text) 47 | , alertmanagersConfig : Optional Kubernetes.SecretKeySelector.Type 48 | , ruleSelector : Optional Kubernetes.LabelSelector.Type 49 | , ruleNamespaceSelector : Optional Kubernetes.LabelSelector.Type 50 | , enforcedNamespaceLabel : Optional Text 51 | , prometheusRulesExcludedFromEnforce : 52 | Optional (List PrometheusRuleExcludeConfig.Type) 53 | , logLevel : Optional Text 54 | , logFormat : Optional Text 55 | , portName : Optional Text 56 | , evaluationInterval : Optional Text 57 | , retention : Optional Text 58 | , containers : Optional (List Kubernetes.Container.Type) 59 | , initContainers : Optional (List Kubernetes.Container.Type) 60 | , tracingConfig : Optional Kubernetes.SecretKeySelector.Type 61 | , labels : Optional (Map Text Text) 62 | , alertDropLabels : Optional (List Text) 63 | , externalPrefix : Optional Text 64 | , routePrefix : Optional Text 65 | , grpcServerTlsConfig : Optional TLSConfig.Type 66 | , alertQueryUrl : Optional Text 67 | } 68 | , default = 69 | { podMetadata = None EmbeddedObjectMetadata.Type 70 | , image = None Text 71 | , imagePullSecrets = None (List Kubernetes.LocalObjectReference.Type) 72 | , paused = None Bool 73 | , replicas = None Natural 74 | , nodeSelector = None (Map Text Text) 75 | , resources = None Kubernetes.ResourceRequirements.Type 76 | , affinity = None Kubernetes.Affinity.Type 77 | , tolerations = None (List Kubernetes.Toleration.Type) 78 | , securityContext = None Kubernetes.PodSecurityContext.Type 79 | , priorityClassName = None Text 80 | , storage = None StorageSpec.Type 81 | , serviceAccountName = None Text 82 | , volumes = None (List Kubernetes.Volume.Type) 83 | , objectStorageConfig = None Kubernetes.SecretKeySelector.Type 84 | , listenLocal = None Bool 85 | , queryEndpoints = None (List Text) 86 | , queryConfig = None Kubernetes.SecretKeySelector.Type 87 | , alertmanagersUrl = None (List Text) 88 | , alertmanagersConfig = None Kubernetes.SecretKeySelector.Type 89 | , ruleSelector = None Kubernetes.LabelSelector.Type 90 | , ruleNamespaceSelector = None Kubernetes.LabelSelector.Type 91 | , enforcedNamespaceLabel = None Text 92 | , prometheusRulesExcludedFromEnforce = 93 | None (List PrometheusRuleExcludeConfig.Type) 94 | , logLevel = None Text 95 | , logFormat = None Text 96 | , portName = None Text 97 | , evaluationInterval = None Text 98 | , retention = None Text 99 | , containers = None (List Kubernetes.Container.Type) 100 | , initContainers = None (List Kubernetes.Container.Type) 101 | , tracingConfig = None Kubernetes.SecretKeySelector.Type 102 | , labels = None (Map Text Text) 103 | , alertDropLabels = None (List Text) 104 | , externalPrefix = None Text 105 | , routePrefix = None Text 106 | , grpcServerTlsConfig = None TLSConfig.Type 107 | , alertQueryUrl = None Text 108 | } 109 | } 110 | 111 | let test = ThanosRulerSpec::{=} 112 | 113 | in ThanosRulerSpec 114 | -------------------------------------------------------------------------------- /v1/ThanosRulerStatus.dhall: -------------------------------------------------------------------------------- 1 | { Type = 2 | { paused : Bool 3 | , replicas : Natural 4 | , updatedReplicas : Natural 5 | , availableReplicas : Natural 6 | , unavailableReplicas : Natural 7 | } 8 | , default = {=} 9 | } 10 | -------------------------------------------------------------------------------- /v1/ThanosSpec.dhall: -------------------------------------------------------------------------------- 1 | let Kubernetes = 2 | ( ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | ).Kubernetes 5 | 6 | let TLSConfig = 7 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 8 | ? ./TLSConfig.dhall 9 | 10 | let ThanosSpec = 11 | { Type = 12 | { image : Optional Text 13 | , version : Optional Text 14 | , resources : Optional Kubernetes.ResourceRequirements.Type 15 | , objectStorageConfig : Optional Kubernetes.SecretKeySelector.Type 16 | , listenLocal : Optional Bool 17 | , tracingConfig : Optional Kubernetes.SecretKeySelector.Type 18 | , grpcServerTlsConfig : Optional TLSConfig.Type 19 | , logLevel : Optional Text 20 | , logFormat : Optional Text 21 | , minTime : Optional Text 22 | } 23 | , default = 24 | { image = None Text 25 | , version = None Text 26 | , resources = None Kubernetes.ResourceRequirements.Type 27 | , objectStorageConfig = None Kubernetes.SecretKeySelector.Type 28 | , listenLocal = None Bool 29 | , tracingConfig = None Kubernetes.SecretKeySelector.Type 30 | , grpcServerTlsConfig = None TLSConfig.Type 31 | , logLevel = None Text 32 | , logFormat = None Text 33 | , minTime = None Text 34 | } 35 | } 36 | 37 | let test = ThanosSpec::{=} 38 | 39 | in ThanosSpec 40 | -------------------------------------------------------------------------------- /v1/WeChatConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let HTTPConfig = 8 | ./HTTPConfig.dhall sha256:b33237d271ba53c43ad70ee79463355d929ee65040d413c0f15ef3e3071af17f 9 | ? ./HTTPConfig.dhall 10 | 11 | let WeChatConfig = 12 | { Type = 13 | { sendResolved : Optional Bool 14 | , apiSecret : Optional Kubernetes.SecretKeySelector.Type 15 | , apiURL : Optional Text 16 | , corpID : Optional Text 17 | , agentID : Optional Text 18 | , toUser : Optional Text 19 | , toParty : Optional Text 20 | , toTag : Optional Text 21 | , message : Optional Text 22 | , messageType : Optional Text 23 | , httpConfig : Optional HTTPConfig.Type 24 | } 25 | , default = 26 | { sendResolved = None Bool 27 | , apiSecret = None Kubernetes.SecretKeySelector.Type 28 | , apiURL = None Text 29 | , corpID = None Text 30 | , agentID = None Text 31 | , toUser = None Text 32 | , toParty = None Text 33 | , toTag = None Text 34 | , message = None Text 35 | , messageType = None Text 36 | , httpConfig = None HTTPConfig.Type 37 | } 38 | } 39 | 40 | in WeChatConfig 41 | -------------------------------------------------------------------------------- /v1/WebhookConfig.dhall: -------------------------------------------------------------------------------- 1 | let imports = 2 | ../imports.dhall sha256:e0de9b6a50d2dacac246762b205b7e0d2f279d6410d37a8c0602dfa167410b99 3 | ? ../imports.dhall 4 | 5 | let Kubernetes = imports.Kubernetes 6 | 7 | let HTTPConfig = 8 | ./HTTPConfig.dhall sha256:b33237d271ba53c43ad70ee79463355d929ee65040d413c0f15ef3e3071af17f 9 | ? ./HTTPConfig.dhall 10 | 11 | let WebhookConfig = 12 | { Type = 13 | { sendResolved : Optional Bool 14 | , url : Optional Text 15 | , urlSecret : Optional Kubernetes.SecretKeySelector.Type 16 | , httpConfig : Optional HTTPConfig.Type 17 | , maxAlerts : Optional Natural 18 | } 19 | , default = 20 | { sendResolved = None Bool 21 | , url = None Text 22 | , urlSecret = None Kubernetes.SecretKeySelector.Type 23 | , httpConfig = None HTTPConfig.Type 24 | , maxAlerts = None Natural 25 | } 26 | } 27 | 28 | in WebhookConfig 29 | -------------------------------------------------------------------------------- /v1/package.dhall: -------------------------------------------------------------------------------- 1 | { AlertingSpec = 2 | ./AlertingSpec.dhall sha256:a86110361968bdc46d818901a3f5c832fe7fa6cc91f7444074430e25e4202e61 3 | ? ./AlertingSpec.dhall 4 | , Alertmanager = 5 | ./Alertmanager.dhall sha256:009ca2c566ca0d356b2ac37a79a14fe0e26b19870d02f7ebe7a436189e14098b 6 | ? ./Alertmanager.dhall 7 | , AlertmanagerEndpoints = 8 | ./AlertmanagerEndpoints.dhall sha256:d628edd8a1930362f586470a5bf141bf0286e69deb463ff12cae53a34f1f3747 9 | ? ./AlertmanagerEndpoints.dhall 10 | , AlertmanagerList = 11 | ./AlertmanagerList.dhall sha256:22dcb8fafdc2306622e2ccd1120f51628678011bbe8567f1e86e3982d68392c5 12 | ? ./AlertmanagerList.dhall 13 | , AlertmanagerSpec = 14 | ./AlertmanagerSpec.dhall sha256:f39005803d189f9c7867e4bc88f5fd8e698c0141410505e961bbe132ab7c1ba9 15 | ? ./AlertmanagerSpec.dhall 16 | , AlertmanagerStatus = 17 | ./AlertmanagerStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 18 | ? ./AlertmanagerStatus.dhall 19 | , APIServerConfig = 20 | ./APIServerConfig.dhall sha256:26445538bef8b140e36b52b2915466053d7eabdbde9a744a58ec874fef1f1f98 21 | ? ./APIServerConfig.dhall 22 | , ArbitraryFSAccessThroughSMsConfig = 23 | ./ArbitraryFSAccessThroughSMsConfig.dhall sha256:5da9e232ecba3823ce2f918148b8ba813e795426f795f227f198aac9225d62d7 24 | ? ./ArbitraryFSAccessThroughSMsConfig.dhall 25 | , BasicAuth = 26 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 27 | ? ./BasicAuth.dhall 28 | , Endpoint = 29 | ./Endpoint.dhall sha256:a3a2c83c2e1d1eff489daf1b1a6f45507acfcf3c85e89e739f3b771597751744 30 | ? ./Endpoint.dhall 31 | , NamespaceSelector = 32 | ./NamespaceSelector.dhall sha256:22a8b9f1fb7f20831916ede9b6426f6dbf7c44a1499ccd54e78e9c9c3638988a 33 | ? ./NamespaceSelector.dhall 34 | , PodMetricsEndpoint = 35 | ./PodMetricsEndpoint.dhall sha256:645afdb97a53570df548a6ce3153f8ba855f3e92d7f2186ee871b809188b6b77 36 | ? ./PodMetricsEndpoint.dhall 37 | , PodMonitor = 38 | ./PodMonitor.dhall sha256:8694053f14ea9534f2cd36b0f6f9244a8d59297f68e12f28ef260b411e4e992a 39 | ? ./PodMonitor.dhall 40 | , PodMonitorList = 41 | ./PodMonitorList.dhall sha256:40a0c9c8d96a5e202eb052ab8be59b50cf5b753e38438fb3bf5cc10a84deb868 42 | ? ./PodMonitorList.dhall 43 | , PodMonitorSpec = 44 | ./PodMonitorSpec.dhall sha256:0d27ac2419e5075e24c99593a9eebd5a751c17e13a7a1c34520215648e33d04e 45 | ? ./PodMonitorSpec.dhall 46 | , Probe = 47 | ./Probe.dhall sha256:a6caef579f87c5a4746de44abaf6ed11cab900136c9bd046106625be5cb7f5dc 48 | ? ./Probe.dhall 49 | , ProbeList = 50 | ./ProbeList.dhall sha256:b8391bf35b849843ee6dc458b2a52050017b5a9c4f57271ca198f7e4c389e7e2 51 | ? ./ProbeList.dhall 52 | , ProbeSpec = 53 | ./ProbeSpec.dhall sha256:8acd59f1430e2d0f784d364d7d64bf5646dad139f8cb4bd8c5810b22ee447381 54 | ? ./ProbeSpec.dhall 55 | , ProbeTargetIngress = 56 | ./ProbeTargetIngress.dhall sha256:be2190ff7e7497c870bf343a1bd48c32c5d6aa804c8a12338d5900c7e702ac5b 57 | ? ./ProbeTargetIngress.dhall 58 | , ProbeTargetStaticConfig = 59 | ./ProbeTargetStaticConfig.dhall sha256:4951044922978b45e6bfa05197dd2a67bb53d015b24e7cf8361490c460288c65 60 | ? ./ProbeTargetStaticConfig.dhall 61 | , ProbeTargets = 62 | ./ProbeTargets.dhall sha256:67308c3bc5d8d8f140746e0e9cf49ff9fb341b1100a536a2c54adb02b922b80e 63 | ? ./ProbeTargets.dhall 64 | , ProberSpec = 65 | ./ProberSpec.dhall sha256:12aa19e0e0a2a32ed6e8f609df1071e5348d539e9d7374dcde15b35a0f13900b 66 | ? ./ProberSpec.dhall 67 | , Prometheus = 68 | ./Prometheus.dhall sha256:d06554a7113406b22d168e2c083bf61b7faebcdad774f68ccb98d30b3300f049 69 | ? ./Prometheus.dhall 70 | , PrometheusList = 71 | ./PrometheusList.dhall sha256:78617d41b4d12e90f55f7dfce64b39e37829fc96f778f6717c7690c0f75e21e9 72 | ? ./PrometheusList.dhall 73 | , PrometheusRule = 74 | ./PrometheusRule.dhall sha256:e7a5c48703ab955510176b2b5fa77e16b96a53fe174c5c58f04352eab83e7e0d 75 | ? ./PrometheusRule.dhall 76 | , PrometheusRuleList = 77 | ./PrometheusRuleList.dhall sha256:70d756873f9602684738c3deb75fe73f56d3414aed5a70805d15602543eaf4f9 78 | ? ./PrometheusRuleList.dhall 79 | , PrometheusRuleSpec = 80 | ./PrometheusRuleSpec.dhall sha256:eaa770c9ecb0f1614c3d9cd4cefaa9af77c24fc23fb52beca7aac5f0af04e970 81 | ? ./PrometheusRuleSpec.dhall 82 | , PrometheusSpec = 83 | ./PrometheusSpec.dhall sha256:57cf9741ed49b0fc5be376bf1c1e72f5fed3828aafef0b53415adc078a4e71dc 84 | ? ./PrometheusSpec.dhall 85 | , PrometheusStatus = 86 | ./PrometheusStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 87 | ? ./PrometheusStatus.dhall 88 | , QuerySpec = 89 | ./QuerySpec.dhall sha256:39089f4d09e138ff2883540f94e981a1565834c4e4d01cfdcd9c5bbeff8aaa0b 90 | ? ./QuerySpec.dhall 91 | , QueueConfig = 92 | ./QueueConfig.dhall sha256:b882b46979605ffd73945d3daba3f4fc507506968a78996d5332fba1f0fa2572 93 | ? ./QueueConfig.dhall 94 | , RelabelConfig = 95 | ./RelabelConfig.dhall sha256:55536331ee4787f7a5063964fbfbc3d903903deae1ccf49365211e35764361fb 96 | ? ./RelabelConfig.dhall 97 | , RemoteReadSpec = 98 | ./RemoteReadSpec.dhall sha256:35f9b0d4d222bae5cc8f4a9fff22b56e69f29c191a9176242a68b10b3c873b09 99 | ? ./RemoteReadSpec.dhall 100 | , RemoteWriteSpec = 101 | ./RemoteWriteSpec.dhall sha256:797023d62e5fa639422d54014397f5062fb2b9e369cf258fe9d891bb946e054f 102 | ? ./RemoteWriteSpec.dhall 103 | , Rule = 104 | ./Rule.dhall sha256:5d4291e1a984d630d9be65ebeb758f35c352fec94e7f8d613d53c290479c712e 105 | ? ./Rule.dhall 106 | , RuleGroup = 107 | ./RuleGroup.dhall sha256:da9e7a14f1ec8a5693267c70cb779d3131e96719bfbf04d446471f513ee1be85 108 | ? ./RuleGroup.dhall 109 | , Rules = 110 | ./Rules.dhall sha256:52e8a85f28b05b9d6b9c2bf99da75e10ab6199bc09af7c1c1a8c8b3c98edd918 111 | ? ./Rules.dhall 112 | , RulesAlert = 113 | ./RulesAlert.dhall sha256:959e713d7b2ac190c99505ef5fd038ae280635b4cfa0b55271328ed67dd3b1b7 114 | ? ./RulesAlert.dhall 115 | , SecretOrConfigMap = 116 | ./SecretOrConfigMap.dhall sha256:c9d8cdd7a4b7d926fca0e9b1b89a26cb59a694366d9a9479297929ce180df5f1 117 | ? ./SecretOrConfigMap.dhall 118 | , ServiceMonitor = 119 | ./ServiceMonitor.dhall sha256:f0bee94fb4cffa7451a55571100c388542c65f86d99721aefe6026298d1958c7 120 | ? ./ServiceMonitor.dhall 121 | , ServiceMonitorList = 122 | ./ServiceMonitorList.dhall sha256:98e8beddbebb174dad838bc72a0fce578e337dd7a7db7c4320e2c587acbebaea 123 | ? ./ServiceMonitorList.dhall 124 | , ServiceMonitorSpec = 125 | ./ServiceMonitorSpec.dhall sha256:ecb532588e3daf9b0aa13181e9a9feb7afd2578764ee4c21f83afbbd8d38cd20 126 | ? ./ServiceMonitorSpec.dhall 127 | , StorageSpec = 128 | ./StorageSpec.dhall sha256:e73aa9d82a6b493998a99576bd22a60d658cde4d61a862ead79268450a58df55 129 | ? ./StorageSpec.dhall 130 | , ThanosSpec = 131 | ./ThanosSpec.dhall sha256:c9e26e61bf4bab7ed01c9b2de1a09d2a2323a5dfbc20669f68c1b4271166308c 132 | ? ./ThanosSpec.dhall 133 | , ThanosRuler = 134 | ./ThanosRuler.dhall sha256:a1862c8b05438a4255d5194500eeccecb3940a3b06a451ec9dd2882a3ccca335 135 | ? ./ThanosRuler.dhall 136 | , ThanosRulerList = 137 | ./ThanosRulerList.dhall sha256:11eece8a307e2b7466b3e98e2df64cfba8cc2de7311ce974f44953d2c4bddb10 138 | ? ./ThanosRulerList.dhall 139 | , ThanosRulerSpec = 140 | ./ThanosRulerSpec.dhall sha256:757a26ba9bfc6fa27ff1ff11de20e637878069d7910af2e6390d9c86c6c82db8 141 | ? ./ThanosRulerSpec.dhall 142 | , ThanosRulerStatus = 143 | ./ThanosRulerStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 144 | ? ./ThanosRulerStatus.dhall 145 | , TLSConfig = 146 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 147 | ? ./TLSConfig.dhall 148 | , EmbeddedObjectMetadata = 149 | ./EmbeddedObjectMetadata.dhall sha256:5a9eb9672ed429bd9d7e9aa333c30aef5c8e44ade302895f8af57f286248c8fa 150 | ? ./EmbeddedObjectMetadata.dhall 151 | , EmbeddedPersistentVolumeClaim = 152 | ./EmbeddedPersistentVolumeClaim.dhall sha256:b43d5e1c1a395aea5e59ed84fbd7e9e5162f1aef3bf8755f45823363ede4daa3 153 | ? ./EmbeddedPersistentVolumeClaim.dhall 154 | , PrometheusRuleExcludeConfig = 155 | ./PrometheusRuleExcludeConfig.dhall sha256:9de82d0ac332d06b3cca9e96dee8208689bd3e0281f5f807361d4a72109fca18 156 | ? ./PrometheusRuleExcludeConfig.dhall 157 | , AlertmanagerConfig = 158 | ./AlertmanagerConfig.dhall sha256:03ef704a6a7cb13f8c575d6568b5e329006a39e42c58fd3b1a83137d47116f04 159 | ? ./AlertmanagerConfig.dhall 160 | , AlertmanagerConfigList = 161 | ./AlertmanagerConfigList.dhall sha256:85e908194a3fce675eaee4f689c72134453ed1e34f6f4a999dc74907033bf0d1 162 | ? ./AlertmanagerConfigList.dhall 163 | , AlertmanagerConfigSpec = 164 | ./AlertmanagerConfigSpec.dhall sha256:b9487178302a27b6ff8aa47180cd23c9be20471436fe8981dceb8be28e4d09da 165 | ? ./AlertmanagerConfigSpec.dhall 166 | , HTTPConfig = 167 | ./HTTPConfig.dhall sha256:b33237d271ba53c43ad70ee79463355d929ee65040d413c0f15ef3e3071af17f 168 | ? ./HTTPConfig.dhall 169 | , InhibitRule = 170 | ./InhibitRule.dhall sha256:a2c058aaf87549e02bf31cdd9cb1d45e386faffc98c53a6fc964a64f894c758c 171 | ? ./InhibitRule.dhall 172 | , Matcher = 173 | ./Matcher.dhall sha256:c8519226bf49d086fafacdac890df38fb63e10921984abfd2787e78aa3d90f3c 174 | ? ./Matcher.dhall 175 | , OpsGenieConfig = 176 | ./OpsGenieConfig.dhall sha256:84b0d36296b8dadd9eee814be280e7f594fa35679153cedfad52212edd9a64af 177 | ? ./OpsGenieConfig.dhall 178 | , OpsGenieConfigDetail = 179 | ./OpsGenieConfigDetail.dhall sha256:9bb842a44771c837f8f1d7a39c837ff7821ff436f4b198bdfcce0a681dc08b2e 180 | ? ./OpsGenieConfigDetail.dhall 181 | , OpsGenieConfigResponder = 182 | ./OpsGenieConfigResponder.dhall sha256:49d9e33fa13b200230a0f65b12ff4fcbe5675b4cf5dbaf9b64d9797899300587 183 | ? ./OpsGenieConfigResponder.dhall 184 | , PagerDutyConfig = 185 | ./PagerDutyConfig.dhall sha256:3cdffab07520af478c569df8ea1f5ebba3961c9a050f050fb1b981def67a689c 186 | ? ./PagerDutyConfig.dhall 187 | , PagerDutyConfigDetail = 188 | ./PagerDutyConfigDetail.dhall sha256:9bb842a44771c837f8f1d7a39c837ff7821ff436f4b198bdfcce0a681dc08b2e 189 | ? ./PagerDutyConfigDetail.dhall 190 | , Receiver = 191 | ./Receiver.dhall sha256:10acdd3e184cf84e1fa59db34d56fe926c9d661ac4a1b39adf4eabffcdb90564 192 | ? ./Receiver.dhall 193 | , Route = 194 | ./Route.dhall sha256:07329d1a72d3e3a3410cf74e7295b095a20cbf2c21da9a5b60f907300590914d 195 | ? ./Route.dhall 196 | , SafeTLSConfig = 197 | ./SafeTLSConfig.dhall sha256:33847e3bc9669b8e4666acb3deed9cd271ef5f45d4bfe1b36f0f416b4442c39d 198 | ? ./SafeTLSConfig.dhall 199 | , WeChatConfig = 200 | ./WeChatConfig.dhall sha256:943fb7fe1350e90d8d5af7d34c9177b9a3421ff47b680ea38514b839dca7e3db 201 | ? ./WeChatConfig.dhall 202 | , WebhookConfig = 203 | ./WebhookConfig.dhall sha256:6381e39d10d4bfa438ee66d2aa394795713b273593c786e7612f4aa441b038f3 204 | ? ./WebhookConfig.dhall 205 | } 206 | -------------------------------------------------------------------------------- /v1/schemas.dhall: -------------------------------------------------------------------------------- 1 | { AlertingSpec = 2 | ./AlertingSpec.dhall sha256:a86110361968bdc46d818901a3f5c832fe7fa6cc91f7444074430e25e4202e61 3 | ? ./AlertingSpec.dhall 4 | , Alertmanager = 5 | ./Alertmanager.dhall sha256:009ca2c566ca0d356b2ac37a79a14fe0e26b19870d02f7ebe7a436189e14098b 6 | ? ./Alertmanager.dhall 7 | , AlertmanagerEndpoints = 8 | ./AlertmanagerEndpoints.dhall sha256:d628edd8a1930362f586470a5bf141bf0286e69deb463ff12cae53a34f1f3747 9 | ? ./AlertmanagerEndpoints.dhall 10 | , AlertmanagerList = 11 | ./AlertmanagerList.dhall sha256:22dcb8fafdc2306622e2ccd1120f51628678011bbe8567f1e86e3982d68392c5 12 | ? ./AlertmanagerList.dhall 13 | , AlertmanagerSpec = 14 | ./AlertmanagerSpec.dhall sha256:f39005803d189f9c7867e4bc88f5fd8e698c0141410505e961bbe132ab7c1ba9 15 | ? ./AlertmanagerSpec.dhall 16 | , AlertmanagerStatus = 17 | ./AlertmanagerStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 18 | ? ./AlertmanagerStatus.dhall 19 | , ArbitraryFSAccessThroughSMsConfig = 20 | ./ArbitraryFSAccessThroughSMsConfig.dhall sha256:5da9e232ecba3823ce2f918148b8ba813e795426f795f227f198aac9225d62d7 21 | ? ./ArbitraryFSAccessThroughSMsConfig.dhall 22 | , BasicAuth = 23 | ./BasicAuth.dhall sha256:2ce5199f94352d1293242b1e97ab6bad6c29f34d8df163676c4487e3c5dae3af 24 | ? ./BasicAuth.dhall 25 | , EmbeddedObjectMetadata = 26 | ./EmbeddedObjectMetadata.dhall sha256:5a9eb9672ed429bd9d7e9aa333c30aef5c8e44ade302895f8af57f286248c8fa 27 | ? ./EmbeddedObjectMetadata.dhall 28 | , EmbeddedPersistentVolumeClaim = 29 | ./EmbeddedPersistentVolumeClaim.dhall sha256:b43d5e1c1a395aea5e59ed84fbd7e9e5162f1aef3bf8755f45823363ede4daa3 30 | ? ./EmbeddedPersistentVolumeClaim.dhall 31 | , HTTPConfig = 32 | ./HTTPConfig.dhall sha256:b33237d271ba53c43ad70ee79463355d929ee65040d413c0f15ef3e3071af17f 33 | ? ./HTTPConfig.dhall 34 | , InhibitRule = 35 | ./InhibitRule.dhall sha256:a2c058aaf87549e02bf31cdd9cb1d45e386faffc98c53a6fc964a64f894c758c 36 | ? ./InhibitRule.dhall 37 | , Matcher = 38 | ./Matcher.dhall sha256:c8519226bf49d086fafacdac890df38fb63e10921984abfd2787e78aa3d90f3c 39 | ? ./Matcher.dhall 40 | , OpsGenieConfig = 41 | ./OpsGenieConfig.dhall sha256:84b0d36296b8dadd9eee814be280e7f594fa35679153cedfad52212edd9a64af 42 | ? ./OpsGenieConfig.dhall 43 | , OpsGenieConfigDetail = 44 | ./OpsGenieConfigDetail.dhall sha256:9bb842a44771c837f8f1d7a39c837ff7821ff436f4b198bdfcce0a681dc08b2e 45 | ? ./OpsGenieConfigDetail.dhall 46 | , OpsGenieConfigResponder = 47 | ./OpsGenieConfigResponder.dhall sha256:49d9e33fa13b200230a0f65b12ff4fcbe5675b4cf5dbaf9b64d9797899300587 48 | ? ./OpsGenieConfigResponder.dhall 49 | , PagerDutyConfig = 50 | ./PagerDutyConfig.dhall sha256:3cdffab07520af478c569df8ea1f5ebba3961c9a050f050fb1b981def67a689c 51 | ? ./PagerDutyConfig.dhall 52 | , PagerDutyConfigDetail = 53 | ./PagerDutyConfigDetail.dhall sha256:9bb842a44771c837f8f1d7a39c837ff7821ff436f4b198bdfcce0a681dc08b2e 54 | ? ./PagerDutyConfigDetail.dhall 55 | , PodMetricsEndpoint = 56 | ./PodMetricsEndpoint.dhall sha256:645afdb97a53570df548a6ce3153f8ba855f3e92d7f2186ee871b809188b6b77 57 | ? ./PodMetricsEndpoint.dhall 58 | , PodMonitor = 59 | ./PodMonitor.dhall sha256:8694053f14ea9534f2cd36b0f6f9244a8d59297f68e12f28ef260b411e4e992a 60 | ? ./PodMonitor.dhall 61 | , PodMonitorList = 62 | ./PodMonitorList.dhall sha256:40a0c9c8d96a5e202eb052ab8be59b50cf5b753e38438fb3bf5cc10a84deb868 63 | ? ./PodMonitorList.dhall 64 | , PodMonitorSpec = 65 | ./PodMonitorSpec.dhall sha256:0d27ac2419e5075e24c99593a9eebd5a751c17e13a7a1c34520215648e33d04e 66 | ? ./PodMonitorSpec.dhall 67 | , Probe = 68 | ./Probe.dhall sha256:a6caef579f87c5a4746de44abaf6ed11cab900136c9bd046106625be5cb7f5dc 69 | ? ./Probe.dhall 70 | , ProbeList = 71 | ./ProbeList.dhall sha256:b8391bf35b849843ee6dc458b2a52050017b5a9c4f57271ca198f7e4c389e7e2 72 | ? ./ProbeList.dhall 73 | , ProbeSpec = 74 | ./ProbeSpec.dhall sha256:8acd59f1430e2d0f784d364d7d64bf5646dad139f8cb4bd8c5810b22ee447381 75 | ? ./ProbeSpec.dhall 76 | , ProbeTargetIngress = 77 | ./ProbeTargetIngress.dhall sha256:be2190ff7e7497c870bf343a1bd48c32c5d6aa804c8a12338d5900c7e702ac5b 78 | ? ./ProbeTargetIngress.dhall 79 | , ProbeTargetStaticConfig = 80 | ./ProbeTargetStaticConfig.dhall sha256:4951044922978b45e6bfa05197dd2a67bb53d015b24e7cf8361490c460288c65 81 | ? ./ProbeTargetStaticConfig.dhall 82 | , ProbeTargets = 83 | ./ProbeTargets.dhall sha256:67308c3bc5d8d8f140746e0e9cf49ff9fb341b1100a536a2c54adb02b922b80e 84 | ? ./ProbeTargets.dhall 85 | , ProberSpec = 86 | ./ProberSpec.dhall sha256:12aa19e0e0a2a32ed6e8f609df1071e5348d539e9d7374dcde15b35a0f13900b 87 | ? ./ProberSpec.dhall 88 | , Prometheus = 89 | ./Prometheus.dhall sha256:d06554a7113406b22d168e2c083bf61b7faebcdad774f68ccb98d30b3300f049 90 | ? ./Prometheus.dhall 91 | , PrometheusList = 92 | ./PrometheusList.dhall sha256:78617d41b4d12e90f55f7dfce64b39e37829fc96f778f6717c7690c0f75e21e9 93 | ? ./PrometheusList.dhall 94 | , PrometheusRule = 95 | ./PrometheusRule.dhall sha256:e7a5c48703ab955510176b2b5fa77e16b96a53fe174c5c58f04352eab83e7e0d 96 | ? ./PrometheusRule.dhall 97 | , PrometheusRuleExcludeConfig = 98 | ./PrometheusRuleExcludeConfig.dhall sha256:9de82d0ac332d06b3cca9e96dee8208689bd3e0281f5f807361d4a72109fca18 99 | ? ./PrometheusRuleExcludeConfig.dhall 100 | , PrometheusRuleList = 101 | ./PrometheusRuleList.dhall sha256:70d756873f9602684738c3deb75fe73f56d3414aed5a70805d15602543eaf4f9 102 | ? ./PrometheusRuleList.dhall 103 | , PrometheusRuleSpec = 104 | ./PrometheusRuleSpec.dhall sha256:eaa770c9ecb0f1614c3d9cd4cefaa9af77c24fc23fb52beca7aac5f0af04e970 105 | ? ./PrometheusRuleSpec.dhall 106 | , PrometheusSpec = 107 | ./PrometheusSpec.dhall sha256:57cf9741ed49b0fc5be376bf1c1e72f5fed3828aafef0b53415adc078a4e71dc 108 | ? ./PrometheusSpec.dhall 109 | , PrometheusStatus = 110 | ./PrometheusStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 111 | ? ./PrometheusStatus.dhall 112 | , QuerySpec = 113 | ./QuerySpec.dhall sha256:39089f4d09e138ff2883540f94e981a1565834c4e4d01cfdcd9c5bbeff8aaa0b 114 | ? ./QuerySpec.dhall 115 | , QueueConfig = 116 | ./QueueConfig.dhall sha256:b882b46979605ffd73945d3daba3f4fc507506968a78996d5332fba1f0fa2572 117 | ? ./QueueConfig.dhall 118 | , Receiver = 119 | ./Receiver.dhall sha256:10acdd3e184cf84e1fa59db34d56fe926c9d661ac4a1b39adf4eabffcdb90564 120 | ? ./Receiver.dhall 121 | , RelabelConfig = 122 | ./RelabelConfig.dhall sha256:55536331ee4787f7a5063964fbfbc3d903903deae1ccf49365211e35764361fb 123 | ? ./RelabelConfig.dhall 124 | , RemoteReadSpec = 125 | ./RemoteReadSpec.dhall sha256:35f9b0d4d222bae5cc8f4a9fff22b56e69f29c191a9176242a68b10b3c873b09 126 | ? ./RemoteReadSpec.dhall 127 | , RemoteWriteSpec = 128 | ./RemoteWriteSpec.dhall sha256:797023d62e5fa639422d54014397f5062fb2b9e369cf258fe9d891bb946e054f 129 | ? ./RemoteWriteSpec.dhall 130 | , Rule = 131 | ./Rule.dhall sha256:5d4291e1a984d630d9be65ebeb758f35c352fec94e7f8d613d53c290479c712e 132 | ? ./Rule.dhall 133 | , RuleGroup = 134 | ./RuleGroup.dhall sha256:da9e7a14f1ec8a5693267c70cb779d3131e96719bfbf04d446471f513ee1be85 135 | ? ./RuleGroup.dhall 136 | , Rules = 137 | ./Rules.dhall sha256:52e8a85f28b05b9d6b9c2bf99da75e10ab6199bc09af7c1c1a8c8b3c98edd918 138 | ? ./Rules.dhall 139 | , RulesAlert = 140 | ./RulesAlert.dhall sha256:959e713d7b2ac190c99505ef5fd038ae280635b4cfa0b55271328ed67dd3b1b7 141 | ? ./RulesAlert.dhall 142 | , SafeTLSConfig = 143 | ./SafeTLSConfig.dhall sha256:33847e3bc9669b8e4666acb3deed9cd271ef5f45d4bfe1b36f0f416b4442c39d 144 | ? ./SafeTLSConfig.dhall 145 | , ServiceMonitor = 146 | ./ServiceMonitor.dhall sha256:f0bee94fb4cffa7451a55571100c388542c65f86d99721aefe6026298d1958c7 147 | ? ./ServiceMonitor.dhall 148 | , ServiceMonitorList = 149 | ./ServiceMonitorList.dhall sha256:98e8beddbebb174dad838bc72a0fce578e337dd7a7db7c4320e2c587acbebaea 150 | ? ./ServiceMonitorList.dhall 151 | , ServiceMonitorSpec = 152 | ./ServiceMonitorSpec.dhall sha256:ecb532588e3daf9b0aa13181e9a9feb7afd2578764ee4c21f83afbbd8d38cd20 153 | ? ./ServiceMonitorSpec.dhall 154 | , TLSConfig = 155 | ./TLSConfig.dhall sha256:58054c5f17cbc2ae2bde2cf6acfec263045e9b841d8e60d0f5db152dffafa5cf 156 | ? ./TLSConfig.dhall 157 | , ThanosRuler = 158 | ./ThanosRuler.dhall sha256:a1862c8b05438a4255d5194500eeccecb3940a3b06a451ec9dd2882a3ccca335 159 | ? ./ThanosRuler.dhall 160 | , ThanosRulerList = 161 | ./ThanosRulerList.dhall sha256:11eece8a307e2b7466b3e98e2df64cfba8cc2de7311ce974f44953d2c4bddb10 162 | ? ./ThanosRulerList.dhall 163 | , ThanosRulerSpec = 164 | ./ThanosRulerSpec.dhall sha256:757a26ba9bfc6fa27ff1ff11de20e637878069d7910af2e6390d9c86c6c82db8 165 | ? ./ThanosRulerSpec.dhall 166 | , ThanosRulerStatus = 167 | ./ThanosRulerStatus.dhall sha256:e2d018badce51e5389191631b0168799b07c220ce6a89945ec1c2732d5a5cb2e 168 | ? ./ThanosRulerStatus.dhall 169 | , ThanosSpec = 170 | ./ThanosSpec.dhall sha256:c9e26e61bf4bab7ed01c9b2de1a09d2a2323a5dfbc20669f68c1b4271166308c 171 | ? ./ThanosSpec.dhall 172 | , WeChatConfig = 173 | ./WeChatConfig.dhall sha256:943fb7fe1350e90d8d5af7d34c9177b9a3421ff47b680ea38514b839dca7e3db 174 | ? ./WeChatConfig.dhall 175 | , WebhookConfig = 176 | ./WebhookConfig.dhall sha256:6381e39d10d4bfa438ee66d2aa394795713b273593c786e7612f4aa441b038f3 177 | ? ./WebhookConfig.dhall 178 | } 179 | --------------------------------------------------------------------------------