k8s.io/test-infra@v0.0.0-20240520184403-27c6b4c223d8/config/prow/cluster/monitoring/mixins/lib/config.libsonnet (about)

     1  local util = import 'config_util.libsonnet';
     2  
     3  //
     4  // Edit configuration in this object.
     5  //
     6  local config = {
     7    local comps = util.consts.components,
     8  
     9    // Instance specifics
    10    instance: {
    11      name: "K8s Prow",
    12      botName: "k8s-ci-robot",
    13      url: "https://prow.k8s.io",
    14      monitoringURL: "https://monitoring.prow.k8s.io",
    15    },
    16  
    17    // SLO compliance tracking config
    18    slo: {
    19      components: [
    20        comps.deck,
    21        comps.hook,
    22        comps.prowControllerManager,
    23        comps.sinker,
    24        comps.tide,
    25        comps.monitoring,
    26      ],
    27    },
    28  
    29    ciAbsents: {
    30      components: [
    31        comps.crier,
    32        comps.deck,
    33        comps.ghproxy,
    34        comps.hook,
    35        comps.horologium,
    36        comps.prowControllerManager,
    37        comps.sinker,
    38        comps.tide,
    39      ],
    40    },
    41  
    42    // Heartbeat jobs
    43    heartbeatJobs: [
    44      {name: 'ci-test-infra-prow-checkconfig', interval: '5m', alertInterval: '20m'},
    45    ],
    46  
    47    // Tide pools that are important enough to have their own graphs on the dashboard.
    48    tideDashboardExplicitPools: [
    49      {org: 'kubernetes', repo: 'kubernetes', branch: 'master'},
    50    ],
    51  
    52    // Additional scraping endpoints
    53    probeTargets: [
    54    # ATTENTION: Keep this in sync with the list in ../../additional-scrape-configs_secret.yaml
    55      {url: 'https://prow.k8s.io', labels: {slo: comps.deck}},
    56      {url: 'https://monitoring.prow.k8s.io', labels: {slo: comps.monitoring}},
    57      {url: 'https://testgrid.k8s.io', labels: {}},
    58      {url: 'https://storage.googleapis.com/k8s-triage/index.html', labels: {}},
    59      {url: 'https://storage.googleapis.com/test-infra-oncall/oncall.html', labels: {}},
    60    ],
    61  
    62    // Boskos endpoints to be monitored
    63    boskosResourcetypes: [
    64      {job: "k8s-prow-builds-new-boskos", type: "aws-account", friendly: "AWS account"},
    65      {job: "k8s-prow-builds-new-boskos", type: "gce-project", friendly: "GCE project"},
    66      {job: "k8s-infra-prow-builds-boskos", type: "gce-project", friendly: "GCE project (k8s-infra)"},
    67      {job: "k8s-prow-builds-new-boskos", type: "gpu-project", friendly: "GPU project"},
    68      {job: "k8s-infra-prow-builds-boskos", type: "gpu-project", friendly: "GPU project (k8s-infra)"},
    69      {job: "k8s-prow-builds-new-boskos", type: "ingress-project", friendly: "Ingress project"},
    70      {job: "k8s-prow-builds-new-boskos", type: "node-e2e-project", friendly: "Node e2e project"},
    71      {job: "k8s-prow-builds-new-boskos", type: "scalability-project", friendly: "Scalability project"},
    72      {job: "k8s-infra-prow-builds-boskos", type: "scalability-project", friendly: "Scalability project (k8s-infra)"},
    73      {job: "k8s-prow-builds-new-boskos", type: "scalability-presubmit-project", friendly: "Scalability presubmit project"}
    74      {job: "k8s-prow-builds-new-boskos", type: "scalability-presubmit-5k-project", friendly: "Scalability presubmit project (5k)"}
    75    ],
    76  
    77    // How long we go during work hours without seeing a webhook before alerting.
    78    webhookMissingAlertInterval: '10m',
    79  
    80    // How many work days prow hasn't been bumped, the alert rule using this value
    81    // understands to adjust based on day of week so weekends are considered.
    82    prowImageStaleByDays: {daysStale: 7, eventDuration: '24h'},
    83  
    84    kubernetesExternalSecretServiceAccount: "kubernetes-external-secrets-sa@k8s-prow.iam.gserviceaccount.com",
    85  };
    86  
    87  // Generate the real config by adding in constant fields and defaulting where needed.
    88  {
    89    _config+:: util.defaultConfig(config),
    90    _util+:: util,
    91  }