Skip to content

fix: formatting#532

Open
Tvion wants to merge 11 commits into
mainfrom
fix-formatting
Open

fix: formatting#532
Tvion wants to merge 11 commits into
mainfrom
fix-formatting

Conversation

@Tvion

@Tvion Tvion commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator
  • Fix formatting and some linter errors.
  • Disable linter for PRs.

@github-actions github-actions Bot added the bug Something isn't working label Jul 8, 2026
@Tvion Tvion marked this pull request as ready for review July 14, 2026 09:08
@Tvion Tvion marked this pull request as draft July 14, 2026 09:15
@github-actions

Copy link
Copy Markdown
Contributor

Super-linter summary

Language Validation result
BIOME_FORMAT Fail ❌
BIOME_LINT Pass ✅
CHECKOV Fail ❌
EDITORCONFIG Fail ❌
GITHUB_ACTIONS Pass ✅
GITHUB_ACTIONS_ZIZMOR Fail ❌
GITLEAKS Pass ✅
GIT_MERGE_CONFLICT_MARKERS Pass ✅
GO Fail ❌
GO_MODULES Fail ❌
JSON Pass ✅
PRE_COMMIT Pass ✅
PYTHON_RUFF Fail ❌
PYTHON_RUFF_FORMAT Fail ❌
SPELL_CODESPELL Pass ✅
YAML Pass ✅

Super-linter detected linting errors

For more information, see the GitHub Actions workflow run

Powered by Super-linter

BIOME_FORMAT
Checked 11 files in 372ms. No fixes applied.
Found 11 errors..github/linters/.jscpd.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

     1  1 │   {
     2    │ - ··"threshold":·2,
     3    │ - ··"ignore":·[
     4    │ - ····"**/.git/**",
     5    │ - ····"**/charts/*/templates/*/*.yaml",
     6    │ - ····"**/charts/*/templates/*/*/*.yaml",
     7    │ - ····"**/docs/examples/**"
     8    │ - ··]
        2 │ + → "threshold":·2,
        3 │ + → "ignore":·[
        4 │ + → → "**/.git/**",
        5 │ + → → "**/charts/*/templates/*/*.yaml",
        6 │ + → → "**/charts/*/templates/*/*/*.yaml",
        7 │ + → → "**/docs/examples/**"
        8 │ + → ]
     9  9 │   }
    10 10 │


.qubership/grand-report.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

    1   │ - {
    2   │ -
    3   │ - }
      1 │ + {}
      2 │ +


operator/charts/patroni-core/values.schema.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

      1   1 │   {
      2     │ - ··"$schema":·"http://json-schema.org/draft-07/schema#",
      3     │ - ··"title":·"patroni-core·values",
      4     │ - ··"type":·"object",
      5     │ - ··"additionalProperties":·true,
      6     │ - ··"properties":·{
      7     │ - ····"postgresUser":·{
      8     │ - ······"type":·"string",
      9     │ - ······"default":·"postgres",
     10     │ - ······"description":·"The·name·of·database·superuser"
     11     │ - ····},
     12     │ - ····"postgresPassword":·{
     13     │ - ······"type":·"string",
     14     │ - ······"default":·"p@ssWOrD1",
     15     │ - ······"description":·"The·password·for·the·database·superuser"
     16     │ - ····},
     17     │ - ····"replicatorPassword":·{
     18     │ - ······"type":·"string",
     19     │ - ······"default":·"replicator",
     20     │ - ······"description":·"Password·for·replicator·user"
     21     │ - ····},
     22     │ - ····"podLabels":·{
     23     │ - ······"type":·"object",
     24     │ - ······"additionalProperties":·{
     25     │ - ········"type":·"string"
     26     │ - ······},
     27     │ - ······"default":·{}
     28     │ - ····},
     29     │ - ····"imagePullPolicy":·{
     30     │ - ······"type":·"string",
     31     │ - ······"default":·"IfNotPresent",
     32     │ - ······"description":·"Image·pull·policy·for·containers"
     33     │ - ····},
     34     │ - ····"privateRegistry":·{
     35     │ - ······"$ref":·"#/$defs/privateRegistry"
     36     │ - ····},
     37     │ - ····"global":·{
     38     │ - ······"$ref":·"#/$defs/global"
     39     │ - ····},
     40     │ - ····"serviceAccount":·{
     41     │ - ······"$ref":·"#/$defs/serviceAccount"
     42     │ - ····},
     43     │ - ····"operatorInit":·{
     44     │ - ······"$ref":·"#/$defs/operatorInit"
     45     │ - ····},
     46     │ - ····"operator":·{
     47     │ - ······"$ref":·"#/$defs/operator"
     48     │ - ····},
     49     │ - ····"policies":·{
     50     │ - ······"$ref":·"#/$defs/policies"
     51     │ - ····},
     52     │ - ····"tls":·{
     53     │ - ······"$ref":·"#/$defs/tls"
     54     │ - ····},
     55     │ - ····"ldap":·{
     56     │ - ······"$ref":·"#/$defs/ldap"
     57     │ - ····},
     58     │ - ····"patroni":·{
     59     │ - ······"$ref":·"#/$defs/patroni"
     60     │ - ····},
     61     │ - ····"pgBackRest":·{
     62     │ - ······"$ref":·"#/$defs/pgBackRest"
     63     │ - ····},
     64     │ - ····"tests":·{
     65     │ - ······"$ref":·"#/$defs/tests"
     66     │ - ····},
     67     │ - ····"runTestsOnly":·{
     68     │ - ······"type":·"boolean",
     69     │ - ······"default":·false
     70     │ - ····},
     71     │ - ····"INTERNAL_TLS_ENABLED":·{
     72     │ - ······"type":·"boolean",
     73     │ - ······"default":·false
     74     │ - ····},
     75     │ - ····"GLOBAL_SECURITY_CONTEXT":·{
     76     │ - ······"type":·"boolean",
     77     │ - ······"default":·true
     78     │ - ····},
     79     │ - ····"CLOUD_PUBLIC_HOST":·{
     80     │ - ······"type":·"string",
     81     │ - ······"default":·"k8s.default"
     82     │ - ····},
     83     │ - ····"majorUpgrade":·{
     84     │ - ······"$ref":·"#/$defs/majorUpgrade"
     85     │ - ····}
     86     │ - ··},
     87     │ - ··"$defs":·{
     88     │ - ····"privateRegistry":·{
     89     │ - ······"type":·"object",
     90     │ - ······"additionalProperties":·false,
     91     │ - ······"properties":·{
     92     │ - ········"enabled":·{
     93     │ - ··········"type":·"boolean",
     94     │ - ··········"default":·false
     95     │ - ········},
     96     │ - ········"secrets":·{
     97     │ - ··········"type":·"array",
     98     │ - ··········"items":·{
     99     │ - ············"type":·"object",
    100     │ - ············"additionalProperties":·false,
    101     │ - ············"properties":·{
    102     │ - ··············"name":·{
    103     │ - ················"type":·"string"
    104     │ - ··············},
    105     │ - ··············"create":·{
    106     │ - ················"type":·"boolean",
    107     │ - ················"default":·false
    108     │ - ··············},
    109     │ - ··············"registry":·{
    110     │ - ················"type":·"string"
    111     │ - ··············},
    112     │ - ··············"username":·{
    113     │ - ················"type":·"string"
    114     │ - ··············},
    115     │ - ··············"password":·{
    116     │ - ················"type":·"string"
    117     │ - ··············},
    118     │ - ··············"email":·{
    119     │ - ················"type":·"string"
    120     │ - ··············}
    121     │ - ············}
    122     │ - ··········}
    123     │ - ········}
    124     │ - ······}
    125     │ - ····},
    126     │ - ····"global":·{
    127     │ - ······"type":·"object",
    128     │ - ······"additionalProperties":·true,
    129     │ - ······"properties":·{
    130     │ - ········"cloudIntegrationEnabled":·{
    131     │ - ··········"type":·"boolean",
    132     │ - ··········"default":·true
    133     │ - ········}
    134     │ - ······}
    135     │ - ····},
    136     │ - ····"serviceAccount":·{
    137     │ - ······"type":·"object",
    138     │ - ······"additionalProperties":·false,
    139     │ - ······"properties":·{
    140     │ - ········"create":·{
    141     │ - ··········"type":·"boolean",
    142     │ - ··········"default":·true
    143     │ - ········},
    144     │ - ········"name":·{
    145     │ - ··········"type":·"string",
    146     │ - ··········"default":·"patroni-sa"
    147     │ - ········}
    148     │ - ······}
    149     │ - ····},
    150     │ - ····"operatorInit":·{
  1583 more lines truncated


operator/charts/patroni-services/monitoring/aws-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·169,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"The·percentage·of·CPU·used·by·an·Aurora·DB·instance",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"barWidthFactor":·0.6,
      78      │ - ············"drawStyle":·"line",
      79      │ - ············"fillOpacity":·20,
      80      │ - ············"gradientMode":·"none",
      81      │ - ············"hideFrom":·{
      82      │ - ··············"legend":·false,
      83      │ - ··············"tooltip":·false,
      84      │ - ··············"viz":·false
      85      │ - ············},
      86      │ - ············"insertNulls":·false,
      87      │ - ············"lineInterpolation":·"linear",
      88      │ - ············"lineWidth":·2,
      89      │ - ············"pointSize":·5,
      90      │ - ············"scaleDistribution":·{
      91      │ - ··············"type":·"linear"
      92      │ - ············},
      93      │ - ············"showPoints":·"never",
      94      │ - ············"spanNulls":·true,
      95      │ - ············"stacking":·{
      96      │ - ··············"group":·"A",
      97      │ - ··············"mode":·"none"
      98      │ - ············},
      99      │ - ············"thresholdsStyle":·{
     100      │ - ··············"mode":·"off"
     101      │ - ············}
     102      │ - ··········},
     103      │ - ··········"mappings":·[],
     104      │ - ··········"min":·0,
     105      │ - ··········"thresholds":·{
     106      │ - ············"mode":·"absolute",
     107      │ - ············"steps":·[
     108      │ - ··············{
     109      │ - ················"color":·"green",
     110      │ - ················"value":·null
     111      │ - ··············},
     112      │ - ··············{
     113      │ - ················"color":·"red",
     114      │ - ················"value":·80
     115      │ - ··············}
     116      │ - ············]
     117      │ - ··········},
     118      │ - ··········"unit":·"percent"
     119      │ - ········},
     120      │ - ········"overrides":·[
     121      │ - ··········{
     122      │ - ············"matcher":·{
     123      │ - ··············"id":·"byName",
     124      │ - ··············"options":·"CPU"
     125      │ - ············},
     126      │ - ············"properties":·[
     127      │ - ··············{
     128      │ - ················"id":·"color",
     129      │ - ················"value":·{
     130      │ - ··················"fixedColor":·"#E24D42",
     131      │ - ··················"mode":·"fixed"
     132      │ - ················}
     133      │ - ··············}
     134      │ - ············]
     135      │ - ··········}
     136      │ - ········]
     137      │ - ······},
     138      │ - ······"gridPos":·{
     139      │ - ········"h":·7,
     140      │ - ········"w":·12,
     141      │ - ········"x":·0,
     142      │ - ········"y":·1
     143      │ - ······},
     144      │ - ······"id":·2,
     145      │ - ······"options":·{
     146      │ - ········"legend":·{
     147      │ - ··········"calcs":·[
     148      │ - ············"mean",
     149      │ - ············"max",
     150      │ - ············"min"
  3892 more lines truncated


operator/charts/patroni-services/monitoring/azure-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·36,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"Indicates·if·the·database·is·up·or·not",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"drawStyle":·"line",
      78      │ - ············"fillOpacity":·20,
      79      │ - ············"gradientMode":·"none",
      80      │ - ············"hideFrom":·{
      81      │ - ··············"legend":·false,
      82      │ - ··············"tooltip":·false,
      83      │ - ··············"viz":·false
      84      │ - ············},
      85      │ - ············"insertNulls":·false,
      86      │ - ············"lineInterpolation":·"linear",
      87      │ - ············"lineStyle":·{
      88      │ - ··············"fill":·"solid"
      89      │ - ············},
      90      │ - ············"lineWidth":·2,
      91      │ - ············"pointSize":·5,
      92      │ - ············"scaleDistribution":·{
      93      │ - ··············"type":·"linear"
      94      │ - ············},
      95      │ - ············"showPoints":·"never",
      96      │ - ············"spanNulls":·true,
      97      │ - ············"stacking":·{
      98      │ - ··············"group":·"A",
      99      │ - ··············"mode":·"none"
     100      │ - ············},
     101      │ - ············"thresholdsStyle":·{
     102      │ - ··············"mode":·"off"
     103      │ - ············}
     104      │ - ··········},
     105      │ - ··········"mappings":·[],
     106      │ - ··········"min":·0,
     107      │ - ··········"thresholds":·{
     108      │ - ············"mode":·"absolute",
     109      │ - ············"steps":·[
     110      │ - ··············{
     111      │ - ················"color":·"green",
     112      │ - ················"value":·null
     113      │ - ··············}
     114      │ - ············]
     115      │ - ··········},
     116      │ - ··········"unit":·"bool_on_off"
     117      │ - ········},
     118      │ - ········"overrides":·[]
     119      │ - ······},
     120      │ - ······"gridPos":·{
     121      │ - ········"h":·7,
     122      │ - ········"w":·5,
     123      │ - ········"x":·0,
     124      │ - ········"y":·1
     125      │ - ······},
     126      │ - ······"id":·2,
     127      │ - ······"options":·{
     128      │ - ········"legend":·{
     129      │ - ··········"calcs":·[],
     130      │ - ··········"displayMode":·"table",
     131      │ - ··········"placement":·"bottom",
     132      │ - ··········"showLegend":·true
     133      │ - ········},
     134      │ - ········"tooltip":·{
     135      │ - ··········"mode":·"multi",
     136      │ - ··········"sort":·"none"
     137      │ - ········}
     138      │ - ······},
     139      │ - ······"pluginVersion":·"9.5.5",
     140      │ - ······"targets":·[
     141      │ - ········{
     142      │ - ··········"datasource":·{
     143      │ - ············"type":·"prometheus",
     144      │ - ············"uid":·"${datasource}"
     145      │ - ··········},
     146      │ - ··········"editorMode":·"code",
     147      │ - ··········"exemplar":·true,
     148      │ - ··········"expr":·"postgresql_is_db_alive{instance_name=~'${instance}',·cluster=~\"$cluster\"}",
     149      │ - ··········"interval":·"",
     150      │ - ··········"legendFormat":·"Is·db·alive",
  2268 more lines truncated


operator/charts/patroni-services/monitoring/cloudsql-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·166,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"Current·CPU·utilization·represented·as·a·percentage·of·the·reserved·CPU·that·is·currently·in·use.",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"barWidthFactor":·0.6,
      78      │ - ············"drawStyle":·"line",
      79      │ - ············"fillOpacity":·20,
      80      │ - ············"gradientMode":·"none",
      81      │ - ············"hideFrom":·{
      82      │ - ··············"legend":·false,
      83      │ - ··············"tooltip":·false,
      84      │ - ··············"viz":·false
      85      │ - ············},
      86      │ - ············"insertNulls":·false,
      87      │ - ············"lineInterpolation":·"linear",
      88      │ - ············"lineWidth":·2,
      89      │ - ············"pointSize":·5,
      90      │ - ············"scaleDistribution":·{
      91      │ - ··············"type":·"linear"
      92      │ - ············},
      93      │ - ············"showPoints":·"never",
      94      │ - ············"spanNulls":·true,
      95      │ - ············"stacking":·{
      96      │ - ··············"group":·"A",
      97      │ - ··············"mode":·"none"
      98      │ - ············},
      99      │ - ············"thresholdsStyle":·{
     100      │ - ··············"mode":·"off"
     101      │ - ············}
     102      │ - ··········},
     103      │ - ··········"mappings":·[],
     104      │ - ··········"min":·0,
     105      │ - ··········"thresholds":·{
     106      │ - ············"mode":·"absolute",
     107      │ - ············"steps":·[
     108      │ - ··············{
     109      │ - ················"color":·"green",
     110      │ - ················"value":·null
     111      │ - ··············},
     112      │ - ··············{
     113      │ - ················"color":·"red",
     114      │ - ················"value":·80
     115      │ - ··············}
     116      │ - ············]
     117      │ - ··········},
     118      │ - ··········"unit":·"percentunit"
     119      │ - ········},
     120      │ - ········"overrides":·[
     121      │ - ··········{
     122      │ - ············"matcher":·{
     123      │ - ··············"id":·"byName",
     124      │ - ··············"options":·"CPU"
     125      │ - ············},
     126      │ - ············"properties":·[
     127      │ - ··············{
     128      │ - ················"id":·"color",
     129      │ - ················"value":·{
     130      │ - ··················"fixedColor":·"#E24D42",
     131      │ - ··················"mode":·"fixed"
     132      │ - ················}
     133      │ - ··············}
     134      │ - ············]
     135      │ - ··········}
     136      │ - ········]
     137      │ - ······},
     138      │ - ······"gridPos":·{
     139      │ - ········"h":·7,
     140      │ - ········"w":·12,
     141      │ - ········"x":·0,
     142      │ - ········"y":·1
     143      │ - ······},
     144      │ - ······"id":·2,
     145      │ - ······"options":·{
     146      │ - ········"legend":·{
     147      │ - ··········"calcs":·[
     148      │ - ············"mean",
     149      │ - ············"max",
     150      │ - ············"min"
  2298 more lines truncated


operator/charts/patroni-services/monitoring/grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Metrics·for·PostgreSQL·Cluster",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"graphTooltip":·1,
      28      │ - ··"id":·373,
      29      │ - ··"links":·[
      30      │ - ····{
      31      │ - ······"asDropdown":·false,
      32      │ - ······"icon":·"external·link",
      33      │ - ······"includeVars":·false,
      34      │ - ······"keepTime":·false,
      35      │ - ······"tags":·[
      36      │ - ········"Postgres_Performance"
      37      │ - ······],
      38      │ - ······"targetBlank":·false,
      39      │ - ······"title":·"PostgreSQL·Performance·Metrics",
      40      │ - ······"tooltip":·"",
      41      │ - ······"type":·"dashboards",
      42      │ - ······"url":·""
      43      │ - ····},
      44      │ - ····{
      45      │ - ······"asDropdown":·false,
      46      │ - ······"icon":·"external·link",
      47      │ - ······"includeVars":·false,
      48      │ - ······"keepTime":·false,
      49      │ - ······"tags":·[
      50      │ - ········"Postgres_Exporter"
      51      │ - ······],
      52      │ - ······"targetBlank":·false,
      53      │ - ······"title":·"Postgres·Exporter",
      54      │ - ······"tooltip":·"",
      55      │ - ······"type":·"dashboards",
      56      │ - ······"url":·""
      57      │ - ····}
      58      │ - ··],
      59      │ - ··"panels":·[
      60      │ - ····{
      61      │ - ······"collapsed":·true,
      62      │ - ······"gridPos":·{
      63      │ - ········"h":·1,
      64      │ - ········"w":·24,
      65      │ - ········"x":·0,
      66      │ - ········"y":·0
      67      │ - ······},
      68      │ - ······"id":·980,
      69      │ - ······"panels":·[
      70      │ - ········{
      71      │ - ··········"datasource":·{
      72      │ - ············"type":·"prometheus",
      73      │ - ············"uid":·"$datasource"
      74      │ - ··········},
      75      │ - ··········"fieldConfig":·{
      76      │ - ············"defaults":·{
      77      │ - ··············"color":·{
      78      │ - ················"mode":·"thresholds"
      79      │ - ··············},
      80      │ - ··············"mappings":·[
      81      │ - ················{
      82      │ - ··················"options":·{
      83      │ - ····················"0":·{
      84      │ - ······················"index":·2,
      85      │ - ······················"text":·"UP"
      86      │ - ····················},
      87      │ - ····················"6":·{
      88      │ - ······················"index":·1,
      89      │ - ······················"text":·"DEGRADED"
      90      │ - ····················},
      91      │ - ····················"10":·{
      92      │ - ······················"index":·0,
      93      │ - ······················"text":·"DOWN"
      94      │ - ····················},
      95      │ - ····················"11":·{
      96      │ - ······················"color":·"dark-green",
      97      │ - ······················"index":·3,
      98      │ - ······················"text":·"UP·(EXTERNAL)"
      99      │ - ····················}
     100      │ - ··················},
     101      │ - ··················"type":·"value"
     102      │ - ················}
     103      │ - ··············],
     104      │ - ··············"thresholds":·{
     105      │ - ················"mode":·"absolute",
     106      │ - ················"steps":·[
     107      │ - ··················{
     108      │ - ····················"color":·"rgba(50,·172,·45,·0.97)"
     109      │ - ··················},
     110      │ - ··················{
     111      │ - ····················"color":·"rgba(237,·129,·40,·0.89)",
     112      │ - ····················"value":·3
     113      │ - ··················},
     114      │ - ··················{
     115      │ - ····················"color":·"rgba(245,·54,·54,·0.9)",
     116      │ - ····················"value":·6
     117      │ - ··················}
     118      │ - ················]
     119      │ - ··············},
     120      │ - ··············"unit":·"none"
     121      │ - ············},
     122      │ - ············"overrides":·[]
     123      │ - ··········},
     124      │ - ··········"gridPos":·{
     125      │ - ············"h":·7,
     126      │ - ············"w":·4,
     127      │ - ············"x":·0,
     128      │ - ············"y":·39
     129      │ - ··········},
     130      │ - ··········"id":·10,
     131      │ - ··········"interval":·"$inter",
     132      │ - ··········"maxDataPoints":·100,
     133      │ - ··········"options":·{
     134      │ - ············"colorMode":·"value",
     135      │ - ············"graphMode":·"area",
     136      │ - ············"justifyMode":·"auto",
     137      │ - ············"orientation":·"horizontal",
     138      │ - ············"percentChangeColorMode":·"standard",
     139      │ - ············"reduceOptions":·{
     140      │ - ··············"calcs":·[
     141      │ - ················"lastNotNull"
     142      │ - ··············],
     143      │ - ··············"fields":·"",
     144      │ - ··············"values":·false
     145      │ - ············},
     146      │ - ············"showPercentChange":·false,
     147      │ - ············"textMode":·"auto",
     148      │ - ············"wideLayout":·true
     149      │ - ··········},
     150      │ - ··········"pluginVersion":·"10.4.13",
  18231 more lines truncated


operator/charts/patroni-services/monitoring/pgbackrest-exporter-grafana-dashboard.json format ━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Dashboard·works·with·pgbackrest_exporter",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"graphTooltip":·0,
      28      │ - ··"id":·278,
      29      │ - ··"links":·[],
      30      │ - ··"panels":·[
      31      │ - ····{
      32      │ - ······"collapsed":·false,
      33      │ - ······"gridPos":·{
      34      │ - ········"h":·1,
      35      │ - ········"w":·24,
      36      │ - ········"x":·0,
      37      │ - ········"y":·0
      38      │ - ······},
      39      │ - ······"id":·46,
      40      │ - ······"panels":·[],
      41      │ - ······"title":·"General·info",
      42      │ - ······"type":·"row"
      43      │ - ····},
      44      │ - ····{
      45      │ - ······"datasource":·{
      46      │ - ········"type":·"prometheus",
      47      │ - ········"uid":·"${datasource}"
      48      │ - ······},
      49      │ - ······"description":·"Count·of·selected·stanzas.",
      50      │ - ······"fieldConfig":·{
      51      │ - ········"defaults":·{
      52      │ - ··········"color":·{
      53      │ - ············"mode":·"thresholds"
      54      │ - ··········},
      55      │ - ··········"mappings":·[],
      56      │ - ··········"thresholds":·{
      57      │ - ············"mode":·"absolute",
      58      │ - ············"steps":·[
      59      │ - ··············{
      60      │ - ················"color":·"green"
      61      │ - ··············}
      62      │ - ············]
      63      │ - ··········}
      64      │ - ········},
      65      │ - ········"overrides":·[]
      66      │ - ······},
      67      │ - ······"gridPos":·{
      68      │ - ········"h":·4,
      69      │ - ········"w":·4,
      70      │ - ········"x":·0,
      71      │ - ········"y":·1
      72      │ - ······},
      73      │ - ······"id":·57,
      74      │ - ······"options":·{
      75      │ - ········"colorMode":·"value",
      76      │ - ········"graphMode":·"area",
      77      │ - ········"justifyMode":·"auto",
      78      │ - ········"orientation":·"auto",
      79      │ - ········"percentChangeColorMode":·"standard",
      80      │ - ········"reduceOptions":·{
      81      │ - ··········"calcs":·[
      82      │ - ············"lastNotNull"
      83      │ - ··········],
      84      │ - ··········"fields":·"",
      85      │ - ··········"values":·false
      86      │ - ········},
      87      │ - ········"showPercentChange":·false,
      88      │ - ········"textMode":·"value",
      89      │ - ········"wideLayout":·true
      90      │ - ······},
      91      │ - ······"pluginVersion":·"11.6.5",
      92      │ - ······"targets":·[
      93      │ - ········{
      94      │ - ··········"datasource":·{
      95      │ - ············"type":·"prometheus",
      96      │ - ············"uid":·"${datasource}"
      97      │ - ··········},
      98      │ - ··········"editorMode":·"code",
      99      │ - ··········"expr":·"sum(count·by·(stanza)(pgbackrest_stanza_status{stanza=~\"$stanza\",·cluster=\"$cluster\",·namespace=\"$namespace\"}))",
     100      │ - ··········"legendFormat":·"__auto",
     101      │ - ··········"range":·true,
     102      │ - ··········"refId":·"A"
     103      │ - ········}
     104      │ - ······],
     105      │ - ······"title":·"Stanzas·CNT",
     106      │ - ······"type":·"stat"
     107      │ - ····},
     108      │ - ····{
     109      │ - ······"datasource":·{
     110      │ - ········"type":·"prometheus",
     111      │ - ········"uid":·"${datasource}"
     112      │ - ······},
     113      │ - ······"description":·"Count·of·all·backups·for·selected·stanzas·and·repos.",
     114      │ - ······"fieldConfig":·{
     115      │ - ········"defaults":·{
     116      │ - ··········"color":·{
     117      │ - ············"mode":·"thresholds"
     118      │ - ··········},
     119      │ - ··········"mappings":·[],
     120      │ - ··········"thresholds":·{
     121      │ - ············"mode":·"absolute",
     122      │ - ············"steps":·[
     123      │ - ··············{
     124      │ - ················"color":·"green"
     125      │ - ··············}
     126      │ - ············]
     127      │ - ··········}
     128      │ - ········},
     129      │ - ········"overrides":·[]
     130      │ - ······},
     131      │ - ······"gridPos":·{
     132      │ - ········"h":·4,
     133      │ - ········"w":·4,
     134      │ - ········"x":·4,
     135      │ - ········"y":·1
     136      │ - ······},
     137      │ - ······"id":·52,
     138      │ - ······"options":·{
     139      │ - ········"colorMode":·"value",
     140      │ - ········"graphMode":·"area",
     141      │ - ········"justifyMode":·"auto",
     142      │ - ········"orientation":·"auto",
     143      │ - ········"percentChangeColorMode":·"standard",
     144      │ - ········"reduceOptions":·{
     145      │ - ··········"calcs":·[
     146      │ - ············"lastNotNull"
     147      │ - ··········],
     148      │ - ··········"fields":·"",
     149      │ - ··········"values":·false
     150      │ - ········},
  14014 more lines truncated


operator/charts/patroni-services/monitoring/postgres-exporter-grafana-dashboard.json format ━━━━━━━━━━

  × Formatter would have printed the following content:

        1     1 │   {
        2       │ - ··"annotations":·{
        3       │ - ····"list":·[
        4       │ - ······{
        5       │ - ········"builtIn":·1,
        6       │ - ········"datasource":·{
        7       │ - ··········"type":·"datasource",
        8       │ - ··········"uid":·"grafana"
        9       │ - ········},
       10       │ - ········"enable":·true,
       11       │ - ········"hide":·true,
       12       │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
       13       │ - ········"name":·"Annotations·&·Alerts",
       14       │ - ········"target":·{
       15       │ - ··········"limit":·100,
       16       │ - ··········"matchAny":·false,
       17       │ - ··········"tags":·[],
       18       │ - ··········"type":·"dashboard"
       19       │ - ········},
       20       │ - ········"type":·"dashboard"
       21       │ - ······}
       22       │ - ····]
       23       │ - ··},
       24       │ - ··"description":·"Dashbord·works·with·postgres_exporter·for·prometheus",
       25       │ - ··"editable":·true,
       26       │ - ··"fiscalYearStartMonth":·0,
       27       │ - ··"gnetId":·9628,
       28       │ - ··"graphTooltip":·0,
       29       │ - ··"id":·147,
       30       │ - ··"links":·[
       31       │ - ····{
       32       │ - ······"asDropdown":·true,
       33       │ - ······"icon":·"external·link",
       34       │ - ······"includeVars":·false,
       35       │ - ······"keepTime":·false,
       36       │ - ······"tags":·[
       37       │ - ········"cloud",
       38       │ - ········"postgres"
       39       │ - ······],
       40       │ - ······"targetBlank":·true,
       41       │ - ······"title":·"Cloud·Dashboards",
       42       │ - ······"tooltip":·"",
       43       │ - ······"type":·"dashboards",
       44       │ - ······"url":·""
       45       │ - ····}
       46       │ - ··],
       47       │ - ··"liveNow":·false,
       48       │ - ··"panels":·[
       49       │ - ····{
       50       │ - ······"collapsed":·false,
       51       │ - ······"datasource":·{
       52       │ - ········"type":·"prometheus",
       53       │ - ········"uid":·"$datasource"
       54       │ - ······},
       55       │ - ······"gridPos":·{
       56       │ - ········"h":·1,
       57       │ - ········"w":·24,
       58       │ - ········"x":·0,
       59       │ - ········"y":·0
       60       │ - ······},
       61       │ - ······"id":·32,
       62       │ - ······"panels":·[],
       63       │ - ······"targets":·[
       64       │ - ········{
       65       │ - ··········"datasource":·{
       66       │ - ············"type":·"prometheus",
       67       │ - ············"uid":·"$datasource"
       68       │ - ··········},
       69       │ - ··········"refId":·"A"
       70       │ - ········}
       71       │ - ······],
       72       │ - ······"title":·"System·Configuration·and·Statistics",
       73       │ - ······"type":·"row"
       74       │ - ····},
       75       │ - ····{
       76       │ - ······"datasource":·{
       77       │ - ········"type":·"prometheus",
       78       │ - ········"uid":·"$datasource"
       79       │ - ······},
       80       │ - ······"description":·"Instance·current·status.",
       81       │ - ······"fieldConfig":·{
       82       │ - ········"defaults":·{
       83       │ - ··········"mappings":·[
       84       │ - ············{
       85       │ - ··············"options":·{
       86       │ - ················"0":·{
       87       │ - ··················"text":·"Master"
       88       │ - ················},
       89       │ - ················"1":·{
       90       │ - ··················"text":·"sync"
       91       │ - ················},
       92       │ - ················"2":·{
       93       │ - ··················"text":·"async"
       94       │ - ················}
       95       │ - ··············},
       96       │ - ··············"type":·"value"
       97       │ - ············},
       98       │ - ············{
       99       │ - ··············"options":·{
      100       │ - ················"match":·"null",
      101       │ - ················"result":·{
      102       │ - ··················"text":·"not·started"
      103       │ - ················}
      104       │ - ··············},
      105       │ - ··············"type":·"special"
      106       │ - ············}
      107       │ - ··········],
      108       │ - ··········"thresholds":·{
      109       │ - ············"mode":·"absolute",
      110       │ - ············"steps":·[
      111       │ - ··············{
      112       │ - ················"color":·"#299c46",
      113       │ - ················"value":·null
      114       │ - ··············},
      115       │ - ··············{
      116       │ - ················"color":·"#FA6400",
      117       │ - ················"value":·1
      118       │ - ··············},
      119       │ - ··············{
      120       │ - ················"color":·"#d44a3a",
      121       │ - ················"value":·2
      122       │ - ··············}
      123       │ - ············]
      124       │ - ··········},
      125       │ - ··········"unit":·"none"
      126       │ - ········},
      127       │ - ········"overrides":·[]
      128       │ - ······},
      129       │ - ······"gridPos":·{
      130       │ - ········"h":·3,
      131       │ - ········"w":·3,
      132       │ - ········"x":·0,
      133       │ - ········"y":·1
      134       │ - ······},
      135       │ - ······"id":·118,
      136       │ - ······"maxDataPoints":·100,
      137       │ - ······"options":·{
      138       │ - ········"colorMode":·"value",
      139       │ - ········"fieldOptions":·{
      140       │ - ··········"calcs":·[
      141       │ - ············"lastNotNull"
      142       │ - ··········]
      143       │ - ········},
      144       │ - ········"graphMode":·"none",
      145       │ - ········"justifyMode":·"auto",
      146       │ - ········"orientation":·"horizontal",
      147       │ - ········"reduceOptions":·{
      148       │ - ··········"calcs":·[
      149       │ - ············"lastNotNull"
      150       │ - ··········],
  23330 more lines truncated


operator/charts/patroni-services/monitoring/query-exporter-grafana-dashboard.json format ━━━━━━━━━━━

  × Formatter would have printed the following content:

        1     1 │   {
        2       │ - ··"annotations":·{
        3       │ - ····"list":·[
        4       │ - ······{
        5       │ - ········"builtIn":·1,
        6       │ - ········"datasource":·{
        7       │ - ··········"type":·"datasource",
        8       │ - ··········"uid":·"grafana"
        9       │ - ········},
       10       │ - ········"enable":·true,
       11       │ - ········"hide":·true,
       12       │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
       13       │ - ········"name":·"Annotations·&·Alerts",
       14       │ - ········"target":·{
       15       │ - ··········"limit":·100,
       16       │ - ··········"matchAny":·false,
       17       │ - ··········"tags":·[],
       18       │ - ··········"type":·"dashboard"
       19       │ - ········},
       20       │ - ········"type":·"dashboard"
       21       │ - ······}
       22       │ - ····]
       23       │ - ··},
       24       │ - ··"description":·"Dashbord·works·with·postgres_exporter·for·prometheus",
       25       │ - ··"editable":·true,
       26       │ - ··"fiscalYearStartMonth":·0,
       27       │ - ··"graphTooltip":·0,
       28       │ - ··"id":·1055,
       29       │ - ··"links":·[
       30       │ - ····{
       31       │ - ······"asDropdown":·true,
       32       │ - ······"icon":·"external·link",
       33       │ - ······"includeVars":·false,
       34       │ - ······"keepTime":·false,
       35       │ - ······"tags":·[
       36       │ - ········"cloud",
       37       │ - ········"postgres"
       38       │ - ······],
       39       │ - ······"targetBlank":·true,
       40       │ - ······"title":·"Cloud·Dashboards",
       41       │ - ······"tooltip":·"",
       42       │ - ······"type":·"dashboards",
       43       │ - ······"url":·""
       44       │ - ····}
       45       │ - ··],
       46       │ - ··"panels":·[
       47       │ - ····{
       48       │ - ······"collapsed":·false,
       49       │ - ······"gridPos":·{
       50       │ - ········"h":·1,
       51       │ - ········"w":·24,
       52       │ - ········"x":·0,
       53       │ - ········"y":·0
       54       │ - ······},
       55       │ - ······"id":·32,
       56       │ - ······"panels":·[],
       57       │ - ······"title":·"System·Configuration·and·Statistics",
       58       │ - ······"type":·"row"
       59       │ - ····},
       60       │ - ····{
       61       │ - ······"datasource":·{
       62       │ - ········"type":·"prometheus",
       63       │ - ········"uid":·"$datasource"
       64       │ - ······},
       65       │ - ······"description":·"Instance·current·status.",
       66       │ - ······"fieldConfig":·{
       67       │ - ········"defaults":·{
       68       │ - ··········"mappings":·[
       69       │ - ············{
       70       │ - ··············"options":·{
       71       │ - ················"0":·{
       72       │ - ··················"text":·"Master"
       73       │ - ················},
       74       │ - ················"1":·{
       75       │ - ··················"text":·"sync"
       76       │ - ················},
       77       │ - ················"2":·{
       78       │ - ··················"text":·"async"
       79       │ - ················}
       80       │ - ··············},
       81       │ - ··············"type":·"value"
       82       │ - ············},
       83       │ - ············{
       84       │ - ··············"options":·{
       85       │ - ················"match":·"null",
       86       │ - ················"result":·{
       87       │ - ··················"text":·"not·started"
       88       │ - ················}
       89       │ - ··············},
       90       │ - ··············"type":·"special"
       91       │ - ············}
       92       │ - ··········],
       93       │ - ··········"thresholds":·{
       94       │ - ············"mode":·"absolute",
       95       │ - ············"steps":·[
       96       │ - ··············{
       97       │ - ················"color":·"#299c46",
       98       │ - ················"value":·null
       99       │ - ··············},
      100       │ - ··············{
      101       │ - ················"color":·"#FA6400",
      102       │ - ················"value":·1
      103       │ - ··············},
      104       │ - ··············{
      105       │ - ················"color":·"#d44a3a",
      106       │ - ················"value":·2
      107       │ - ··············}
      108       │ - ············]
      109       │ - ··········},
      110       │ - ··········"unit":·"none"
      111       │ - ········},
      112       │ - ········"overrides":·[]
      113       │ - ······},
      114       │ - ······"gridPos":·{
      115       │ - ········"h":·3,
      116       │ - ········"w":·3,
      117       │ - ········"x":·0,
      118       │ - ········"y":·1
      119       │ - ······},
      120       │ - ······"id":·118,
      121       │ - ······"maxDataPoints":·100,
      122       │ - ······"options":·{
      123       │ - ········"colorMode":·"value",
      124       │ - ········"fieldOptions":·{
      125       │ - ··········"calcs":·[
      126       │ - ············"lastNotNull"
      127       │ - ··········]
      128       │ - ········},
      129       │ - ········"graphMode":·"none",
      130       │ - ········"justifyMode":·"auto",
      131       │ - ········"orientation":·"horizontal",
      132       │ - ········"percentChangeColorMode":·"standard",
      133       │ - ········"reduceOptions":·{
      134       │ - ··········"calcs":·[
      135       │ - ············"lastNotNull"
      136       │ - ··········],
      137       │ - ··········"fields":·"",
      138       │ - ··········"values":·false
      139       │ - ········},
      140       │ - ········"showPercentChange":·false,
      141       │ - ········"text":·{},
      142       │ - ········"textMode":·"auto",
      143       │ - ········"wideLayout":·true
      144       │ - ······},
      145       │ - ······"pluginVersion":·"11.5.2",
      146       │ - ······"targets":·[
      147       │ - ········{
      148       │ - ··········"datasource":·{
      149       │ - ············"0":·"$",
      150       │ - ············"1":·"d",
  23700 more lines truncated


operator/charts/patroni-services/values.schema.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"$schema":·"http://json-schema.org/draft-07/schema#",
       3      │ - ··"title":·"patroni-services·values",
       4      │ - ··"type":·"object",
       5      │ - ··"additionalProperties":·true,
       6      │ - ··"properties":·{
       7      │ - ····"postgresUser":·{
       8      │ - ······"type":·"string",
       9      │ - ······"default":·"postgres",
      10      │ - ······"description":·"The·name·of·database·superuser"
      11      │ - ····},
      12      │ - ····"postgresPassword":·{
      13      │ - ······"type":·"string",
      14      │ - ······"default":·"p@ssWOrD1",
      15      │ - ······"description":·"The·password·for·the·database·superuser"
      16      │ - ····},
      17      │ - ····"replicatorPassword":·{
      18      │ - ······"type":·"string",
      19      │ - ······"default":·"replicator"
      20      │ - ····},
      21      │ - ····"podLabels":·{
      22      │ - ······"type":·"object",
      23      │ - ······"additionalProperties":·{
      24      │ - ········"type":·"string"
      25      │ - ······},
      26      │ - ······"default":·{}
      27      │ - ····},
      28      │ - ····"imagePullPolicy":·{
      29      │ - ······"type":·"string",
      30      │ - ······"default":·"IfNotPresent"
      31      │ - ····},
      32      │ - ····"privateRegistry":·{
      33      │ - ······"$ref":·"#/$defs/privateRegistry"
      34      │ - ····},
      35      │ - ····"global":·{
      36      │ - ······"$ref":·"#/$defs/global"
      37      │ - ····},
      38      │ - ····"serviceAccount":·{
      39      │ - ······"$ref":·"#/$defs/serviceAccount"
      40      │ - ····},
      41      │ - ····"operatorInit":·{
      42      │ - ······"$ref":·"#/$defs/operatorInit"
      43      │ - ····},
      44      │ - ····"operator":·{
      45      │ - ······"$ref":·"#/$defs/operator"
      46      │ - ····},
      47      │ - ····"policies":·{
      48      │ - ······"$ref":·"#/$defs/policies"
      49      │ - ····},
      50      │ - ····"tls":·{
      51      │ - ······"$ref":·"#/$defs/tls"
      52      │ - ····},
      53      │ - ····"patroni":·{
      54      │ - ······"$ref":·"#/$defs/patroni"
      55      │ - ····},
      56      │ - ····"metricCollector":·{
      57      │ - ······"$ref":·"#/$defs/metricCollector"
      58      │ - ····},
      59      │ - ····"backupDaemon":·{
      60      │ - ······"$ref":·"#/$defs/backupDaemon"
      61      │ - ····},
      62      │ - ····"pgBackRest":·{
      63      │ - ······"$ref":·"#/$defs/pgBackRest"
      64      │ - ····},
      65      │ - ····"pgBackRestExporter":·{
      66      │ - ······"$ref":·"#/$defs/pgBackRestExporter"
      67      │ - ····},
      68      │ - ····"externalDataBase":·{
      69      │ - ······"$ref":·"#/$defs/externalDataBase"
      70      │ - ····},
      71      │ - ····"dbaas":·{
      72      │ - ······"$ref":·"#/$defs/dbaas"
      73      │ - ····},
      74      │ - ····"siteManager":·{
      75      │ - ······"$ref":·"#/$defs/siteManager"
      76      │ - ····},
      77      │ - ····"queryExporter":·{
      78      │ - ······"$ref":·"#/$defs/queryExporter"
      79      │ - ····},
      80      │ - ····"powaUI":·{
      81      │ - ······"$ref":·"#/$defs/powaUI"
      82      │ - ····},
      83      │ - ····"replicationController":·{
      84      │ - ······"$ref":·"#/$defs/replicationController"
      85      │ - ····},
      86      │ - ····"connectionPooler":·{
      87      │ - ······"$ref":·"#/$defs/connectionPooler"
      88      │ - ····},
      89      │ - ····"tracing":·{
      90      │ - ······"$ref":·"#/$defs/tracing"
      91      │ - ····},
      92      │ - ····"tests":·{
      93      │ - ······"$ref":·"#/$defs/tests"
      94      │ - ····},
      95      │ - ····"runTestsOnly":·{
      96      │ - ······"type":·"boolean",
      97      │ - ······"default":·false
      98      │ - ····},
      99      │ - ····"INTERNAL_TLS_ENABLED":·{
     100      │ - ······"type":·"boolean",
     101      │ - ······"default":·false
     102      │ - ····},
     103      │ - ····"GLOBAL_SECURITY_CONTEXT":·{
     104      │ - ······"type":·"boolean",
     105      │ - ······"default":·true
     106      │ - ····},
     107      │ - ····"CLOUD_PUBLIC_HOST":·{
     108      │ - ······"type":·"string",
     109      │ - ······"default":·"k8s.default"
     110      │ - ····}
     111      │ - ··},
     112      │ - ··"$defs":·{
     113      │ - ····"privateRegistry":·{
     114      │ - ······"type":·"object",
     115      │ - ······"additionalProperties":·false,
     116      │ - ······"properties":·{
     117      │ - ········"enabled":·{
     118      │ - ··········"type":·"boolean",
     119      │ - ··········"default":·false
     120      │ - ········},
     121      │ - ········"secrets":·{
     122      │ - ··········"type":·"array",
     123      │ - ··········"items":·{
     124      │ - ············"type":·"object",
     125      │ - ············"additionalProperties":·false,
     126      │ - ············"properties":·{
     127      │ - ··············"name":·{
     128      │ - ················"type":·"string"
     129      │ - ··············},
     130      │ - ··············"create":·{
     131      │ - ················"type":·"boolean",
     132      │ - ················"default":·false
     133      │ - ··············},
     134      │ - ··············"registry":·{
     135      │ - ················"type":·"string"
     136      │ - ··············},
     137      │ - ··············"username":·{
     138      │ - ················"type":·"string"
     139      │ - ··············},
     140      │ - ··············"password":·{
     141      │ - ················"type":·"string"
     142      │ - ··············},
     143      │ - ··············"email":·{
     144      │ - ················"type":·"string"
     145      │ - ··············}
     146      │ - ············}
     147      │ - ··········}
     148      │ - ········}
     149      │ - ······}
     150      │ - ····},
  2533 more lines truncated


format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Some errors were emitted while running checks.

CHECKOV
dockerfile scan results:

Passed checks: 1665, Failed checks: 1, Skipped checks: 1

Check: CKV_DOCKER_3: "Ensure that a user for the container has been created"
	FAILED for resource: /services/backup-daemon/Dockerfile.
	File: /services/backup-daemon/Dockerfile:1-99
	Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/docker-policies/docker-policy-index/ensure-that-a-user-for-the-container-has-been-created

		Code lines for this resource are too many. Please use IDE of your choice to review the file.
github_actions scan results:

Passed checks: 324, Failed checks: 0, Skipped checks: 0
EDITORCONFIG
�[33;1mservices/backup-daemon/maintenance/recovery/utils_oc.py:�[33;0m
�[31;1m	Final newline expected�[33;0m
�[31;1m	207: Trailing whitespace�[33;0m
�[31;1m	484: Trailing whitespace�[33;0m
�[31;1m	490: Trailing whitespace�[33;0m
�[31;1m	493: Trailing whitespace�[33;0m
�[31;1m
5 errors found�[33;0m
GITHUB_ACTIONS_ZIZMOR
�[1m�[33mwarning[excessive-permissions]�[0m�[1m: overly broad permissions�[0m
  �[1m�[94m--> �[0m/github/workspace/.github/workflows/super-linter.yaml:27:3
   �[1m�[94m|�[0m
�[1m�[94m27�[0m �[1m�[94m|�[0m �[1m�[33m/�[0m   run-lint:
�[1m�[94m28�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m     runs-on: ubuntu-latest
�[1m�[94m29�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m     steps:
�[1m�[94m30�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m       - name: Checkout code
�[1m�[94m...�[0m  �[1m�[33m|�[0m
�[1m�[94m48�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m           VALIDATE_ALL_CODEBASE: ${{ inputs.full_scan || false }}
�[1m�[94m49�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
   �[1m�[94m|�[0m �[1m�[33m|�[0m                                                    �[1m�[33m^�[0m
   �[1m�[94m|�[0m �[1m�[33m|�[0m                                                    �[1m�[33m|�[0m
   �[1m�[94m|�[0m �[1m�[33m|____________________________________________________�[0m�[1m�[94mthis job�[0m
   �[1m�[94m|�[0m                                                      �[1m�[33mdefault permissions used due to no permissions: block�[0m
   �[1m�[94m|�[0m
   �[1m�[94m= �[0m�[1mnote�[0m: audit confidence → Medium
   �[1m�[94m= �[0m�[1mhelp�[0m: audit documentation → �[32mhttps://docs.zizmor.sh/audits/#excessive-permissions�[39m

�[1m�[91merror[unpinned-uses]�[0m�[1m: unpinned action reference�[0m
  �[1m�[94m--> �[0m/github/workspace/.github/workflows/super-linter.yaml:31:15
   �[1m�[94m|�[0m
�[1m�[94m31�[0m �[1m�[94m|�[0m         uses: actions/checkout@v4
   �[1m�[94m|�[0m               �[1m�[91m^^^^^^^^^^^^^^^^^^^�[0m �[1m�[91maction is not pinned to a hash (required by blanket policy)�[0m
   �[1m�[94m|�[0m
   �[1m�[94m= �[0m�[1mnote�[0m: audit confidence → High
   �[1m�[94m= �[0m�[1mnote�[0m: this finding has an auto-fix
   �[1m�[94m= �[0m�[1mhelp�[0m: audit documentation → �[32mhttps://docs.zizmor.sh/audits/#unpinned-uses�[39m

�[32m5�[39m findings (�[1m�[93m3�[39m suppressed, �[92m1�[39m fixable�[0m): �[35m0�[39m informational, �[36m0�[39m low, �[33m1�[39m medium, �[31m1�[39m high🌈 zizmor v1.23.1
�[32m INFO�[0m �[1maudit�[0m�[2m:�[0m �[2mzizmor�[0m�[2m:�[0m 🌈 completed /github/workspace/.github/workflows/super-linter.yaml
GO
0 issues.level=error msg="[linters_context] typechecking error: named files must all be in one directory; have /github/workspace/operator/pkg/reconciler and /github/workspace/services/replication-controller/cmd/pgskipper-replication-controller"
GO_MODULES
0 issues.
0 issues.
0 issues.
../../operator/pkg/client/client.go:241:6: func getEnv is unused (unused)
func getEnv(key, fallback string) string {
     ^
1 issues:
* unused: 1
0 issues.
0 issues.
../../services/dbaas-adapter/adapter/basic/basic.go:437:24: QF1001: could apply De Morgan's law (staticcheck)
	if version == "v2" && !(util.Contains(sa.GetSupportedRoles(), postgresUserRequest.Role) || postgresUserRequest.Role == "none") {
	                      ^
../../services/dbaas-adapter/adapter/basic/basic.go:1000:2: QF1003: could use tagged switch on resource.Kind (staticcheck)
	if resource.Kind == DbKind {
	^
../../services/dbaas-adapter/adapter/basic/basic.go:1382:29: QF1008: could remove embedded field "ClusterAdapter" from selector (staticcheck)
	values := strings.Split(sa.ClusterAdapter.GetUser(), "@")
	                           ^
../../services/dbaas-adapter/adapter/basic/basic_roles.go:237:83: QF1008: could remove embedded field "ClusterAdapter" from selector (staticcheck)
		if metadataOwner != "" && adminUserName != metadataOwner && metadataOwner != sa.ClusterAdapter.GetUser() {
		                                                                                ^
../../services/dbaas-adapter/adapter/basic/sql_helper.go:173:56: QF1004: could use strings.ReplaceAll instead (staticcheck)
	return fmt.Sprintf("DROP DATABASE IF EXISTS \"%s\";", strings.Replace(dbName, "\"", "\\\"", -1))
	                                                      ^
5 issues:
* staticcheck: 5
0 issues.
0 issues.
0 issues.
../../services/monitoring-agent/collector/pkg/postgres/client.go:63:2: QF1007: could merge conditional assignment into variable declaration (staticcheck)
	ssl := false
	^
1 issues:
* staticcheck: 1
0 issues.
../../services/monitoring-agent/collector/pkg/util/util.go:191:23: Error return value of `resp.Body.Close` is not checked (errcheck)
	defer resp.Body.Close()
	                     ^
1 issues:
* errcheck: 1
../../services/pgbackrest-sidecar/pkg/utils/utils.go:39:50: ST1008: error should be returned as the last argument (staticcheck)
func ExecCommand(command string, args []string) (error, string) {
                                                 ^
1 issues:
* staticcheck: 1
PYTHON_RUFF
F403 `from utils_common import *` used; unable to detect undefined names
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:20:1
   |
18 | import subprocess
19 | import logging
20 | from utils_common import *
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
21 | import pprint
22 | import time
   |

F401 [*] `pprint` imported but unused
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:21:8
   |
19 | import logging
20 | from utils_common import *
21 | import pprint
   |        ^^^^^^
22 | import time
23 | import re
   |
help: Remove unused import: `pprint`

F401 `kubernetes.client.configuration` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:29:35
   |
27 | try:
28 |     from kubernetes import client
29 |     from kubernetes.client import configuration
   |                                   ^^^^^^^^^^^^^
30 |     from kubernetes.client import rest
31 |     #from openshift import client as op_client
   |
help: Remove unused import: `kubernetes.client.configuration`

F401 `kubernetes.client.rest` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:30:35
   |
28 |     from kubernetes import client
29 |     from kubernetes.client import configuration
30 |     from kubernetes.client import rest
   |                                   ^^^^
31 |     #from openshift import client as op_client
32 |     from kubernetes.client.rest import ApiException
   |
help: Remove unused import: `kubernetes.client.rest`

F401 `kubernetes.stream.ws_client.STDOUT_CHANNEL` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:34:60
   |
32 |     from kubernetes.client.rest import ApiException
33 |     from kubernetes.stream import stream
34 |     from kubernetes.stream.ws_client import ERROR_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL
   |                                                            ^^^^^^^^^^^^^^
35 |     import kubernetes
36 |     from six import iteritems
   |
help: Remove unused import

F401 `kubernetes.stream.ws_client.STDERR_CHANNEL` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:34:76
   |
32 |     from kubernetes.client.rest import ApiException
33 |     from kubernetes.stream import stream
34 |     from kubernetes.stream.ws_client import ERROR_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL
   |                                                                            ^^^^^^^^^^^^^^
35 |     import kubernetes
36 |     from six import iteritems
   |
help: Remove unused import

F841 [*] Local variable `e` is assigned to but never used
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:85:23
   |
84 |     use_kube_client = True
85 | except ImportError as e:
   |                       ^
86 |     log.exception("Cannot use python client")
87 |     use_kube_client = False
   |
help: Remove assignment to unused variable `e`

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:439:6
    |
437 |                 raise Exception("Cannot remove pod. Error: {}".format(error))
438 |
439 |     @retry(tries=5)  # handle case when DC version is Unknown
    |      ^^^^^
440 |     def scale(self, name, count, entity="dc"):
441 |         subprocess.check_call("{} scale --replicas={} {} {}"
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:525:13
    |
523 |                 apps_api = client.AppsV1Api(self._api_client)
524 |                 items = apps_api.list_namespaced_stateful_set(self.project).items
525 |             except:
    |             ^^^^^^
526 |                 apps_api = client.AppsV1beta1Api(self._api_client)
527 |                 items = apps_api.list_namespaced_stateful_set(self.project).items
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:532:13
    |
530 |                 apps_api = client.AppsV1beta1Api(self._api_client)
531 |                 items = apps_api.list_namespaced_deployment(self.project).items
532 |             except:
    |             ^^^^^^
533 |                 apps_api = client.AppsV1Api(self._api_client)
534 |                 items = apps_api.list_namespaced_deployment(self.project).items
    |

F841 [*] Local variable `e` is assigned to but never used
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:580:29
    |
578 |         try:
579 |             return self.get_entity(entity_type, entity_name)
580 |         except Exception as e:
    |                             ^
581 |             return None
    |
help: Remove assignment to unused variable `e`

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:648:6
    |
646 |                 raise e
647 |
648 |     @retry(tries=30, delay=5)
    |      ^^^^^
649 |     def oc_exec(self, pod_id, command):
650 |         log.debug(f"Try to execute '{command}' on pod {pod_id}")
    |

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:746:6
    |
744 |                 raise ae
745 |
746 |     @retry(tries=5)  # handle case when DC version is Unknown
    |      ^^^^^
747 |     def scale(self, name, count, entity="dc"):
748 |         log.debug("Try to scale {} {} to {} replicas".format(entity, name, count))
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:759:13
    |
757 |                 core_api = client.AppsV1beta1Api(self._api_client)
758 |                 data = core_api.patch_namespaced_deployment(name, self.project, {"spec": {"replicas": count}})
759 |             except:
    |             ^^^^^^
760 |                 core_api = client.AppsV1Api(self._api_client)
761 |                 data = core_api.patch_namespaced_deployment(name, self.project, {"spec": {"replicas": count}})
    |

F405 `Differ` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:767:16
    |
766 |     def get_json_diff(self, source, data):
767 |         return Differ().get_json_diff(source, data, keep_name=True)
    |                ^^^^^^
768 |
769 |     def apply_object(self, data):
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:813:13
    |
811 |                 apps_api = client.AppsV1beta1ApiApi(self._api_client)
812 |                 source = reset_last_applied(self.get_entity("deployment", entity_name))
813 |             except:
    |             ^^^^^^
814 |                 apps_api = client.AppsV1Api(self._api_client)
815 |                 source = reset_last_applied(self.get_entity("deployment", entity_name))
    |

Found 16 errors.
[*] 3 fixable with the `--fix` option.
PYTHON_RUFF_FORMAT
Would reformat: services/backup-daemon/maintenance/recovery/utils_oc.py
1 file would be reformatted

@github-actions

Copy link
Copy Markdown
Contributor

Super-linter summary

Language Validation result
BIOME_FORMAT Fail ❌
BIOME_LINT Pass ✅
CHECKOV Pass ✅
DOCKERFILE_HADOLINT Fail ❌
EDITORCONFIG Fail ❌
GITHUB_ACTIONS Pass ✅
GITHUB_ACTIONS_ZIZMOR Fail ❌
GITLEAKS Pass ✅
GIT_MERGE_CONFLICT_MARKERS Pass ✅
GO Fail ❌
GO_MODULES Fail ❌
JSON Pass ✅
PRE_COMMIT Pass ✅
PYTHON_RUFF Fail ❌
PYTHON_RUFF_FORMAT Fail ❌
SPELL_CODESPELL Pass ✅
YAML Pass ✅

Super-linter detected linting errors

For more information, see the GitHub Actions workflow run

Powered by Super-linter

BIOME_FORMAT
Checked 11 files in 315ms. No fixes applied.
Found 11 errors..github/linters/.jscpd.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

     1  1 │   {
     2    │ - ··"threshold":·2,
     3    │ - ··"ignore":·[
     4    │ - ····"**/.git/**",
     5    │ - ····"**/charts/*/templates/*/*.yaml",
     6    │ - ····"**/charts/*/templates/*/*/*.yaml",
     7    │ - ····"**/docs/examples/**"
     8    │ - ··]
        2 │ + → "threshold":·2,
        3 │ + → "ignore":·[
        4 │ + → → "**/.git/**",
        5 │ + → → "**/charts/*/templates/*/*.yaml",
        6 │ + → → "**/charts/*/templates/*/*/*.yaml",
        7 │ + → → "**/docs/examples/**"
        8 │ + → ]
     9  9 │   }
    10 10 │


.qubership/grand-report.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

    1   │ - {
    2   │ -
    3   │ - }
      1 │ + {}
      2 │ +


operator/charts/patroni-core/values.schema.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

      1   1 │   {
      2     │ - ··"$schema":·"http://json-schema.org/draft-07/schema#",
      3     │ - ··"title":·"patroni-core·values",
      4     │ - ··"type":·"object",
      5     │ - ··"additionalProperties":·true,
      6     │ - ··"properties":·{
      7     │ - ····"postgresUser":·{
      8     │ - ······"type":·"string",
      9     │ - ······"default":·"postgres",
     10     │ - ······"description":·"The·name·of·database·superuser"
     11     │ - ····},
     12     │ - ····"postgresPassword":·{
     13     │ - ······"type":·"string",
     14     │ - ······"default":·"p@ssWOrD1",
     15     │ - ······"description":·"The·password·for·the·database·superuser"
     16     │ - ····},
     17     │ - ····"replicatorPassword":·{
     18     │ - ······"type":·"string",
     19     │ - ······"default":·"replicator",
     20     │ - ······"description":·"Password·for·replicator·user"
     21     │ - ····},
     22     │ - ····"podLabels":·{
     23     │ - ······"type":·"object",
     24     │ - ······"additionalProperties":·{
     25     │ - ········"type":·"string"
     26     │ - ······},
     27     │ - ······"default":·{}
     28     │ - ····},
     29     │ - ····"imagePullPolicy":·{
     30     │ - ······"type":·"string",
     31     │ - ······"default":·"IfNotPresent",
     32     │ - ······"description":·"Image·pull·policy·for·containers"
     33     │ - ····},
     34     │ - ····"privateRegistry":·{
     35     │ - ······"$ref":·"#/$defs/privateRegistry"
     36     │ - ····},
     37     │ - ····"global":·{
     38     │ - ······"$ref":·"#/$defs/global"
     39     │ - ····},
     40     │ - ····"serviceAccount":·{
     41     │ - ······"$ref":·"#/$defs/serviceAccount"
     42     │ - ····},
     43     │ - ····"operatorInit":·{
     44     │ - ······"$ref":·"#/$defs/operatorInit"
     45     │ - ····},
     46     │ - ····"operator":·{
     47     │ - ······"$ref":·"#/$defs/operator"
     48     │ - ····},
     49     │ - ····"policies":·{
     50     │ - ······"$ref":·"#/$defs/policies"
     51     │ - ····},
     52     │ - ····"tls":·{
     53     │ - ······"$ref":·"#/$defs/tls"
     54     │ - ····},
     55     │ - ····"ldap":·{
     56     │ - ······"$ref":·"#/$defs/ldap"
     57     │ - ····},
     58     │ - ····"patroni":·{
     59     │ - ······"$ref":·"#/$defs/patroni"
     60     │ - ····},
     61     │ - ····"pgBackRest":·{
     62     │ - ······"$ref":·"#/$defs/pgBackRest"
     63     │ - ····},
     64     │ - ····"tests":·{
     65     │ - ······"$ref":·"#/$defs/tests"
     66     │ - ····},
     67     │ - ····"runTestsOnly":·{
     68     │ - ······"type":·"boolean",
     69     │ - ······"default":·false
     70     │ - ····},
     71     │ - ····"INTERNAL_TLS_ENABLED":·{
     72     │ - ······"type":·"boolean",
     73     │ - ······"default":·false
     74     │ - ····},
     75     │ - ····"GLOBAL_SECURITY_CONTEXT":·{
     76     │ - ······"type":·"boolean",
     77     │ - ······"default":·true
     78     │ - ····},
     79     │ - ····"CLOUD_PUBLIC_HOST":·{
     80     │ - ······"type":·"string",
     81     │ - ······"default":·"k8s.default"
     82     │ - ····},
     83     │ - ····"majorUpgrade":·{
     84     │ - ······"$ref":·"#/$defs/majorUpgrade"
     85     │ - ····}
     86     │ - ··},
     87     │ - ··"$defs":·{
     88     │ - ····"privateRegistry":·{
     89     │ - ······"type":·"object",
     90     │ - ······"additionalProperties":·false,
     91     │ - ······"properties":·{
     92     │ - ········"enabled":·{
     93     │ - ··········"type":·"boolean",
     94     │ - ··········"default":·false
     95     │ - ········},
     96     │ - ········"secrets":·{
     97     │ - ··········"type":·"array",
     98     │ - ··········"items":·{
     99     │ - ············"type":·"object",
    100     │ - ············"additionalProperties":·false,
    101     │ - ············"properties":·{
    102     │ - ··············"name":·{
    103     │ - ················"type":·"string"
    104     │ - ··············},
    105     │ - ··············"create":·{
    106     │ - ················"type":·"boolean",
    107     │ - ················"default":·false
    108     │ - ··············},
    109     │ - ··············"registry":·{
    110     │ - ················"type":·"string"
    111     │ - ··············},
    112     │ - ··············"username":·{
    113     │ - ················"type":·"string"
    114     │ - ··············},
    115     │ - ··············"password":·{
    116     │ - ················"type":·"string"
    117     │ - ··············},
    118     │ - ··············"email":·{
    119     │ - ················"type":·"string"
    120     │ - ··············}
    121     │ - ············}
    122     │ - ··········}
    123     │ - ········}
    124     │ - ······}
    125     │ - ····},
    126     │ - ····"global":·{
    127     │ - ······"type":·"object",
    128     │ - ······"additionalProperties":·true,
    129     │ - ······"properties":·{
    130     │ - ········"cloudIntegrationEnabled":·{
    131     │ - ··········"type":·"boolean",
    132     │ - ··········"default":·true
    133     │ - ········}
    134     │ - ······}
    135     │ - ····},
    136     │ - ····"serviceAccount":·{
    137     │ - ······"type":·"object",
    138     │ - ······"additionalProperties":·false,
    139     │ - ······"properties":·{
    140     │ - ········"create":·{
    141     │ - ··········"type":·"boolean",
    142     │ - ··········"default":·true
    143     │ - ········},
    144     │ - ········"name":·{
    145     │ - ··········"type":·"string",
    146     │ - ··········"default":·"patroni-sa"
    147     │ - ········}
    148     │ - ······}
    149     │ - ····},
    150     │ - ····"operatorInit":·{
  1583 more lines truncated


operator/charts/patroni-services/monitoring/aws-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·169,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"The·percentage·of·CPU·used·by·an·Aurora·DB·instance",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"barWidthFactor":·0.6,
      78      │ - ············"drawStyle":·"line",
      79      │ - ············"fillOpacity":·20,
      80      │ - ············"gradientMode":·"none",
      81      │ - ············"hideFrom":·{
      82      │ - ··············"legend":·false,
      83      │ - ··············"tooltip":·false,
      84      │ - ··············"viz":·false
      85      │ - ············},
      86      │ - ············"insertNulls":·false,
      87      │ - ············"lineInterpolation":·"linear",
      88      │ - ············"lineWidth":·2,
      89      │ - ············"pointSize":·5,
      90      │ - ············"scaleDistribution":·{
      91      │ - ··············"type":·"linear"
      92      │ - ············},
      93      │ - ············"showPoints":·"never",
      94      │ - ············"spanNulls":·true,
      95      │ - ············"stacking":·{
      96      │ - ··············"group":·"A",
      97      │ - ··············"mode":·"none"
      98      │ - ············},
      99      │ - ············"thresholdsStyle":·{
     100      │ - ··············"mode":·"off"
     101      │ - ············}
     102      │ - ··········},
     103      │ - ··········"mappings":·[],
     104      │ - ··········"min":·0,
     105      │ - ··········"thresholds":·{
     106      │ - ············"mode":·"absolute",
     107      │ - ············"steps":·[
     108      │ - ··············{
     109      │ - ················"color":·"green",
     110      │ - ················"value":·null
     111      │ - ··············},
     112      │ - ··············{
     113      │ - ················"color":·"red",
     114      │ - ················"value":·80
     115      │ - ··············}
     116      │ - ············]
     117      │ - ··········},
     118      │ - ··········"unit":·"percent"
     119      │ - ········},
     120      │ - ········"overrides":·[
     121      │ - ··········{
     122      │ - ············"matcher":·{
     123      │ - ··············"id":·"byName",
     124      │ - ··············"options":·"CPU"
     125      │ - ············},
     126      │ - ············"properties":·[
     127      │ - ··············{
     128      │ - ················"id":·"color",
     129      │ - ················"value":·{
     130      │ - ··················"fixedColor":·"#E24D42",
     131      │ - ··················"mode":·"fixed"
     132      │ - ················}
     133      │ - ··············}
     134      │ - ············]
     135      │ - ··········}
     136      │ - ········]
     137      │ - ······},
     138      │ - ······"gridPos":·{
     139      │ - ········"h":·7,
     140      │ - ········"w":·12,
     141      │ - ········"x":·0,
     142      │ - ········"y":·1
     143      │ - ······},
     144      │ - ······"id":·2,
     145      │ - ······"options":·{
     146      │ - ········"legend":·{
     147      │ - ··········"calcs":·[
     148      │ - ············"mean",
     149      │ - ············"max",
     150      │ - ············"min"
  3892 more lines truncated


operator/charts/patroni-services/monitoring/azure-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·36,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"Indicates·if·the·database·is·up·or·not",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"drawStyle":·"line",
      78      │ - ············"fillOpacity":·20,
      79      │ - ············"gradientMode":·"none",
      80      │ - ············"hideFrom":·{
      81      │ - ··············"legend":·false,
      82      │ - ··············"tooltip":·false,
      83      │ - ··············"viz":·false
      84      │ - ············},
      85      │ - ············"insertNulls":·false,
      86      │ - ············"lineInterpolation":·"linear",
      87      │ - ············"lineStyle":·{
      88      │ - ··············"fill":·"solid"
      89      │ - ············},
      90      │ - ············"lineWidth":·2,
      91      │ - ············"pointSize":·5,
      92      │ - ············"scaleDistribution":·{
      93      │ - ··············"type":·"linear"
      94      │ - ············},
      95      │ - ············"showPoints":·"never",
      96      │ - ············"spanNulls":·true,
      97      │ - ············"stacking":·{
      98      │ - ··············"group":·"A",
      99      │ - ··············"mode":·"none"
     100      │ - ············},
     101      │ - ············"thresholdsStyle":·{
     102      │ - ··············"mode":·"off"
     103      │ - ············}
     104      │ - ··········},
     105      │ - ··········"mappings":·[],
     106      │ - ··········"min":·0,
     107      │ - ··········"thresholds":·{
     108      │ - ············"mode":·"absolute",
     109      │ - ············"steps":·[
     110      │ - ··············{
     111      │ - ················"color":·"green",
     112      │ - ················"value":·null
     113      │ - ··············}
     114      │ - ············]
     115      │ - ··········},
     116      │ - ··········"unit":·"bool_on_off"
     117      │ - ········},
     118      │ - ········"overrides":·[]
     119      │ - ······},
     120      │ - ······"gridPos":·{
     121      │ - ········"h":·7,
     122      │ - ········"w":·5,
     123      │ - ········"x":·0,
     124      │ - ········"y":·1
     125      │ - ······},
     126      │ - ······"id":·2,
     127      │ - ······"options":·{
     128      │ - ········"legend":·{
     129      │ - ··········"calcs":·[],
     130      │ - ··········"displayMode":·"table",
     131      │ - ··········"placement":·"bottom",
     132      │ - ··········"showLegend":·true
     133      │ - ········},
     134      │ - ········"tooltip":·{
     135      │ - ··········"mode":·"multi",
     136      │ - ··········"sort":·"none"
     137      │ - ········}
     138      │ - ······},
     139      │ - ······"pluginVersion":·"9.5.5",
     140      │ - ······"targets":·[
     141      │ - ········{
     142      │ - ··········"datasource":·{
     143      │ - ············"type":·"prometheus",
     144      │ - ············"uid":·"${datasource}"
     145      │ - ··········},
     146      │ - ··········"editorMode":·"code",
     147      │ - ··········"exemplar":·true,
     148      │ - ··········"expr":·"postgresql_is_db_alive{instance_name=~'${instance}',·cluster=~\"$cluster\"}",
     149      │ - ··········"interval":·"",
     150      │ - ··········"legendFormat":·"Is·db·alive",
  2268 more lines truncated


operator/charts/patroni-services/monitoring/cloudsql-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·166,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"Current·CPU·utilization·represented·as·a·percentage·of·the·reserved·CPU·that·is·currently·in·use.",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"barWidthFactor":·0.6,
      78      │ - ············"drawStyle":·"line",
      79      │ - ············"fillOpacity":·20,
      80      │ - ············"gradientMode":·"none",
      81      │ - ············"hideFrom":·{
      82      │ - ··············"legend":·false,
      83      │ - ··············"tooltip":·false,
      84      │ - ··············"viz":·false
      85      │ - ············},
      86      │ - ············"insertNulls":·false,
      87      │ - ············"lineInterpolation":·"linear",
      88      │ - ············"lineWidth":·2,
      89      │ - ············"pointSize":·5,
      90      │ - ············"scaleDistribution":·{
      91      │ - ··············"type":·"linear"
      92      │ - ············},
      93      │ - ············"showPoints":·"never",
      94      │ - ············"spanNulls":·true,
      95      │ - ············"stacking":·{
      96      │ - ··············"group":·"A",
      97      │ - ··············"mode":·"none"
      98      │ - ············},
      99      │ - ············"thresholdsStyle":·{
     100      │ - ··············"mode":·"off"
     101      │ - ············}
     102      │ - ··········},
     103      │ - ··········"mappings":·[],
     104      │ - ··········"min":·0,
     105      │ - ··········"thresholds":·{
     106      │ - ············"mode":·"absolute",
     107      │ - ············"steps":·[
     108      │ - ··············{
     109      │ - ················"color":·"green",
     110      │ - ················"value":·null
     111      │ - ··············},
     112      │ - ··············{
     113      │ - ················"color":·"red",
     114      │ - ················"value":·80
     115      │ - ··············}
     116      │ - ············]
     117      │ - ··········},
     118      │ - ··········"unit":·"percentunit"
     119      │ - ········},
     120      │ - ········"overrides":·[
     121      │ - ··········{
     122      │ - ············"matcher":·{
     123      │ - ··············"id":·"byName",
     124      │ - ··············"options":·"CPU"
     125      │ - ············},
     126      │ - ············"properties":·[
     127      │ - ··············{
     128      │ - ················"id":·"color",
     129      │ - ················"value":·{
     130      │ - ··················"fixedColor":·"#E24D42",
     131      │ - ··················"mode":·"fixed"
     132      │ - ················}
     133      │ - ··············}
     134      │ - ············]
     135      │ - ··········}
     136      │ - ········]
     137      │ - ······},
     138      │ - ······"gridPos":·{
     139      │ - ········"h":·7,
     140      │ - ········"w":·12,
     141      │ - ········"x":·0,
     142      │ - ········"y":·1
     143      │ - ······},
     144      │ - ······"id":·2,
     145      │ - ······"options":·{
     146      │ - ········"legend":·{
     147      │ - ··········"calcs":·[
     148      │ - ············"mean",
     149      │ - ············"max",
     150      │ - ············"min"
  2298 more lines truncated


operator/charts/patroni-services/monitoring/grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Metrics·for·PostgreSQL·Cluster",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"graphTooltip":·1,
      28      │ - ··"id":·373,
      29      │ - ··"links":·[
      30      │ - ····{
      31      │ - ······"asDropdown":·false,
      32      │ - ······"icon":·"external·link",
      33      │ - ······"includeVars":·false,
      34      │ - ······"keepTime":·false,
      35      │ - ······"tags":·[
      36      │ - ········"Postgres_Performance"
      37      │ - ······],
      38      │ - ······"targetBlank":·false,
      39      │ - ······"title":·"PostgreSQL·Performance·Metrics",
      40      │ - ······"tooltip":·"",
      41      │ - ······"type":·"dashboards",
      42      │ - ······"url":·""
      43      │ - ····},
      44      │ - ····{
      45      │ - ······"asDropdown":·false,
      46      │ - ······"icon":·"external·link",
      47      │ - ······"includeVars":·false,
      48      │ - ······"keepTime":·false,
      49      │ - ······"tags":·[
      50      │ - ········"Postgres_Exporter"
      51      │ - ······],
      52      │ - ······"targetBlank":·false,
      53      │ - ······"title":·"Postgres·Exporter",
      54      │ - ······"tooltip":·"",
      55      │ - ······"type":·"dashboards",
      56      │ - ······"url":·""
      57      │ - ····}
      58      │ - ··],
      59      │ - ··"panels":·[
      60      │ - ····{
      61      │ - ······"collapsed":·true,
      62      │ - ······"gridPos":·{
      63      │ - ········"h":·1,
      64      │ - ········"w":·24,
      65      │ - ········"x":·0,
      66      │ - ········"y":·0
      67      │ - ······},
      68      │ - ······"id":·980,
      69      │ - ······"panels":·[
      70      │ - ········{
      71      │ - ··········"datasource":·{
      72      │ - ············"type":·"prometheus",
      73      │ - ············"uid":·"$datasource"
      74      │ - ··········},
      75      │ - ··········"fieldConfig":·{
      76      │ - ············"defaults":·{
      77      │ - ··············"color":·{
      78      │ - ················"mode":·"thresholds"
      79      │ - ··············},
      80      │ - ··············"mappings":·[
      81      │ - ················{
      82      │ - ··················"options":·{
      83      │ - ····················"0":·{
      84      │ - ······················"index":·2,
      85      │ - ······················"text":·"UP"
      86      │ - ····················},
      87      │ - ····················"6":·{
      88      │ - ······················"index":·1,
      89      │ - ······················"text":·"DEGRADED"
      90      │ - ····················},
      91      │ - ····················"10":·{
      92      │ - ······················"index":·0,
      93      │ - ······················"text":·"DOWN"
      94      │ - ····················},
      95      │ - ····················"11":·{
      96      │ - ······················"color":·"dark-green",
      97      │ - ······················"index":·3,
      98      │ - ······················"text":·"UP·(EXTERNAL)"
      99      │ - ····················}
     100      │ - ··················},
     101      │ - ··················"type":·"value"
     102      │ - ················}
     103      │ - ··············],
     104      │ - ··············"thresholds":·{
     105      │ - ················"mode":·"absolute",
     106      │ - ················"steps":·[
     107      │ - ··················{
     108      │ - ····················"color":·"rgba(50,·172,·45,·0.97)"
     109      │ - ··················},
     110      │ - ··················{
     111      │ - ····················"color":·"rgba(237,·129,·40,·0.89)",
     112      │ - ····················"value":·3
     113      │ - ··················},
     114      │ - ··················{
     115      │ - ····················"color":·"rgba(245,·54,·54,·0.9)",
     116      │ - ····················"value":·6
     117      │ - ··················}
     118      │ - ················]
     119      │ - ··············},
     120      │ - ··············"unit":·"none"
     121      │ - ············},
     122      │ - ············"overrides":·[]
     123      │ - ··········},
     124      │ - ··········"gridPos":·{
     125      │ - ············"h":·7,
     126      │ - ············"w":·4,
     127      │ - ············"x":·0,
     128      │ - ············"y":·39
     129      │ - ··········},
     130      │ - ··········"id":·10,
     131      │ - ··········"interval":·"$inter",
     132      │ - ··········"maxDataPoints":·100,
     133      │ - ··········"options":·{
     134      │ - ············"colorMode":·"value",
     135      │ - ············"graphMode":·"area",
     136      │ - ············"justifyMode":·"auto",
     137      │ - ············"orientation":·"horizontal",
     138      │ - ············"percentChangeColorMode":·"standard",
     139      │ - ············"reduceOptions":·{
     140      │ - ··············"calcs":·[
     141      │ - ················"lastNotNull"
     142      │ - ··············],
     143      │ - ··············"fields":·"",
     144      │ - ··············"values":·false
     145      │ - ············},
     146      │ - ············"showPercentChange":·false,
     147      │ - ············"textMode":·"auto",
     148      │ - ············"wideLayout":·true
     149      │ - ··········},
     150      │ - ··········"pluginVersion":·"10.4.13",
  18231 more lines truncated


operator/charts/patroni-services/monitoring/pgbackrest-exporter-grafana-dashboard.json format ━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Dashboard·works·with·pgbackrest_exporter",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"graphTooltip":·0,
      28      │ - ··"id":·278,
      29      │ - ··"links":·[],
      30      │ - ··"panels":·[
      31      │ - ····{
      32      │ - ······"collapsed":·false,
      33      │ - ······"gridPos":·{
      34      │ - ········"h":·1,
      35      │ - ········"w":·24,
      36      │ - ········"x":·0,
      37      │ - ········"y":·0
      38      │ - ······},
      39      │ - ······"id":·46,
      40      │ - ······"panels":·[],
      41      │ - ······"title":·"General·info",
      42      │ - ······"type":·"row"
      43      │ - ····},
      44      │ - ····{
      45      │ - ······"datasource":·{
      46      │ - ········"type":·"prometheus",
      47      │ - ········"uid":·"${datasource}"
      48      │ - ······},
      49      │ - ······"description":·"Count·of·selected·stanzas.",
      50      │ - ······"fieldConfig":·{
      51      │ - ········"defaults":·{
      52      │ - ··········"color":·{
      53      │ - ············"mode":·"thresholds"
      54      │ - ··········},
      55      │ - ··········"mappings":·[],
      56      │ - ··········"thresholds":·{
      57      │ - ············"mode":·"absolute",
      58      │ - ············"steps":·[
      59      │ - ··············{
      60      │ - ················"color":·"green"
      61      │ - ··············}
      62      │ - ············]
      63      │ - ··········}
      64      │ - ········},
      65      │ - ········"overrides":·[]
      66      │ - ······},
      67      │ - ······"gridPos":·{
      68      │ - ········"h":·4,
      69      │ - ········"w":·4,
      70      │ - ········"x":·0,
      71      │ - ········"y":·1
      72      │ - ······},
      73      │ - ······"id":·57,
      74      │ - ······"options":·{
      75      │ - ········"colorMode":·"value",
      76      │ - ········"graphMode":·"area",
      77      │ - ········"justifyMode":·"auto",
      78      │ - ········"orientation":·"auto",
      79      │ - ········"percentChangeColorMode":·"standard",
      80      │ - ········"reduceOptions":·{
      81      │ - ··········"calcs":·[
      82      │ - ············"lastNotNull"
      83      │ - ··········],
      84      │ - ··········"fields":·"",
      85      │ - ··········"values":·false
      86      │ - ········},
      87      │ - ········"showPercentChange":·false,
      88      │ - ········"textMode":·"value",
      89      │ - ········"wideLayout":·true
      90      │ - ······},
      91      │ - ······"pluginVersion":·"11.6.5",
      92      │ - ······"targets":·[
      93      │ - ········{
      94      │ - ··········"datasource":·{
      95      │ - ············"type":·"prometheus",
      96      │ - ············"uid":·"${datasource}"
      97      │ - ··········},
      98      │ - ··········"editorMode":·"code",
      99      │ - ··········"expr":·"sum(count·by·(stanza)(pgbackrest_stanza_status{stanza=~\"$stanza\",·cluster=\"$cluster\",·namespace=\"$namespace\"}))",
     100      │ - ··········"legendFormat":·"__auto",
     101      │ - ··········"range":·true,
     102      │ - ··········"refId":·"A"
     103      │ - ········}
     104      │ - ······],
     105      │ - ······"title":·"Stanzas·CNT",
     106      │ - ······"type":·"stat"
     107      │ - ····},
     108      │ - ····{
     109      │ - ······"datasource":·{
     110      │ - ········"type":·"prometheus",
     111      │ - ········"uid":·"${datasource}"
     112      │ - ······},
     113      │ - ······"description":·"Count·of·all·backups·for·selected·stanzas·and·repos.",
     114      │ - ······"fieldConfig":·{
     115      │ - ········"defaults":·{
     116      │ - ··········"color":·{
     117      │ - ············"mode":·"thresholds"
     118      │ - ··········},
     119      │ - ··········"mappings":·[],
     120      │ - ··········"thresholds":·{
     121      │ - ············"mode":·"absolute",
     122      │ - ············"steps":·[
     123      │ - ··············{
     124      │ - ················"color":·"green"
     125      │ - ··············}
     126      │ - ············]
     127      │ - ··········}
     128      │ - ········},
     129      │ - ········"overrides":·[]
     130      │ - ······},
     131      │ - ······"gridPos":·{
     132      │ - ········"h":·4,
     133      │ - ········"w":·4,
     134      │ - ········"x":·4,
     135      │ - ········"y":·1
     136      │ - ······},
     137      │ - ······"id":·52,
     138      │ - ······"options":·{
     139      │ - ········"colorMode":·"value",
     140      │ - ········"graphMode":·"area",
     141      │ - ········"justifyMode":·"auto",
     142      │ - ········"orientation":·"auto",
     143      │ - ········"percentChangeColorMode":·"standard",
     144      │ - ········"reduceOptions":·{
     145      │ - ··········"calcs":·[
     146      │ - ············"lastNotNull"
     147      │ - ··········],
     148      │ - ··········"fields":·"",
     149      │ - ··········"values":·false
     150      │ - ········},
  14014 more lines truncated


operator/charts/patroni-services/monitoring/postgres-exporter-grafana-dashboard.json format ━━━━━━━━━━

  × Formatter would have printed the following content:

        1     1 │   {
        2       │ - ··"annotations":·{
        3       │ - ····"list":·[
        4       │ - ······{
        5       │ - ········"builtIn":·1,
        6       │ - ········"datasource":·{
        7       │ - ··········"type":·"datasource",
        8       │ - ··········"uid":·"grafana"
        9       │ - ········},
       10       │ - ········"enable":·true,
       11       │ - ········"hide":·true,
       12       │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
       13       │ - ········"name":·"Annotations·&·Alerts",
       14       │ - ········"target":·{
       15       │ - ··········"limit":·100,
       16       │ - ··········"matchAny":·false,
       17       │ - ··········"tags":·[],
       18       │ - ··········"type":·"dashboard"
       19       │ - ········},
       20       │ - ········"type":·"dashboard"
       21       │ - ······}
       22       │ - ····]
       23       │ - ··},
       24       │ - ··"description":·"Dashbord·works·with·postgres_exporter·for·prometheus",
       25       │ - ··"editable":·true,
       26       │ - ··"fiscalYearStartMonth":·0,
       27       │ - ··"gnetId":·9628,
       28       │ - ··"graphTooltip":·0,
       29       │ - ··"id":·147,
       30       │ - ··"links":·[
       31       │ - ····{
       32       │ - ······"asDropdown":·true,
       33       │ - ······"icon":·"external·link",
       34       │ - ······"includeVars":·false,
       35       │ - ······"keepTime":·false,
       36       │ - ······"tags":·[
       37       │ - ········"cloud",
       38       │ - ········"postgres"
       39       │ - ······],
       40       │ - ······"targetBlank":·true,
       41       │ - ······"title":·"Cloud·Dashboards",
       42       │ - ······"tooltip":·"",
       43       │ - ······"type":·"dashboards",
       44       │ - ······"url":·""
       45       │ - ····}
       46       │ - ··],
       47       │ - ··"liveNow":·false,
       48       │ - ··"panels":·[
       49       │ - ····{
       50       │ - ······"collapsed":·false,
       51       │ - ······"datasource":·{
       52       │ - ········"type":·"prometheus",
       53       │ - ········"uid":·"$datasource"
       54       │ - ······},
       55       │ - ······"gridPos":·{
       56       │ - ········"h":·1,
       57       │ - ········"w":·24,
       58       │ - ········"x":·0,
       59       │ - ········"y":·0
       60       │ - ······},
       61       │ - ······"id":·32,
       62       │ - ······"panels":·[],
       63       │ - ······"targets":·[
       64       │ - ········{
       65       │ - ··········"datasource":·{
       66       │ - ············"type":·"prometheus",
       67       │ - ············"uid":·"$datasource"
       68       │ - ··········},
       69       │ - ··········"refId":·"A"
       70       │ - ········}
       71       │ - ······],
       72       │ - ······"title":·"System·Configuration·and·Statistics",
       73       │ - ······"type":·"row"
       74       │ - ····},
       75       │ - ····{
       76       │ - ······"datasource":·{
       77       │ - ········"type":·"prometheus",
       78       │ - ········"uid":·"$datasource"
       79       │ - ······},
       80       │ - ······"description":·"Instance·current·status.",
       81       │ - ······"fieldConfig":·{
       82       │ - ········"defaults":·{
       83       │ - ··········"mappings":·[
       84       │ - ············{
       85       │ - ··············"options":·{
       86       │ - ················"0":·{
       87       │ - ··················"text":·"Master"
       88       │ - ················},
       89       │ - ················"1":·{
       90       │ - ··················"text":·"sync"
       91       │ - ················},
       92       │ - ················"2":·{
       93       │ - ··················"text":·"async"
       94       │ - ················}
       95       │ - ··············},
       96       │ - ··············"type":·"value"
       97       │ - ············},
       98       │ - ············{
       99       │ - ··············"options":·{
      100       │ - ················"match":·"null",
      101       │ - ················"result":·{
      102       │ - ··················"text":·"not·started"
      103       │ - ················}
      104       │ - ··············},
      105       │ - ··············"type":·"special"
      106       │ - ············}
      107       │ - ··········],
      108       │ - ··········"thresholds":·{
      109       │ - ············"mode":·"absolute",
      110       │ - ············"steps":·[
      111       │ - ··············{
      112       │ - ················"color":·"#299c46",
      113       │ - ················"value":·null
      114       │ - ··············},
      115       │ - ··············{
      116       │ - ················"color":·"#FA6400",
      117       │ - ················"value":·1
      118       │ - ··············},
      119       │ - ··············{
      120       │ - ················"color":·"#d44a3a",
      121       │ - ················"value":·2
      122       │ - ··············}
      123       │ - ············]
      124       │ - ··········},
      125       │ - ··········"unit":·"none"
      126       │ - ········},
      127       │ - ········"overrides":·[]
      128       │ - ······},
      129       │ - ······"gridPos":·{
      130       │ - ········"h":·3,
      131       │ - ········"w":·3,
      132       │ - ········"x":·0,
      133       │ - ········"y":·1
      134       │ - ······},
      135       │ - ······"id":·118,
      136       │ - ······"maxDataPoints":·100,
      137       │ - ······"options":·{
      138       │ - ········"colorMode":·"value",
      139       │ - ········"fieldOptions":·{
      140       │ - ··········"calcs":·[
      141       │ - ············"lastNotNull"
      142       │ - ··········]
      143       │ - ········},
      144       │ - ········"graphMode":·"none",
      145       │ - ········"justifyMode":·"auto",
      146       │ - ········"orientation":·"horizontal",
      147       │ - ········"reduceOptions":·{
      148       │ - ··········"calcs":·[
      149       │ - ············"lastNotNull"
      150       │ - ··········],
  23330 more lines truncated


operator/charts/patroni-services/monitoring/query-exporter-grafana-dashboard.json format ━━━━━━━━━━━

  × Formatter would have printed the following content:

        1     1 │   {
        2       │ - ··"annotations":·{
        3       │ - ····"list":·[
        4       │ - ······{
        5       │ - ········"builtIn":·1,
        6       │ - ········"datasource":·{
        7       │ - ··········"type":·"datasource",
        8       │ - ··········"uid":·"grafana"
        9       │ - ········},
       10       │ - ········"enable":·true,
       11       │ - ········"hide":·true,
       12       │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
       13       │ - ········"name":·"Annotations·&·Alerts",
       14       │ - ········"target":·{
       15       │ - ··········"limit":·100,
       16       │ - ··········"matchAny":·false,
       17       │ - ··········"tags":·[],
       18       │ - ··········"type":·"dashboard"
       19       │ - ········},
       20       │ - ········"type":·"dashboard"
       21       │ - ······}
       22       │ - ····]
       23       │ - ··},
       24       │ - ··"description":·"Dashbord·works·with·postgres_exporter·for·prometheus",
       25       │ - ··"editable":·true,
       26       │ - ··"fiscalYearStartMonth":·0,
       27       │ - ··"graphTooltip":·0,
       28       │ - ··"id":·1055,
       29       │ - ··"links":·[
       30       │ - ····{
       31       │ - ······"asDropdown":·true,
       32       │ - ······"icon":·"external·link",
       33       │ - ······"includeVars":·false,
       34       │ - ······"keepTime":·false,
       35       │ - ······"tags":·[
       36       │ - ········"cloud",
       37       │ - ········"postgres"
       38       │ - ······],
       39       │ - ······"targetBlank":·true,
       40       │ - ······"title":·"Cloud·Dashboards",
       41       │ - ······"tooltip":·"",
       42       │ - ······"type":·"dashboards",
       43       │ - ······"url":·""
       44       │ - ····}
       45       │ - ··],
       46       │ - ··"panels":·[
       47       │ - ····{
       48       │ - ······"collapsed":·false,
       49       │ - ······"gridPos":·{
       50       │ - ········"h":·1,
       51       │ - ········"w":·24,
       52       │ - ········"x":·0,
       53       │ - ········"y":·0
       54       │ - ······},
       55       │ - ······"id":·32,
       56       │ - ······"panels":·[],
       57       │ - ······"title":·"System·Configuration·and·Statistics",
       58       │ - ······"type":·"row"
       59       │ - ····},
       60       │ - ····{
       61       │ - ······"datasource":·{
       62       │ - ········"type":·"prometheus",
       63       │ - ········"uid":·"$datasource"
       64       │ - ······},
       65       │ - ······"description":·"Instance·current·status.",
       66       │ - ······"fieldConfig":·{
       67       │ - ········"defaults":·{
       68       │ - ··········"mappings":·[
       69       │ - ············{
       70       │ - ··············"options":·{
       71       │ - ················"0":·{
       72       │ - ··················"text":·"Master"
       73       │ - ················},
       74       │ - ················"1":·{
       75       │ - ··················"text":·"sync"
       76       │ - ················},
       77       │ - ················"2":·{
       78       │ - ··················"text":·"async"
       79       │ - ················}
       80       │ - ··············},
       81       │ - ··············"type":·"value"
       82       │ - ············},
       83       │ - ············{
       84       │ - ··············"options":·{
       85       │ - ················"match":·"null",
       86       │ - ················"result":·{
       87       │ - ··················"text":·"not·started"
       88       │ - ················}
       89       │ - ··············},
       90       │ - ··············"type":·"special"
       91       │ - ············}
       92       │ - ··········],
       93       │ - ··········"thresholds":·{
       94       │ - ············"mode":·"absolute",
       95       │ - ············"steps":·[
       96       │ - ··············{
       97       │ - ················"color":·"#299c46",
       98       │ - ················"value":·null
       99       │ - ··············},
      100       │ - ··············{
      101       │ - ················"color":·"#FA6400",
      102       │ - ················"value":·1
      103       │ - ··············},
      104       │ - ··············{
      105       │ - ················"color":·"#d44a3a",
      106       │ - ················"value":·2
      107       │ - ··············}
      108       │ - ············]
      109       │ - ··········},
      110       │ - ··········"unit":·"none"
      111       │ - ········},
      112       │ - ········"overrides":·[]
      113       │ - ······},
      114       │ - ······"gridPos":·{
      115       │ - ········"h":·3,
      116       │ - ········"w":·3,
      117       │ - ········"x":·0,
      118       │ - ········"y":·1
      119       │ - ······},
      120       │ - ······"id":·118,
      121       │ - ······"maxDataPoints":·100,
      122       │ - ······"options":·{
      123       │ - ········"colorMode":·"value",
      124       │ - ········"fieldOptions":·{
      125       │ - ··········"calcs":·[
      126       │ - ············"lastNotNull"
      127       │ - ··········]
      128       │ - ········},
      129       │ - ········"graphMode":·"none",
      130       │ - ········"justifyMode":·"auto",
      131       │ - ········"orientation":·"horizontal",
      132       │ - ········"percentChangeColorMode":·"standard",
      133       │ - ········"reduceOptions":·{
      134       │ - ··········"calcs":·[
      135       │ - ············"lastNotNull"
      136       │ - ··········],
      137       │ - ··········"fields":·"",
      138       │ - ··········"values":·false
      139       │ - ········},
      140       │ - ········"showPercentChange":·false,
      141       │ - ········"text":·{},
      142       │ - ········"textMode":·"auto",
      143       │ - ········"wideLayout":·true
      144       │ - ······},
      145       │ - ······"pluginVersion":·"11.5.2",
      146       │ - ······"targets":·[
      147       │ - ········{
      148       │ - ··········"datasource":·{
      149       │ - ············"0":·"$",
      150       │ - ············"1":·"d",
  23700 more lines truncated


operator/charts/patroni-services/values.schema.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"$schema":·"http://json-schema.org/draft-07/schema#",
       3      │ - ··"title":·"patroni-services·values",
       4      │ - ··"type":·"object",
       5      │ - ··"additionalProperties":·true,
       6      │ - ··"properties":·{
       7      │ - ····"postgresUser":·{
       8      │ - ······"type":·"string",
       9      │ - ······"default":·"postgres",
      10      │ - ······"description":·"The·name·of·database·superuser"
      11      │ - ····},
      12      │ - ····"postgresPassword":·{
      13      │ - ······"type":·"string",
      14      │ - ······"default":·"p@ssWOrD1",
      15      │ - ······"description":·"The·password·for·the·database·superuser"
      16      │ - ····},
      17      │ - ····"replicatorPassword":·{
      18      │ - ······"type":·"string",
      19      │ - ······"default":·"replicator"
      20      │ - ····},
      21      │ - ····"podLabels":·{
      22      │ - ······"type":·"object",
      23      │ - ······"additionalProperties":·{
      24      │ - ········"type":·"string"
      25      │ - ······},
      26      │ - ······"default":·{}
      27      │ - ····},
      28      │ - ····"imagePullPolicy":·{
      29      │ - ······"type":·"string",
      30      │ - ······"default":·"IfNotPresent"
      31      │ - ····},
      32      │ - ····"privateRegistry":·{
      33      │ - ······"$ref":·"#/$defs/privateRegistry"
      34      │ - ····},
      35      │ - ····"global":·{
      36      │ - ······"$ref":·"#/$defs/global"
      37      │ - ····},
      38      │ - ····"serviceAccount":·{
      39      │ - ······"$ref":·"#/$defs/serviceAccount"
      40      │ - ····},
      41      │ - ····"operatorInit":·{
      42      │ - ······"$ref":·"#/$defs/operatorInit"
      43      │ - ····},
      44      │ - ····"operator":·{
      45      │ - ······"$ref":·"#/$defs/operator"
      46      │ - ····},
      47      │ - ····"policies":·{
      48      │ - ······"$ref":·"#/$defs/policies"
      49      │ - ····},
      50      │ - ····"tls":·{
      51      │ - ······"$ref":·"#/$defs/tls"
      52      │ - ····},
      53      │ - ····"patroni":·{
      54      │ - ······"$ref":·"#/$defs/patroni"
      55      │ - ····},
      56      │ - ····"metricCollector":·{
      57      │ - ······"$ref":·"#/$defs/metricCollector"
      58      │ - ····},
      59      │ - ····"backupDaemon":·{
      60      │ - ······"$ref":·"#/$defs/backupDaemon"
      61      │ - ····},
      62      │ - ····"pgBackRest":·{
      63      │ - ······"$ref":·"#/$defs/pgBackRest"
      64      │ - ····},
      65      │ - ····"pgBackRestExporter":·{
      66      │ - ······"$ref":·"#/$defs/pgBackRestExporter"
      67      │ - ····},
      68      │ - ····"externalDataBase":·{
      69      │ - ······"$ref":·"#/$defs/externalDataBase"
      70      │ - ····},
      71      │ - ····"dbaas":·{
      72      │ - ······"$ref":·"#/$defs/dbaas"
      73      │ - ····},
      74      │ - ····"siteManager":·{
      75      │ - ······"$ref":·"#/$defs/siteManager"
      76      │ - ····},
      77      │ - ····"queryExporter":·{
      78      │ - ······"$ref":·"#/$defs/queryExporter"
      79      │ - ····},
      80      │ - ····"powaUI":·{
      81      │ - ······"$ref":·"#/$defs/powaUI"
      82      │ - ····},
      83      │ - ····"replicationController":·{
      84      │ - ······"$ref":·"#/$defs/replicationController"
      85      │ - ····},
      86      │ - ····"connectionPooler":·{
      87      │ - ······"$ref":·"#/$defs/connectionPooler"
      88      │ - ····},
      89      │ - ····"tracing":·{
      90      │ - ······"$ref":·"#/$defs/tracing"
      91      │ - ····},
      92      │ - ····"tests":·{
      93      │ - ······"$ref":·"#/$defs/tests"
      94      │ - ····},
      95      │ - ····"runTestsOnly":·{
      96      │ - ······"type":·"boolean",
      97      │ - ······"default":·false
      98      │ - ····},
      99      │ - ····"INTERNAL_TLS_ENABLED":·{
     100      │ - ······"type":·"boolean",
     101      │ - ······"default":·false
     102      │ - ····},
     103      │ - ····"GLOBAL_SECURITY_CONTEXT":·{
     104      │ - ······"type":·"boolean",
     105      │ - ······"default":·true
     106      │ - ····},
     107      │ - ····"CLOUD_PUBLIC_HOST":·{
     108      │ - ······"type":·"string",
     109      │ - ······"default":·"k8s.default"
     110      │ - ····}
     111      │ - ··},
     112      │ - ··"$defs":·{
     113      │ - ····"privateRegistry":·{
     114      │ - ······"type":·"object",
     115      │ - ······"additionalProperties":·false,
     116      │ - ······"properties":·{
     117      │ - ········"enabled":·{
     118      │ - ··········"type":·"boolean",
     119      │ - ··········"default":·false
     120      │ - ········},
     121      │ - ········"secrets":·{
     122      │ - ··········"type":·"array",
     123      │ - ··········"items":·{
     124      │ - ············"type":·"object",
     125      │ - ············"additionalProperties":·false,
     126      │ - ············"properties":·{
     127      │ - ··············"name":·{
     128      │ - ················"type":·"string"
     129      │ - ··············},
     130      │ - ··············"create":·{
     131      │ - ················"type":·"boolean",
     132      │ - ················"default":·false
     133      │ - ··············},
     134      │ - ··············"registry":·{
     135      │ - ················"type":·"string"
     136      │ - ··············},
     137      │ - ··············"username":·{
     138      │ - ················"type":·"string"
     139      │ - ··············},
     140      │ - ··············"password":·{
     141      │ - ················"type":·"string"
     142      │ - ··············},
     143      │ - ··············"email":·{
     144      │ - ················"type":·"string"
     145      │ - ··············}
     146      │ - ············}
     147      │ - ··········}
     148      │ - ········}
     149      │ - ······}
     150      │ - ····},
  2533 more lines truncated


format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Some errors were emitted while running checks.

DOCKERFILE_HADOLINT
/github/workspace/services/backup-daemon/Dockerfile:14 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:25 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:26 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:27 DL3009 �[92minfo�[0m: Delete the apt lists (/var/lib/apt/lists) after installing something
/github/workspace/services/backup-daemon/Dockerfile:27 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:28 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:29 DL3009 �[92minfo�[0m: Delete the apt lists (/var/lib/apt/lists) after installing something
/github/workspace/services/backup-daemon/Dockerfile:29 DL3008 �[1m�[93mwarning�[0m: Pin versions in apt get install. Instead of `apt-get install <package>` use `apt-get install <package>=<version>`
/github/workspace/services/backup-daemon/Dockerfile:29 DL3015 �[92minfo�[0m: Avoid additional packages by specifying `--no-install-recommends`
/github/workspace/services/backup-daemon/Dockerfile:31 DL3008 �[1m�[93mwarning�[0m: Pin versions in apt get install. Instead of `apt-get install <package>` use `apt-get install <package>=<version>`
/github/workspace/services/backup-daemon/Dockerfile:36 DL3008 �[1m�[93mwarning�[0m: Pin versions in apt get install. Instead of `apt-get install <package>` use `apt-get install <package>=<version>`
/github/workspace/services/backup-daemon/Dockerfile:47 DL3042 �[1m�[93mwarning�[0m: Avoid use of cache directory with pip. Use `pip install --no-cache-dir <package>`
/github/workspace/services/backup-daemon/Dockerfile:47 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:50 DL3042 �[1m�[93mwarning�[0m: Avoid use of cache directory with pip. Use `pip install --no-cache-dir <package>`
/github/workspace/services/backup-daemon/Dockerfile:50 DL3013 �[1m�[93mwarning�[0m: Pin versions in pip. Instead of `pip install <package>` use `pip install <package>==<version>` or `pip install --requirement <requirements file>`
EDITORCONFIG
�[33;1mservices/backup-daemon/Dockerfile:�[33;0m
�[31;1m	37-46: Wrong amount of left-padding spaces(want multiple of 4)�[33;0m
�[31;1m	58-61: Wrong amount of left-padding spaces(want multiple of 4)�[33;0m
�[31;1m
2 errors found�[33;0m
GITHUB_ACTIONS_ZIZMOR
�[1m�[33mwarning[excessive-permissions]�[0m�[1m: overly broad permissions�[0m
  �[1m�[94m--> �[0m/github/workspace/.github/workflows/super-linter.yaml:27:3
   �[1m�[94m|�[0m
�[1m�[94m27�[0m �[1m�[94m|�[0m �[1m�[33m/�[0m   run-lint:
�[1m�[94m28�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m     runs-on: ubuntu-latest
�[1m�[94m29�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m     steps:
�[1m�[94m30�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m       - name: Checkout code
�[1m�[94m...�[0m  �[1m�[33m|�[0m
�[1m�[94m48�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m           VALIDATE_ALL_CODEBASE: ${{ inputs.full_scan || false }}
�[1m�[94m49�[0m �[1m�[94m|�[0m �[1m�[33m|�[0m           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
   �[1m�[94m|�[0m �[1m�[33m|�[0m                                                    �[1m�[33m^�[0m
   �[1m�[94m|�[0m �[1m�[33m|�[0m                                                    �[1m�[33m|�[0m
   �[1m�[94m|�[0m �[1m�[33m|____________________________________________________�[0m�[1m�[94mthis job�[0m
   �[1m�[94m|�[0m                                                      �[1m�[33mdefault permissions used due to no permissions: block�[0m
   �[1m�[94m|�[0m
   �[1m�[94m= �[0m�[1mnote�[0m: audit confidence → Medium
   �[1m�[94m= �[0m�[1mhelp�[0m: audit documentation → �[32mhttps://docs.zizmor.sh/audits/#excessive-permissions�[39m

�[1m�[91merror[unpinned-uses]�[0m�[1m: unpinned action reference�[0m
  �[1m�[94m--> �[0m/github/workspace/.github/workflows/super-linter.yaml:31:15
   �[1m�[94m|�[0m
�[1m�[94m31�[0m �[1m�[94m|�[0m         uses: actions/checkout@v4
   �[1m�[94m|�[0m               �[1m�[91m^^^^^^^^^^^^^^^^^^^�[0m �[1m�[91maction is not pinned to a hash (required by blanket policy)�[0m
   �[1m�[94m|�[0m
   �[1m�[94m= �[0m�[1mnote�[0m: audit confidence → High
   �[1m�[94m= �[0m�[1mnote�[0m: this finding has an auto-fix
   �[1m�[94m= �[0m�[1mhelp�[0m: audit documentation → �[32mhttps://docs.zizmor.sh/audits/#unpinned-uses�[39m

�[32m5�[39m findings (�[1m�[93m3�[39m suppressed, �[92m1�[39m fixable�[0m): �[35m0�[39m informational, �[36m0�[39m low, �[33m1�[39m medium, �[31m1�[39m high🌈 zizmor v1.23.1
�[32m INFO�[0m �[1maudit�[0m�[2m:�[0m �[2mzizmor�[0m�[2m:�[0m 🌈 completed /github/workspace/.github/workflows/super-linter.yaml
GO
0 issues.level=error msg="[linters_context] typechecking error: named files must all be in one directory; have /github/workspace/operator/pkg/reconciler and /github/workspace/services/pgbackrest-sidecar/pkg/utils"
GO_MODULES
0 issues.
../../services/pgbackrest-sidecar/pkg/utils/utils.go:39:50: ST1008: error should be returned as the last argument (staticcheck)
func ExecCommand(command string, args []string) (error, string) {
                                                 ^
1 issues:
* staticcheck: 1
0 issues.
0 issues.
0 issues.
0 issues.
0 issues.
../../services/dbaas-adapter/adapter/basic/basic.go:437:24: QF1001: could apply De Morgan's law (staticcheck)
	if version == "v2" && !(util.Contains(sa.GetSupportedRoles(), postgresUserRequest.Role) || postgresUserRequest.Role == "none") {
	                      ^
../../services/dbaas-adapter/adapter/basic/basic.go:1000:2: QF1003: could use tagged switch on resource.Kind (staticcheck)
	if resource.Kind == DbKind {
	^
../../services/dbaas-adapter/adapter/basic/basic.go:1382:29: QF1008: could remove embedded field "ClusterAdapter" from selector (staticcheck)
	values := strings.Split(sa.ClusterAdapter.GetUser(), "@")
	                           ^
../../services/dbaas-adapter/adapter/basic/basic_roles.go:237:83: QF1008: could remove embedded field "ClusterAdapter" from selector (staticcheck)
		if metadataOwner != "" && adminUserName != metadataOwner && metadataOwner != sa.ClusterAdapter.GetUser() {
		                                                                                ^
../../services/dbaas-adapter/adapter/basic/sql_helper.go:173:56: QF1004: could use strings.ReplaceAll instead (staticcheck)
	return fmt.Sprintf("DROP DATABASE IF EXISTS \"%s\";", strings.Replace(dbName, "\"", "\\\"", -1))
	                                                      ^
5 issues:
* staticcheck: 5
0 issues.
0 issues.
0 issues.
../../services/monitoring-agent/collector/pkg/postgres/client.go:63:2: QF1007: could merge conditional assignment into variable declaration (staticcheck)
	ssl := false
	^
1 issues:
* staticcheck: 1
0 issues.
../../services/monitoring-agent/collector/pkg/util/util.go:191:23: Error return value of `resp.Body.Close` is not checked (errcheck)
	defer resp.Body.Close()
	                     ^
1 issues:
* errcheck: 1
PYTHON_RUFF
F403 `from utils_common import *` used; unable to detect undefined names
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:20:1
   |
18 | import subprocess
19 | import logging
20 | from utils_common import *
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
21 | import pprint
22 | import time
   |

F401 [*] `pprint` imported but unused
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:21:8
   |
19 | import logging
20 | from utils_common import *
21 | import pprint
   |        ^^^^^^
22 | import time
23 | import re
   |
help: Remove unused import: `pprint`

F401 `kubernetes.client.configuration` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:29:35
   |
27 | try:
28 |     from kubernetes import client
29 |     from kubernetes.client import configuration
   |                                   ^^^^^^^^^^^^^
30 |     from kubernetes.client import rest
31 |     #from openshift import client as op_client
   |
help: Remove unused import: `kubernetes.client.configuration`

F401 `kubernetes.client.rest` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:30:35
   |
28 |     from kubernetes import client
29 |     from kubernetes.client import configuration
30 |     from kubernetes.client import rest
   |                                   ^^^^
31 |     #from openshift import client as op_client
32 |     from kubernetes.client.rest import ApiException
   |
help: Remove unused import: `kubernetes.client.rest`

F401 `kubernetes.stream.ws_client.STDOUT_CHANNEL` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:34:60
   |
32 |     from kubernetes.client.rest import ApiException
33 |     from kubernetes.stream import stream
34 |     from kubernetes.stream.ws_client import ERROR_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL
   |                                                            ^^^^^^^^^^^^^^
35 |     import kubernetes
36 |     from six import iteritems
   |
help: Remove unused import

F401 `kubernetes.stream.ws_client.STDERR_CHANNEL` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:34:76
   |
32 |     from kubernetes.client.rest import ApiException
33 |     from kubernetes.stream import stream
34 |     from kubernetes.stream.ws_client import ERROR_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL
   |                                                                            ^^^^^^^^^^^^^^
35 |     import kubernetes
36 |     from six import iteritems
   |
help: Remove unused import

F841 [*] Local variable `e` is assigned to but never used
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:85:23
   |
84 |     use_kube_client = True
85 | except ImportError as e:
   |                       ^
86 |     log.exception("Cannot use python client")
87 |     use_kube_client = False
   |
help: Remove assignment to unused variable `e`

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:439:6
    |
437 |                 raise Exception("Cannot remove pod. Error: {}".format(error))
438 |
439 |     @retry(tries=5)  # handle case when DC version is Unknown
    |      ^^^^^
440 |     def scale(self, name, count, entity="dc"):
441 |         subprocess.check_call("{} scale --replicas={} {} {}"
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:524:13
    |
522 |                 apps_api = client.AppsV1Api(self._api_client)
523 |                 items = apps_api.list_namespaced_stateful_set(self.project).items
524 |             except:
    |             ^^^^^^
525 |                 apps_api = client.AppsV1beta1Api(self._api_client)
526 |                 items = apps_api.list_namespaced_stateful_set(self.project).items
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:531:13
    |
529 |                 apps_api = client.AppsV1beta1Api(self._api_client)
530 |                 items = apps_api.list_namespaced_deployment(self.project).items
531 |             except:
    |             ^^^^^^
532 |                 apps_api = client.AppsV1Api(self._api_client)
533 |                 items = apps_api.list_namespaced_deployment(self.project).items
    |

F841 [*] Local variable `e` is assigned to but never used
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:579:29
    |
577 |         try:
578 |             return self.get_entity(entity_type, entity_name)
579 |         except Exception as e:
    |                             ^
580 |             return None
    |
help: Remove assignment to unused variable `e`

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:647:6
    |
645 |                 raise e
646 |
647 |     @retry(tries=30, delay=5)
    |      ^^^^^
648 |     def oc_exec(self, pod_id, command):
649 |         log.debug(f"Try to execute '{command}' on pod {pod_id}")
    |

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:745:6
    |
743 |                 raise ae
744 |
745 |     @retry(tries=5)  # handle case when DC version is Unknown
    |      ^^^^^
746 |     def scale(self, name, count, entity="dc"):
747 |         log.debug("Try to scale {} {} to {} replicas".format(entity, name, count))
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:758:13
    |
756 |                 core_api = client.AppsV1beta1Api(self._api_client)
757 |                 data = core_api.patch_namespaced_deployment(name, self.project, {"spec": {"replicas": count}})
758 |             except:
    |             ^^^^^^
759 |                 core_api = client.AppsV1Api(self._api_client)
760 |                 data = core_api.patch_namespaced_deployment(name, self.project, {"spec": {"replicas": count}})
    |

F405 `Differ` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:766:16
    |
765 |     def get_json_diff(self, source, data):
766 |         return Differ().get_json_diff(source, data, keep_name=True)
    |                ^^^^^^
767 |
768 |     def apply_object(self, data):
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:812:13
    |
810 |                 apps_api = client.AppsV1beta1ApiApi(self._api_client)
811 |                 source = reset_last_applied(self.get_entity("deployment", entity_name))
812 |             except:
    |             ^^^^^^
813 |                 apps_api = client.AppsV1Api(self._api_client)
814 |                 source = reset_last_applied(self.get_entity("deployment", entity_name))
    |

Found 16 errors.
[*] 3 fixable with the `--fix` option.
PYTHON_RUFF_FORMAT
Would reformat: services/backup-daemon/maintenance/recovery/utils_oc.py
1 file would be reformatted

@github-actions

Copy link
Copy Markdown
Contributor

Super-linter summary

Language Validation result
BIOME_FORMAT Fail ❌
BIOME_LINT Pass ✅
CHECKOV Pass ✅
DOCKERFILE_HADOLINT Fail ❌
EDITORCONFIG Fail ❌
GITHUB_ACTIONS Pass ✅
GITHUB_ACTIONS_ZIZMOR Fail ❌
GITLEAKS Pass ✅
GIT_MERGE_CONFLICT_MARKERS Pass ✅
GO Fail ❌
GO_MODULES Fail ❌
JSON Pass ✅
PRE_COMMIT Pass ✅
PYTHON_RUFF Fail ❌
PYTHON_RUFF_FORMAT Fail ❌
SPELL_CODESPELL Pass ✅
YAML Pass ✅

Super-linter detected linting errors

For more information, see the GitHub Actions workflow run

Powered by Super-linter

BIOME_FORMAT
Checked 11 files in 346ms. No fixes applied.
Found 11 errors..github/linters/.jscpd.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

     1  1 │   {
     2    │ - ··"threshold":·2,
     3    │ - ··"ignore":·[
     4    │ - ····"**/.git/**",
     5    │ - ····"**/charts/*/templates/*/*.yaml",
     6    │ - ····"**/charts/*/templates/*/*/*.yaml",
     7    │ - ····"**/docs/examples/**"
     8    │ - ··]
        2 │ + → "threshold":·2,
        3 │ + → "ignore":·[
        4 │ + → → "**/.git/**",
        5 │ + → → "**/charts/*/templates/*/*.yaml",
        6 │ + → → "**/charts/*/templates/*/*/*.yaml",
        7 │ + → → "**/docs/examples/**"
        8 │ + → ]
     9  9 │   }
    10 10 │


.qubership/grand-report.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

    1   │ - {
    2   │ -
    3   │ - }
      1 │ + {}
      2 │ +


operator/charts/patroni-core/values.schema.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

      1   1 │   {
      2     │ - ··"$schema":·"http://json-schema.org/draft-07/schema#",
      3     │ - ··"title":·"patroni-core·values",
      4     │ - ··"type":·"object",
      5     │ - ··"additionalProperties":·true,
      6     │ - ··"properties":·{
      7     │ - ····"postgresUser":·{
      8     │ - ······"type":·"string",
      9     │ - ······"default":·"postgres",
     10     │ - ······"description":·"The·name·of·database·superuser"
     11     │ - ····},
     12     │ - ····"postgresPassword":·{
     13     │ - ······"type":·"string",
     14     │ - ······"default":·"p@ssWOrD1",
     15     │ - ······"description":·"The·password·for·the·database·superuser"
     16     │ - ····},
     17     │ - ····"replicatorPassword":·{
     18     │ - ······"type":·"string",
     19     │ - ······"default":·"replicator",
     20     │ - ······"description":·"Password·for·replicator·user"
     21     │ - ····},
     22     │ - ····"podLabels":·{
     23     │ - ······"type":·"object",
     24     │ - ······"additionalProperties":·{
     25     │ - ········"type":·"string"
     26     │ - ······},
     27     │ - ······"default":·{}
     28     │ - ····},
     29     │ - ····"imagePullPolicy":·{
     30     │ - ······"type":·"string",
     31     │ - ······"default":·"IfNotPresent",
     32     │ - ······"description":·"Image·pull·policy·for·containers"
     33     │ - ····},
     34     │ - ····"privateRegistry":·{
     35     │ - ······"$ref":·"#/$defs/privateRegistry"
     36     │ - ····},
     37     │ - ····"global":·{
     38     │ - ······"$ref":·"#/$defs/global"
     39     │ - ····},
     40     │ - ····"serviceAccount":·{
     41     │ - ······"$ref":·"#/$defs/serviceAccount"
     42     │ - ····},
     43     │ - ····"operatorInit":·{
     44     │ - ······"$ref":·"#/$defs/operatorInit"
     45     │ - ····},
     46     │ - ····"operator":·{
     47     │ - ······"$ref":·"#/$defs/operator"
     48     │ - ····},
     49     │ - ····"policies":·{
     50     │ - ······"$ref":·"#/$defs/policies"
     51     │ - ····},
     52     │ - ····"tls":·{
     53     │ - ······"$ref":·"#/$defs/tls"
     54     │ - ····},
     55     │ - ····"ldap":·{
     56     │ - ······"$ref":·"#/$defs/ldap"
     57     │ - ····},
     58     │ - ····"patroni":·{
     59     │ - ······"$ref":·"#/$defs/patroni"
     60     │ - ····},
     61     │ - ····"pgBackRest":·{
     62     │ - ······"$ref":·"#/$defs/pgBackRest"
     63     │ - ····},
     64     │ - ····"tests":·{
     65     │ - ······"$ref":·"#/$defs/tests"
     66     │ - ····},
     67     │ - ····"runTestsOnly":·{
     68     │ - ······"type":·"boolean",
     69     │ - ······"default":·false
     70     │ - ····},
     71     │ - ····"INTERNAL_TLS_ENABLED":·{
     72     │ - ······"type":·"boolean",
     73     │ - ······"default":·false
     74     │ - ····},
     75     │ - ····"GLOBAL_SECURITY_CONTEXT":·{
     76     │ - ······"type":·"boolean",
     77     │ - ······"default":·true
     78     │ - ····},
     79     │ - ····"CLOUD_PUBLIC_HOST":·{
     80     │ - ······"type":·"string",
     81     │ - ······"default":·"k8s.default"
     82     │ - ····},
     83     │ - ····"majorUpgrade":·{
     84     │ - ······"$ref":·"#/$defs/majorUpgrade"
     85     │ - ····}
     86     │ - ··},
     87     │ - ··"$defs":·{
     88     │ - ····"privateRegistry":·{
     89     │ - ······"type":·"object",
     90     │ - ······"additionalProperties":·false,
     91     │ - ······"properties":·{
     92     │ - ········"enabled":·{
     93     │ - ··········"type":·"boolean",
     94     │ - ··········"default":·false
     95     │ - ········},
     96     │ - ········"secrets":·{
     97     │ - ··········"type":·"array",
     98     │ - ··········"items":·{
     99     │ - ············"type":·"object",
    100     │ - ············"additionalProperties":·false,
    101     │ - ············"properties":·{
    102     │ - ··············"name":·{
    103     │ - ················"type":·"string"
    104     │ - ··············},
    105     │ - ··············"create":·{
    106     │ - ················"type":·"boolean",
    107     │ - ················"default":·false
    108     │ - ··············},
    109     │ - ··············"registry":·{
    110     │ - ················"type":·"string"
    111     │ - ··············},
    112     │ - ··············"username":·{
    113     │ - ················"type":·"string"
    114     │ - ··············},
    115     │ - ··············"password":·{
    116     │ - ················"type":·"string"
    117     │ - ··············},
    118     │ - ··············"email":·{
    119     │ - ················"type":·"string"
    120     │ - ··············}
    121     │ - ············}
    122     │ - ··········}
    123     │ - ········}
    124     │ - ······}
    125     │ - ····},
    126     │ - ····"global":·{
    127     │ - ······"type":·"object",
    128     │ - ······"additionalProperties":·true,
    129     │ - ······"properties":·{
    130     │ - ········"cloudIntegrationEnabled":·{
    131     │ - ··········"type":·"boolean",
    132     │ - ··········"default":·true
    133     │ - ········}
    134     │ - ······}
    135     │ - ····},
    136     │ - ····"serviceAccount":·{
    137     │ - ······"type":·"object",
    138     │ - ······"additionalProperties":·false,
    139     │ - ······"properties":·{
    140     │ - ········"create":·{
    141     │ - ··········"type":·"boolean",
    142     │ - ··········"default":·true
    143     │ - ········},
    144     │ - ········"name":·{
    145     │ - ··········"type":·"string",
    146     │ - ··········"default":·"patroni-sa"
    147     │ - ········}
    148     │ - ······}
    149     │ - ····},
    150     │ - ····"operatorInit":·{
  1583 more lines truncated


operator/charts/patroni-services/monitoring/aws-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·169,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"The·percentage·of·CPU·used·by·an·Aurora·DB·instance",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"barWidthFactor":·0.6,
      78      │ - ············"drawStyle":·"line",
      79      │ - ············"fillOpacity":·20,
      80      │ - ············"gradientMode":·"none",
      81      │ - ············"hideFrom":·{
      82      │ - ··············"legend":·false,
      83      │ - ··············"tooltip":·false,
      84      │ - ··············"viz":·false
      85      │ - ············},
      86      │ - ············"insertNulls":·false,
      87      │ - ············"lineInterpolation":·"linear",
      88      │ - ············"lineWidth":·2,
      89      │ - ············"pointSize":·5,
      90      │ - ············"scaleDistribution":·{
      91      │ - ··············"type":·"linear"
      92      │ - ············},
      93      │ - ············"showPoints":·"never",
      94      │ - ············"spanNulls":·true,
      95      │ - ············"stacking":·{
      96      │ - ··············"group":·"A",
      97      │ - ··············"mode":·"none"
      98      │ - ············},
      99      │ - ············"thresholdsStyle":·{
     100      │ - ··············"mode":·"off"
     101      │ - ············}
     102      │ - ··········},
     103      │ - ··········"mappings":·[],
     104      │ - ··········"min":·0,
     105      │ - ··········"thresholds":·{
     106      │ - ············"mode":·"absolute",
     107      │ - ············"steps":·[
     108      │ - ··············{
     109      │ - ················"color":·"green",
     110      │ - ················"value":·null
     111      │ - ··············},
     112      │ - ··············{
     113      │ - ················"color":·"red",
     114      │ - ················"value":·80
     115      │ - ··············}
     116      │ - ············]
     117      │ - ··········},
     118      │ - ··········"unit":·"percent"
     119      │ - ········},
     120      │ - ········"overrides":·[
     121      │ - ··········{
     122      │ - ············"matcher":·{
     123      │ - ··············"id":·"byName",
     124      │ - ··············"options":·"CPU"
     125      │ - ············},
     126      │ - ············"properties":·[
     127      │ - ··············{
     128      │ - ················"id":·"color",
     129      │ - ················"value":·{
     130      │ - ··················"fixedColor":·"#E24D42",
     131      │ - ··················"mode":·"fixed"
     132      │ - ················}
     133      │ - ··············}
     134      │ - ············]
     135      │ - ··········}
     136      │ - ········]
     137      │ - ······},
     138      │ - ······"gridPos":·{
     139      │ - ········"h":·7,
     140      │ - ········"w":·12,
     141      │ - ········"x":·0,
     142      │ - ········"y":·1
     143      │ - ······},
     144      │ - ······"id":·2,
     145      │ - ······"options":·{
     146      │ - ········"legend":·{
     147      │ - ··········"calcs":·[
     148      │ - ············"mean",
     149      │ - ············"max",
     150      │ - ············"min"
  3892 more lines truncated


operator/charts/patroni-services/monitoring/azure-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·36,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"Indicates·if·the·database·is·up·or·not",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"drawStyle":·"line",
      78      │ - ············"fillOpacity":·20,
      79      │ - ············"gradientMode":·"none",
      80      │ - ············"hideFrom":·{
      81      │ - ··············"legend":·false,
      82      │ - ··············"tooltip":·false,
      83      │ - ··············"viz":·false
      84      │ - ············},
      85      │ - ············"insertNulls":·false,
      86      │ - ············"lineInterpolation":·"linear",
      87      │ - ············"lineStyle":·{
      88      │ - ··············"fill":·"solid"
      89      │ - ············},
      90      │ - ············"lineWidth":·2,
      91      │ - ············"pointSize":·5,
      92      │ - ············"scaleDistribution":·{
      93      │ - ··············"type":·"linear"
      94      │ - ············},
      95      │ - ············"showPoints":·"never",
      96      │ - ············"spanNulls":·true,
      97      │ - ············"stacking":·{
      98      │ - ··············"group":·"A",
      99      │ - ··············"mode":·"none"
     100      │ - ············},
     101      │ - ············"thresholdsStyle":·{
     102      │ - ··············"mode":·"off"
     103      │ - ············}
     104      │ - ··········},
     105      │ - ··········"mappings":·[],
     106      │ - ··········"min":·0,
     107      │ - ··········"thresholds":·{
     108      │ - ············"mode":·"absolute",
     109      │ - ············"steps":·[
     110      │ - ··············{
     111      │ - ················"color":·"green",
     112      │ - ················"value":·null
     113      │ - ··············}
     114      │ - ············]
     115      │ - ··········},
     116      │ - ··········"unit":·"bool_on_off"
     117      │ - ········},
     118      │ - ········"overrides":·[]
     119      │ - ······},
     120      │ - ······"gridPos":·{
     121      │ - ········"h":·7,
     122      │ - ········"w":·5,
     123      │ - ········"x":·0,
     124      │ - ········"y":·1
     125      │ - ······},
     126      │ - ······"id":·2,
     127      │ - ······"options":·{
     128      │ - ········"legend":·{
     129      │ - ··········"calcs":·[],
     130      │ - ··········"displayMode":·"table",
     131      │ - ··········"placement":·"bottom",
     132      │ - ··········"showLegend":·true
     133      │ - ········},
     134      │ - ········"tooltip":·{
     135      │ - ··········"mode":·"multi",
     136      │ - ··········"sort":·"none"
     137      │ - ········}
     138      │ - ······},
     139      │ - ······"pluginVersion":·"9.5.5",
     140      │ - ······"targets":·[
     141      │ - ········{
     142      │ - ··········"datasource":·{
     143      │ - ············"type":·"prometheus",
     144      │ - ············"uid":·"${datasource}"
     145      │ - ··········},
     146      │ - ··········"editorMode":·"code",
     147      │ - ··········"exemplar":·true,
     148      │ - ··········"expr":·"postgresql_is_db_alive{instance_name=~'${instance}',·cluster=~\"$cluster\"}",
     149      │ - ··········"interval":·"",
     150      │ - ··········"legendFormat":·"Is·db·alive",
  2268 more lines truncated


operator/charts/patroni-services/monitoring/cloudsql-grafana-dashboard.json format ━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Visualize·OS·metrics·for·Amazon·RDS·instance",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"gnetId":·702,
      28      │ - ··"graphTooltip":·1,
      29      │ - ··"id":·166,
      30      │ - ··"links":·[],
      31      │ - ··"liveNow":·false,
      32      │ - ··"panels":·[
      33      │ - ····{
      34      │ - ······"collapsed":·false,
      35      │ - ······"datasource":·{
      36      │ - ········"type":·"prometheus",
      37      │ - ········"uid":·"PC3E95692D54ABCC0"
      38      │ - ······},
      39      │ - ······"gridPos":·{
      40      │ - ········"h":·1,
      41      │ - ········"w":·24,
      42      │ - ········"x":·0,
      43      │ - ········"y":·0
      44      │ - ······},
      45      │ - ······"id":·15,
      46      │ - ······"panels":·[],
      47      │ - ······"targets":·[
      48      │ - ········{
      49      │ - ··········"datasource":·{
      50      │ - ············"type":·"prometheus",
      51      │ - ············"uid":·"PC3E95692D54ABCC0"
      52      │ - ··········},
      53      │ - ··········"refId":·"A"
      54      │ - ········}
      55      │ - ······],
      56      │ - ······"title":·"Instance·Metrics",
      57      │ - ······"type":·"row"
      58      │ - ····},
      59      │ - ····{
      60      │ - ······"datasource":·{
      61      │ - ········"type":·"prometheus",
      62      │ - ········"uid":·"${datasource}"
      63      │ - ······},
      64      │ - ······"description":·"Current·CPU·utilization·represented·as·a·percentage·of·the·reserved·CPU·that·is·currently·in·use.",
      65      │ - ······"fieldConfig":·{
      66      │ - ········"defaults":·{
      67      │ - ··········"color":·{
      68      │ - ············"mode":·"palette-classic"
      69      │ - ··········},
      70      │ - ··········"custom":·{
      71      │ - ············"axisBorderShow":·false,
      72      │ - ············"axisCenteredZero":·false,
      73      │ - ············"axisColorMode":·"text",
      74      │ - ············"axisLabel":·"",
      75      │ - ············"axisPlacement":·"auto",
      76      │ - ············"barAlignment":·0,
      77      │ - ············"barWidthFactor":·0.6,
      78      │ - ············"drawStyle":·"line",
      79      │ - ············"fillOpacity":·20,
      80      │ - ············"gradientMode":·"none",
      81      │ - ············"hideFrom":·{
      82      │ - ··············"legend":·false,
      83      │ - ··············"tooltip":·false,
      84      │ - ··············"viz":·false
      85      │ - ············},
      86      │ - ············"insertNulls":·false,
      87      │ - ············"lineInterpolation":·"linear",
      88      │ - ············"lineWidth":·2,
      89      │ - ············"pointSize":·5,
      90      │ - ············"scaleDistribution":·{
      91      │ - ··············"type":·"linear"
      92      │ - ············},
      93      │ - ············"showPoints":·"never",
      94      │ - ············"spanNulls":·true,
      95      │ - ············"stacking":·{
      96      │ - ··············"group":·"A",
      97      │ - ··············"mode":·"none"
      98      │ - ············},
      99      │ - ············"thresholdsStyle":·{
     100      │ - ··············"mode":·"off"
     101      │ - ············}
     102      │ - ··········},
     103      │ - ··········"mappings":·[],
     104      │ - ··········"min":·0,
     105      │ - ··········"thresholds":·{
     106      │ - ············"mode":·"absolute",
     107      │ - ············"steps":·[
     108      │ - ··············{
     109      │ - ················"color":·"green",
     110      │ - ················"value":·null
     111      │ - ··············},
     112      │ - ··············{
     113      │ - ················"color":·"red",
     114      │ - ················"value":·80
     115      │ - ··············}
     116      │ - ············]
     117      │ - ··········},
     118      │ - ··········"unit":·"percentunit"
     119      │ - ········},
     120      │ - ········"overrides":·[
     121      │ - ··········{
     122      │ - ············"matcher":·{
     123      │ - ··············"id":·"byName",
     124      │ - ··············"options":·"CPU"
     125      │ - ············},
     126      │ - ············"properties":·[
     127      │ - ··············{
     128      │ - ················"id":·"color",
     129      │ - ················"value":·{
     130      │ - ··················"fixedColor":·"#E24D42",
     131      │ - ··················"mode":·"fixed"
     132      │ - ················}
     133      │ - ··············}
     134      │ - ············]
     135      │ - ··········}
     136      │ - ········]
     137      │ - ······},
     138      │ - ······"gridPos":·{
     139      │ - ········"h":·7,
     140      │ - ········"w":·12,
     141      │ - ········"x":·0,
     142      │ - ········"y":·1
     143      │ - ······},
     144      │ - ······"id":·2,
     145      │ - ······"options":·{
     146      │ - ········"legend":·{
     147      │ - ··········"calcs":·[
     148      │ - ············"mean",
     149      │ - ············"max",
     150      │ - ············"min"
  2298 more lines truncated


operator/charts/patroni-services/monitoring/grafana-dashboard.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Metrics·for·PostgreSQL·Cluster",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"graphTooltip":·1,
      28      │ - ··"id":·373,
      29      │ - ··"links":·[
      30      │ - ····{
      31      │ - ······"asDropdown":·false,
      32      │ - ······"icon":·"external·link",
      33      │ - ······"includeVars":·false,
      34      │ - ······"keepTime":·false,
      35      │ - ······"tags":·[
      36      │ - ········"Postgres_Performance"
      37      │ - ······],
      38      │ - ······"targetBlank":·false,
      39      │ - ······"title":·"PostgreSQL·Performance·Metrics",
      40      │ - ······"tooltip":·"",
      41      │ - ······"type":·"dashboards",
      42      │ - ······"url":·""
      43      │ - ····},
      44      │ - ····{
      45      │ - ······"asDropdown":·false,
      46      │ - ······"icon":·"external·link",
      47      │ - ······"includeVars":·false,
      48      │ - ······"keepTime":·false,
      49      │ - ······"tags":·[
      50      │ - ········"Postgres_Exporter"
      51      │ - ······],
      52      │ - ······"targetBlank":·false,
      53      │ - ······"title":·"Postgres·Exporter",
      54      │ - ······"tooltip":·"",
      55      │ - ······"type":·"dashboards",
      56      │ - ······"url":·""
      57      │ - ····}
      58      │ - ··],
      59      │ - ··"panels":·[
      60      │ - ····{
      61      │ - ······"collapsed":·true,
      62      │ - ······"gridPos":·{
      63      │ - ········"h":·1,
      64      │ - ········"w":·24,
      65      │ - ········"x":·0,
      66      │ - ········"y":·0
      67      │ - ······},
      68      │ - ······"id":·980,
      69      │ - ······"panels":·[
      70      │ - ········{
      71      │ - ··········"datasource":·{
      72      │ - ············"type":·"prometheus",
      73      │ - ············"uid":·"$datasource"
      74      │ - ··········},
      75      │ - ··········"fieldConfig":·{
      76      │ - ············"defaults":·{
      77      │ - ··············"color":·{
      78      │ - ················"mode":·"thresholds"
      79      │ - ··············},
      80      │ - ··············"mappings":·[
      81      │ - ················{
      82      │ - ··················"options":·{
      83      │ - ····················"0":·{
      84      │ - ······················"index":·2,
      85      │ - ······················"text":·"UP"
      86      │ - ····················},
      87      │ - ····················"6":·{
      88      │ - ······················"index":·1,
      89      │ - ······················"text":·"DEGRADED"
      90      │ - ····················},
      91      │ - ····················"10":·{
      92      │ - ······················"index":·0,
      93      │ - ······················"text":·"DOWN"
      94      │ - ····················},
      95      │ - ····················"11":·{
      96      │ - ······················"color":·"dark-green",
      97      │ - ······················"index":·3,
      98      │ - ······················"text":·"UP·(EXTERNAL)"
      99      │ - ····················}
     100      │ - ··················},
     101      │ - ··················"type":·"value"
     102      │ - ················}
     103      │ - ··············],
     104      │ - ··············"thresholds":·{
     105      │ - ················"mode":·"absolute",
     106      │ - ················"steps":·[
     107      │ - ··················{
     108      │ - ····················"color":·"rgba(50,·172,·45,·0.97)"
     109      │ - ··················},
     110      │ - ··················{
     111      │ - ····················"color":·"rgba(237,·129,·40,·0.89)",
     112      │ - ····················"value":·3
     113      │ - ··················},
     114      │ - ··················{
     115      │ - ····················"color":·"rgba(245,·54,·54,·0.9)",
     116      │ - ····················"value":·6
     117      │ - ··················}
     118      │ - ················]
     119      │ - ··············},
     120      │ - ··············"unit":·"none"
     121      │ - ············},
     122      │ - ············"overrides":·[]
     123      │ - ··········},
     124      │ - ··········"gridPos":·{
     125      │ - ············"h":·7,
     126      │ - ············"w":·4,
     127      │ - ············"x":·0,
     128      │ - ············"y":·39
     129      │ - ··········},
     130      │ - ··········"id":·10,
     131      │ - ··········"interval":·"$inter",
     132      │ - ··········"maxDataPoints":·100,
     133      │ - ··········"options":·{
     134      │ - ············"colorMode":·"value",
     135      │ - ············"graphMode":·"area",
     136      │ - ············"justifyMode":·"auto",
     137      │ - ············"orientation":·"horizontal",
     138      │ - ············"percentChangeColorMode":·"standard",
     139      │ - ············"reduceOptions":·{
     140      │ - ··············"calcs":·[
     141      │ - ················"lastNotNull"
     142      │ - ··············],
     143      │ - ··············"fields":·"",
     144      │ - ··············"values":·false
     145      │ - ············},
     146      │ - ············"showPercentChange":·false,
     147      │ - ············"textMode":·"auto",
     148      │ - ············"wideLayout":·true
     149      │ - ··········},
     150      │ - ··········"pluginVersion":·"10.4.13",
  18231 more lines truncated


operator/charts/patroni-services/monitoring/pgbackrest-exporter-grafana-dashboard.json format ━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"annotations":·{
       3      │ - ····"list":·[
       4      │ - ······{
       5      │ - ········"builtIn":·1,
       6      │ - ········"datasource":·{
       7      │ - ··········"type":·"datasource",
       8      │ - ··········"uid":·"grafana"
       9      │ - ········},
      10      │ - ········"enable":·true,
      11      │ - ········"hide":·true,
      12      │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
      13      │ - ········"name":·"Annotations·&·Alerts",
      14      │ - ········"target":·{
      15      │ - ··········"limit":·100,
      16      │ - ··········"matchAny":·false,
      17      │ - ··········"tags":·[],
      18      │ - ··········"type":·"dashboard"
      19      │ - ········},
      20      │ - ········"type":·"dashboard"
      21      │ - ······}
      22      │ - ····]
      23      │ - ··},
      24      │ - ··"description":·"Dashboard·works·with·pgbackrest_exporter",
      25      │ - ··"editable":·true,
      26      │ - ··"fiscalYearStartMonth":·0,
      27      │ - ··"graphTooltip":·0,
      28      │ - ··"id":·278,
      29      │ - ··"links":·[],
      30      │ - ··"panels":·[
      31      │ - ····{
      32      │ - ······"collapsed":·false,
      33      │ - ······"gridPos":·{
      34      │ - ········"h":·1,
      35      │ - ········"w":·24,
      36      │ - ········"x":·0,
      37      │ - ········"y":·0
      38      │ - ······},
      39      │ - ······"id":·46,
      40      │ - ······"panels":·[],
      41      │ - ······"title":·"General·info",
      42      │ - ······"type":·"row"
      43      │ - ····},
      44      │ - ····{
      45      │ - ······"datasource":·{
      46      │ - ········"type":·"prometheus",
      47      │ - ········"uid":·"${datasource}"
      48      │ - ······},
      49      │ - ······"description":·"Count·of·selected·stanzas.",
      50      │ - ······"fieldConfig":·{
      51      │ - ········"defaults":·{
      52      │ - ··········"color":·{
      53      │ - ············"mode":·"thresholds"
      54      │ - ··········},
      55      │ - ··········"mappings":·[],
      56      │ - ··········"thresholds":·{
      57      │ - ············"mode":·"absolute",
      58      │ - ············"steps":·[
      59      │ - ··············{
      60      │ - ················"color":·"green"
      61      │ - ··············}
      62      │ - ············]
      63      │ - ··········}
      64      │ - ········},
      65      │ - ········"overrides":·[]
      66      │ - ······},
      67      │ - ······"gridPos":·{
      68      │ - ········"h":·4,
      69      │ - ········"w":·4,
      70      │ - ········"x":·0,
      71      │ - ········"y":·1
      72      │ - ······},
      73      │ - ······"id":·57,
      74      │ - ······"options":·{
      75      │ - ········"colorMode":·"value",
      76      │ - ········"graphMode":·"area",
      77      │ - ········"justifyMode":·"auto",
      78      │ - ········"orientation":·"auto",
      79      │ - ········"percentChangeColorMode":·"standard",
      80      │ - ········"reduceOptions":·{
      81      │ - ··········"calcs":·[
      82      │ - ············"lastNotNull"
      83      │ - ··········],
      84      │ - ··········"fields":·"",
      85      │ - ··········"values":·false
      86      │ - ········},
      87      │ - ········"showPercentChange":·false,
      88      │ - ········"textMode":·"value",
      89      │ - ········"wideLayout":·true
      90      │ - ······},
      91      │ - ······"pluginVersion":·"11.6.5",
      92      │ - ······"targets":·[
      93      │ - ········{
      94      │ - ··········"datasource":·{
      95      │ - ············"type":·"prometheus",
      96      │ - ············"uid":·"${datasource}"
      97      │ - ··········},
      98      │ - ··········"editorMode":·"code",
      99      │ - ··········"expr":·"sum(count·by·(stanza)(pgbackrest_stanza_status{stanza=~\"$stanza\",·cluster=\"$cluster\",·namespace=\"$namespace\"}))",
     100      │ - ··········"legendFormat":·"__auto",
     101      │ - ··········"range":·true,
     102      │ - ··········"refId":·"A"
     103      │ - ········}
     104      │ - ······],
     105      │ - ······"title":·"Stanzas·CNT",
     106      │ - ······"type":·"stat"
     107      │ - ····},
     108      │ - ····{
     109      │ - ······"datasource":·{
     110      │ - ········"type":·"prometheus",
     111      │ - ········"uid":·"${datasource}"
     112      │ - ······},
     113      │ - ······"description":·"Count·of·all·backups·for·selected·stanzas·and·repos.",
     114      │ - ······"fieldConfig":·{
     115      │ - ········"defaults":·{
     116      │ - ··········"color":·{
     117      │ - ············"mode":·"thresholds"
     118      │ - ··········},
     119      │ - ··········"mappings":·[],
     120      │ - ··········"thresholds":·{
     121      │ - ············"mode":·"absolute",
     122      │ - ············"steps":·[
     123      │ - ··············{
     124      │ - ················"color":·"green"
     125      │ - ··············}
     126      │ - ············]
     127      │ - ··········}
     128      │ - ········},
     129      │ - ········"overrides":·[]
     130      │ - ······},
     131      │ - ······"gridPos":·{
     132      │ - ········"h":·4,
     133      │ - ········"w":·4,
     134      │ - ········"x":·4,
     135      │ - ········"y":·1
     136      │ - ······},
     137      │ - ······"id":·52,
     138      │ - ······"options":·{
     139      │ - ········"colorMode":·"value",
     140      │ - ········"graphMode":·"area",
     141      │ - ········"justifyMode":·"auto",
     142      │ - ········"orientation":·"auto",
     143      │ - ········"percentChangeColorMode":·"standard",
     144      │ - ········"reduceOptions":·{
     145      │ - ··········"calcs":·[
     146      │ - ············"lastNotNull"
     147      │ - ··········],
     148      │ - ··········"fields":·"",
     149      │ - ··········"values":·false
     150      │ - ········},
  14014 more lines truncated


operator/charts/patroni-services/monitoring/postgres-exporter-grafana-dashboard.json format ━━━━━━━━━━

  × Formatter would have printed the following content:

        1     1 │   {
        2       │ - ··"annotations":·{
        3       │ - ····"list":·[
        4       │ - ······{
        5       │ - ········"builtIn":·1,
        6       │ - ········"datasource":·{
        7       │ - ··········"type":·"datasource",
        8       │ - ··········"uid":·"grafana"
        9       │ - ········},
       10       │ - ········"enable":·true,
       11       │ - ········"hide":·true,
       12       │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
       13       │ - ········"name":·"Annotations·&·Alerts",
       14       │ - ········"target":·{
       15       │ - ··········"limit":·100,
       16       │ - ··········"matchAny":·false,
       17       │ - ··········"tags":·[],
       18       │ - ··········"type":·"dashboard"
       19       │ - ········},
       20       │ - ········"type":·"dashboard"
       21       │ - ······}
       22       │ - ····]
       23       │ - ··},
       24       │ - ··"description":·"Dashbord·works·with·postgres_exporter·for·prometheus",
       25       │ - ··"editable":·true,
       26       │ - ··"fiscalYearStartMonth":·0,
       27       │ - ··"gnetId":·9628,
       28       │ - ··"graphTooltip":·0,
       29       │ - ··"id":·147,
       30       │ - ··"links":·[
       31       │ - ····{
       32       │ - ······"asDropdown":·true,
       33       │ - ······"icon":·"external·link",
       34       │ - ······"includeVars":·false,
       35       │ - ······"keepTime":·false,
       36       │ - ······"tags":·[
       37       │ - ········"cloud",
       38       │ - ········"postgres"
       39       │ - ······],
       40       │ - ······"targetBlank":·true,
       41       │ - ······"title":·"Cloud·Dashboards",
       42       │ - ······"tooltip":·"",
       43       │ - ······"type":·"dashboards",
       44       │ - ······"url":·""
       45       │ - ····}
       46       │ - ··],
       47       │ - ··"liveNow":·false,
       48       │ - ··"panels":·[
       49       │ - ····{
       50       │ - ······"collapsed":·false,
       51       │ - ······"datasource":·{
       52       │ - ········"type":·"prometheus",
       53       │ - ········"uid":·"$datasource"
       54       │ - ······},
       55       │ - ······"gridPos":·{
       56       │ - ········"h":·1,
       57       │ - ········"w":·24,
       58       │ - ········"x":·0,
       59       │ - ········"y":·0
       60       │ - ······},
       61       │ - ······"id":·32,
       62       │ - ······"panels":·[],
       63       │ - ······"targets":·[
       64       │ - ········{
       65       │ - ··········"datasource":·{
       66       │ - ············"type":·"prometheus",
       67       │ - ············"uid":·"$datasource"
       68       │ - ··········},
       69       │ - ··········"refId":·"A"
       70       │ - ········}
       71       │ - ······],
       72       │ - ······"title":·"System·Configuration·and·Statistics",
       73       │ - ······"type":·"row"
       74       │ - ····},
       75       │ - ····{
       76       │ - ······"datasource":·{
       77       │ - ········"type":·"prometheus",
       78       │ - ········"uid":·"$datasource"
       79       │ - ······},
       80       │ - ······"description":·"Instance·current·status.",
       81       │ - ······"fieldConfig":·{
       82       │ - ········"defaults":·{
       83       │ - ··········"mappings":·[
       84       │ - ············{
       85       │ - ··············"options":·{
       86       │ - ················"0":·{
       87       │ - ··················"text":·"Master"
       88       │ - ················},
       89       │ - ················"1":·{
       90       │ - ··················"text":·"sync"
       91       │ - ················},
       92       │ - ················"2":·{
       93       │ - ··················"text":·"async"
       94       │ - ················}
       95       │ - ··············},
       96       │ - ··············"type":·"value"
       97       │ - ············},
       98       │ - ············{
       99       │ - ··············"options":·{
      100       │ - ················"match":·"null",
      101       │ - ················"result":·{
      102       │ - ··················"text":·"not·started"
      103       │ - ················}
      104       │ - ··············},
      105       │ - ··············"type":·"special"
      106       │ - ············}
      107       │ - ··········],
      108       │ - ··········"thresholds":·{
      109       │ - ············"mode":·"absolute",
      110       │ - ············"steps":·[
      111       │ - ··············{
      112       │ - ················"color":·"#299c46",
      113       │ - ················"value":·null
      114       │ - ··············},
      115       │ - ··············{
      116       │ - ················"color":·"#FA6400",
      117       │ - ················"value":·1
      118       │ - ··············},
      119       │ - ··············{
      120       │ - ················"color":·"#d44a3a",
      121       │ - ················"value":·2
      122       │ - ··············}
      123       │ - ············]
      124       │ - ··········},
      125       │ - ··········"unit":·"none"
      126       │ - ········},
      127       │ - ········"overrides":·[]
      128       │ - ······},
      129       │ - ······"gridPos":·{
      130       │ - ········"h":·3,
      131       │ - ········"w":·3,
      132       │ - ········"x":·0,
      133       │ - ········"y":·1
      134       │ - ······},
      135       │ - ······"id":·118,
      136       │ - ······"maxDataPoints":·100,
      137       │ - ······"options":·{
      138       │ - ········"colorMode":·"value",
      139       │ - ········"fieldOptions":·{
      140       │ - ··········"calcs":·[
      141       │ - ············"lastNotNull"
      142       │ - ··········]
      143       │ - ········},
      144       │ - ········"graphMode":·"none",
      145       │ - ········"justifyMode":·"auto",
      146       │ - ········"orientation":·"horizontal",
      147       │ - ········"reduceOptions":·{
      148       │ - ··········"calcs":·[
      149       │ - ············"lastNotNull"
      150       │ - ··········],
  23330 more lines truncated


operator/charts/patroni-services/monitoring/query-exporter-grafana-dashboard.json format ━━━━━━━━━━━

  × Formatter would have printed the following content:

        1     1 │   {
        2       │ - ··"annotations":·{
        3       │ - ····"list":·[
        4       │ - ······{
        5       │ - ········"builtIn":·1,
        6       │ - ········"datasource":·{
        7       │ - ··········"type":·"datasource",
        8       │ - ··········"uid":·"grafana"
        9       │ - ········},
       10       │ - ········"enable":·true,
       11       │ - ········"hide":·true,
       12       │ - ········"iconColor":·"rgba(0,·211,·255,·1)",
       13       │ - ········"name":·"Annotations·&·Alerts",
       14       │ - ········"target":·{
       15       │ - ··········"limit":·100,
       16       │ - ··········"matchAny":·false,
       17       │ - ··········"tags":·[],
       18       │ - ··········"type":·"dashboard"
       19       │ - ········},
       20       │ - ········"type":·"dashboard"
       21       │ - ······}
       22       │ - ····]
       23       │ - ··},
       24       │ - ··"description":·"Dashbord·works·with·postgres_exporter·for·prometheus",
       25       │ - ··"editable":·true,
       26       │ - ··"fiscalYearStartMonth":·0,
       27       │ - ··"graphTooltip":·0,
       28       │ - ··"id":·1055,
       29       │ - ··"links":·[
       30       │ - ····{
       31       │ - ······"asDropdown":·true,
       32       │ - ······"icon":·"external·link",
       33       │ - ······"includeVars":·false,
       34       │ - ······"keepTime":·false,
       35       │ - ······"tags":·[
       36       │ - ········"cloud",
       37       │ - ········"postgres"
       38       │ - ······],
       39       │ - ······"targetBlank":·true,
       40       │ - ······"title":·"Cloud·Dashboards",
       41       │ - ······"tooltip":·"",
       42       │ - ······"type":·"dashboards",
       43       │ - ······"url":·""
       44       │ - ····}
       45       │ - ··],
       46       │ - ··"panels":·[
       47       │ - ····{
       48       │ - ······"collapsed":·false,
       49       │ - ······"gridPos":·{
       50       │ - ········"h":·1,
       51       │ - ········"w":·24,
       52       │ - ········"x":·0,
       53       │ - ········"y":·0
       54       │ - ······},
       55       │ - ······"id":·32,
       56       │ - ······"panels":·[],
       57       │ - ······"title":·"System·Configuration·and·Statistics",
       58       │ - ······"type":·"row"
       59       │ - ····},
       60       │ - ····{
       61       │ - ······"datasource":·{
       62       │ - ········"type":·"prometheus",
       63       │ - ········"uid":·"$datasource"
       64       │ - ······},
       65       │ - ······"description":·"Instance·current·status.",
       66       │ - ······"fieldConfig":·{
       67       │ - ········"defaults":·{
       68       │ - ··········"mappings":·[
       69       │ - ············{
       70       │ - ··············"options":·{
       71       │ - ················"0":·{
       72       │ - ··················"text":·"Master"
       73       │ - ················},
       74       │ - ················"1":·{
       75       │ - ··················"text":·"sync"
       76       │ - ················},
       77       │ - ················"2":·{
       78       │ - ··················"text":·"async"
       79       │ - ················}
       80       │ - ··············},
       81       │ - ··············"type":·"value"
       82       │ - ············},
       83       │ - ············{
       84       │ - ··············"options":·{
       85       │ - ················"match":·"null",
       86       │ - ················"result":·{
       87       │ - ··················"text":·"not·started"
       88       │ - ················}
       89       │ - ··············},
       90       │ - ··············"type":·"special"
       91       │ - ············}
       92       │ - ··········],
       93       │ - ··········"thresholds":·{
       94       │ - ············"mode":·"absolute",
       95       │ - ············"steps":·[
       96       │ - ··············{
       97       │ - ················"color":·"#299c46",
       98       │ - ················"value":·null
       99       │ - ··············},
      100       │ - ··············{
      101       │ - ················"color":·"#FA6400",
      102       │ - ················"value":·1
      103       │ - ··············},
      104       │ - ··············{
      105       │ - ················"color":·"#d44a3a",
      106       │ - ················"value":·2
      107       │ - ··············}
      108       │ - ············]
      109       │ - ··········},
      110       │ - ··········"unit":·"none"
      111       │ - ········},
      112       │ - ········"overrides":·[]
      113       │ - ······},
      114       │ - ······"gridPos":·{
      115       │ - ········"h":·3,
      116       │ - ········"w":·3,
      117       │ - ········"x":·0,
      118       │ - ········"y":·1
      119       │ - ······},
      120       │ - ······"id":·118,
      121       │ - ······"maxDataPoints":·100,
      122       │ - ······"options":·{
      123       │ - ········"colorMode":·"value",
      124       │ - ········"fieldOptions":·{
      125       │ - ··········"calcs":·[
      126       │ - ············"lastNotNull"
      127       │ - ··········]
      128       │ - ········},
      129       │ - ········"graphMode":·"none",
      130       │ - ········"justifyMode":·"auto",
      131       │ - ········"orientation":·"horizontal",
      132       │ - ········"percentChangeColorMode":·"standard",
      133       │ - ········"reduceOptions":·{
      134       │ - ··········"calcs":·[
      135       │ - ············"lastNotNull"
      136       │ - ··········],
      137       │ - ··········"fields":·"",
      138       │ - ··········"values":·false
      139       │ - ········},
      140       │ - ········"showPercentChange":·false,
      141       │ - ········"text":·{},
      142       │ - ········"textMode":·"auto",
      143       │ - ········"wideLayout":·true
      144       │ - ······},
      145       │ - ······"pluginVersion":·"11.5.2",
      146       │ - ······"targets":·[
      147       │ - ········{
      148       │ - ··········"datasource":·{
      149       │ - ············"0":·"$",
      150       │ - ············"1":·"d",
  23700 more lines truncated


operator/charts/patroni-services/values.schema.json format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Formatter would have printed the following content:

       1    1 │   {
       2      │ - ··"$schema":·"http://json-schema.org/draft-07/schema#",
       3      │ - ··"title":·"patroni-services·values",
       4      │ - ··"type":·"object",
       5      │ - ··"additionalProperties":·true,
       6      │ - ··"properties":·{
       7      │ - ····"postgresUser":·{
       8      │ - ······"type":·"string",
       9      │ - ······"default":·"postgres",
      10      │ - ······"description":·"The·name·of·database·superuser"
      11      │ - ····},
      12      │ - ····"postgresPassword":·{
      13      │ - ······"type":·"string",
      14      │ - ······"default":·"p@ssWOrD1",
      15      │ - ······"description":·"The·password·for·the·database·superuser"
      16      │ - ····},
      17      │ - ····"replicatorPassword":·{
      18      │ - ······"type":·"string",
      19      │ - ······"default":·"replicator"
      20      │ - ····},
      21      │ - ····"podLabels":·{
      22      │ - ······"type":·"object",
      23      │ - ······"additionalProperties":·{
      24      │ - ········"type":·"string"
      25      │ - ······},
      26      │ - ······"default":·{}
      27      │ - ····},
      28      │ - ····"imagePullPolicy":·{
      29      │ - ······"type":·"string",
      30      │ - ······"default":·"IfNotPresent"
      31      │ - ····},
      32      │ - ····"privateRegistry":·{
      33      │ - ······"$ref":·"#/$defs/privateRegistry"
      34      │ - ····},
      35      │ - ····"global":·{
      36      │ - ······"$ref":·"#/$defs/global"
      37      │ - ····},
      38      │ - ····"serviceAccount":·{
      39      │ - ······"$ref":·"#/$defs/serviceAccount"
      40      │ - ····},
      41      │ - ····"operatorInit":·{
      42      │ - ······"$ref":·"#/$defs/operatorInit"
      43      │ - ····},
      44      │ - ····"operator":·{
      45      │ - ······"$ref":·"#/$defs/operator"
      46      │ - ····},
      47      │ - ····"policies":·{
      48      │ - ······"$ref":·"#/$defs/policies"
      49      │ - ····},
      50      │ - ····"tls":·{
      51      │ - ······"$ref":·"#/$defs/tls"
      52      │ - ····},
      53      │ - ····"patroni":·{
      54      │ - ······"$ref":·"#/$defs/patroni"
      55      │ - ····},
      56      │ - ····"metricCollector":·{
      57      │ - ······"$ref":·"#/$defs/metricCollector"
      58      │ - ····},
      59      │ - ····"backupDaemon":·{
      60      │ - ······"$ref":·"#/$defs/backupDaemon"
      61      │ - ····},
      62      │ - ····"pgBackRest":·{
      63      │ - ······"$ref":·"#/$defs/pgBackRest"
      64      │ - ····},
      65      │ - ····"pgBackRestExporter":·{
      66      │ - ······"$ref":·"#/$defs/pgBackRestExporter"
      67      │ - ····},
      68      │ - ····"externalDataBase":·{
      69      │ - ······"$ref":·"#/$defs/externalDataBase"
      70      │ - ····},
      71      │ - ····"dbaas":·{
      72      │ - ······"$ref":·"#/$defs/dbaas"
      73      │ - ····},
      74      │ - ····"siteManager":·{
      75      │ - ······"$ref":·"#/$defs/siteManager"
      76      │ - ····},
      77      │ - ····"queryExporter":·{
      78      │ - ······"$ref":·"#/$defs/queryExporter"
      79      │ - ····},
      80      │ - ····"powaUI":·{
      81      │ - ······"$ref":·"#/$defs/powaUI"
      82      │ - ····},
      83      │ - ····"replicationController":·{
      84      │ - ······"$ref":·"#/$defs/replicationController"
      85      │ - ····},
      86      │ - ····"connectionPooler":·{
      87      │ - ······"$ref":·"#/$defs/connectionPooler"
      88      │ - ····},
      89      │ - ····"tracing":·{
      90      │ - ······"$ref":·"#/$defs/tracing"
      91      │ - ····},
      92      │ - ····"tests":·{
      93      │ - ······"$ref":·"#/$defs/tests"
      94      │ - ····},
      95      │ - ····"runTestsOnly":·{
      96      │ - ······"type":·"boolean",
      97      │ - ······"default":·false
      98      │ - ····},
      99      │ - ····"INTERNAL_TLS_ENABLED":·{
     100      │ - ······"type":·"boolean",
     101      │ - ······"default":·false
     102      │ - ····},
     103      │ - ····"GLOBAL_SECURITY_CONTEXT":·{
     104      │ - ······"type":·"boolean",
     105      │ - ······"default":·true
     106      │ - ····},
     107      │ - ····"CLOUD_PUBLIC_HOST":·{
     108      │ - ······"type":·"string",
     109      │ - ······"default":·"k8s.default"
     110      │ - ····}
     111      │ - ··},
     112      │ - ··"$defs":·{
     113      │ - ····"privateRegistry":·{
     114      │ - ······"type":·"object",
     115      │ - ······"additionalProperties":·false,
     116      │ - ······"properties":·{
     117      │ - ········"enabled":·{
     118      │ - ··········"type":·"boolean",
     119      │ - ··········"default":·false
     120      │ - ········},
     121      │ - ········"secrets":·{
     122      │ - ··········"type":·"array",
     123      │ - ··········"items":·{
     124      │ - ············"type":·"object",
     125      │ - ············"additionalProperties":·false,
     126      │ - ············"properties":·{
     127      │ - ··············"name":·{
     128      │ - ················"type":·"string"
     129      │ - ··············},
     130      │ - ··············"create":·{
     131      │ - ················"type":·"boolean",
     132      │ - ················"default":·false
     133      │ - ··············},
     134      │ - ··············"registry":·{
     135      │ - ················"type":·"string"
     136      │ - ··············},
     137      │ - ··············"username":·{
     138      │ - ················"type":·"string"
     139      │ - ··············},
     140      │ - ··············"password":·{
     141      │ - ················"type":·"string"
     142      │ - ··············},
     143      │ - ··············"email":·{
     144      │ - ················"type":·"string"
     145      │ - ··············}
     146      │ - ············}
     147      │ - ··········}
     148      │ - ········}
     149      │ - ······}
     150      │ - ····},
  2533 more lines truncated


format ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  × Some errors were emitted while running checks.

DOCKERFILE_HADOLINT
/github/workspace/services/backup-daemon/Dockerfile:14 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:25 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:26 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:27 DL3009 �[92minfo�[0m: Delete the apt lists (/var/lib/apt/lists) after installing something
/github/workspace/services/backup-daemon/Dockerfile:27 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:28 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:29 DL3009 �[92minfo�[0m: Delete the apt lists (/var/lib/apt/lists) after installing something
/github/workspace/services/backup-daemon/Dockerfile:29 DL3008 �[1m�[93mwarning�[0m: Pin versions in apt get install. Instead of `apt-get install <package>` use `apt-get install <package>=<version>`
/github/workspace/services/backup-daemon/Dockerfile:29 DL3015 �[92minfo�[0m: Avoid additional packages by specifying `--no-install-recommends`
/github/workspace/services/backup-daemon/Dockerfile:31 DL3008 �[1m�[93mwarning�[0m: Pin versions in apt get install. Instead of `apt-get install <package>` use `apt-get install <package>=<version>`
/github/workspace/services/backup-daemon/Dockerfile:36 DL3008 �[1m�[93mwarning�[0m: Pin versions in apt get install. Instead of `apt-get install <package>` use `apt-get install <package>=<version>`
/github/workspace/services/backup-daemon/Dockerfile:47 DL3042 �[1m�[93mwarning�[0m: Avoid use of cache directory with pip. Use `pip install --no-cache-dir <package>`
/github/workspace/services/backup-daemon/Dockerfile:47 DL3059 �[92minfo�[0m: Multiple consecutive `RUN` instructions. Consider consolidation.
/github/workspace/services/backup-daemon/Dockerfile:50 DL3042 �[1m�[93mwarning�[0m: Avoid use of cache directory with pip. Use `pip install --no-cache-dir <package>`
/github/workspace/services/backup-daemon/Dockerfile:50 DL3013 �[1m�[93mwarning�[0m: Pin versions in pip. Instead of `pip install <package>` use `pip install <package>==<version>` or `pip install --requirement <requirements file>`
EDITORCONFIG
�[33;1mservices/backup-daemon/Dockerfile:�[33;0m
�[31;1m	37-46: Wrong amount of left-padding spaces(want multiple of 4)�[33;0m
�[31;1m	58-61: Wrong amount of left-padding spaces(want multiple of 4)�[33;0m
�[31;1m
2 errors found�[33;0m
GITHUB_ACTIONS_ZIZMOR
�[1m�[91merror[unpinned-uses]�[0m�[1m: unpinned action reference�[0m
  �[1m�[94m--> �[0m/github/workspace/.github/workflows/super-linter.yaml:43:15
   �[1m�[94m|�[0m
�[1m�[94m43�[0m �[1m�[94m|�[0m         uses: actions/checkout@v4
   �[1m�[94m|�[0m               �[1m�[91m^^^^^^^^^^^^^^^^^^^�[0m �[1m�[91maction is not pinned to a hash (required by blanket policy)�[0m
   �[1m�[94m|�[0m
   �[1m�[94m= �[0m�[1mnote�[0m: audit confidence → High
   �[1m�[94m= �[0m�[1mnote�[0m: this finding has an auto-fix
   �[1m�[94m= �[0m�[1mhelp�[0m: audit documentation → �[32mhttps://docs.zizmor.sh/audits/#unpinned-uses�[39m

�[32m4�[39m findings (�[1m�[93m3�[39m suppressed, �[92m1�[39m fixable�[0m): �[35m0�[39m informational, �[36m0�[39m low, �[33m0�[39m medium, �[31m1�[39m high🌈 zizmor v1.23.1
�[32m INFO�[0m �[1maudit�[0m�[2m:�[0m �[2mzizmor�[0m�[2m:�[0m 🌈 completed /github/workspace/.github/workflows/super-linter.yaml
GO
0 issues.level=error msg="[linters_context] typechecking error: named files must all be in one directory; have /github/workspace/operator/pkg/reconciler and /github/workspace/services/pgbackrest-sidecar/pkg/utils"
GO_MODULES
0 issues.
../../services/pgbackrest-sidecar/pkg/utils/utils.go:39:50: ST1008: error should be returned as the last argument (staticcheck)
func ExecCommand(command string, args []string) (error, string) {
                                                 ^
1 issues:
* staticcheck: 1
0 issues.
0 issues.
0 issues.
0 issues.
0 issues.
../../services/dbaas-adapter/adapter/basic/basic.go:437:24: QF1001: could apply De Morgan's law (staticcheck)
	if version == "v2" && !(util.Contains(sa.GetSupportedRoles(), postgresUserRequest.Role) || postgresUserRequest.Role == "none") {
	                      ^
../../services/dbaas-adapter/adapter/basic/basic.go:1000:2: QF1003: could use tagged switch on resource.Kind (staticcheck)
	if resource.Kind == DbKind {
	^
../../services/dbaas-adapter/adapter/basic/basic.go:1382:29: QF1008: could remove embedded field "ClusterAdapter" from selector (staticcheck)
	values := strings.Split(sa.ClusterAdapter.GetUser(), "@")
	                           ^
../../services/dbaas-adapter/adapter/basic/basic_roles.go:237:83: QF1008: could remove embedded field "ClusterAdapter" from selector (staticcheck)
		if metadataOwner != "" && adminUserName != metadataOwner && metadataOwner != sa.ClusterAdapter.GetUser() {
		                                                                                ^
../../services/dbaas-adapter/adapter/basic/sql_helper.go:173:56: QF1004: could use strings.ReplaceAll instead (staticcheck)
	return fmt.Sprintf("DROP DATABASE IF EXISTS \"%s\";", strings.Replace(dbName, "\"", "\\\"", -1))
	                                                      ^
5 issues:
* staticcheck: 5
0 issues.
0 issues.
0 issues.
../../services/monitoring-agent/collector/pkg/postgres/client.go:63:2: QF1007: could merge conditional assignment into variable declaration (staticcheck)
	ssl := false
	^
1 issues:
* staticcheck: 1
0 issues.
../../services/monitoring-agent/collector/pkg/util/util.go:191:23: Error return value of `resp.Body.Close` is not checked (errcheck)
	defer resp.Body.Close()
	                     ^
1 issues:
* errcheck: 1
PYTHON_RUFF
F403 `from utils_common import *` used; unable to detect undefined names
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:20:1
   |
18 | import subprocess
19 | import logging
20 | from utils_common import *
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
21 | import pprint
22 | import time
   |

F401 [*] `pprint` imported but unused
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:21:8
   |
19 | import logging
20 | from utils_common import *
21 | import pprint
   |        ^^^^^^
22 | import time
23 | import re
   |
help: Remove unused import: `pprint`

F401 `kubernetes.client.configuration` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:29:35
   |
27 | try:
28 |     from kubernetes import client
29 |     from kubernetes.client import configuration
   |                                   ^^^^^^^^^^^^^
30 |     from kubernetes.client import rest
31 |     #from openshift import client as op_client
   |
help: Remove unused import: `kubernetes.client.configuration`

F401 `kubernetes.client.rest` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:30:35
   |
28 |     from kubernetes import client
29 |     from kubernetes.client import configuration
30 |     from kubernetes.client import rest
   |                                   ^^^^
31 |     #from openshift import client as op_client
32 |     from kubernetes.client.rest import ApiException
   |
help: Remove unused import: `kubernetes.client.rest`

F401 `kubernetes.stream.ws_client.STDOUT_CHANNEL` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:34:60
   |
32 |     from kubernetes.client.rest import ApiException
33 |     from kubernetes.stream import stream
34 |     from kubernetes.stream.ws_client import ERROR_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL
   |                                                            ^^^^^^^^^^^^^^
35 |     import kubernetes
36 |     from six import iteritems
   |
help: Remove unused import

F401 `kubernetes.stream.ws_client.STDERR_CHANNEL` imported but unused; consider using `importlib.util.find_spec` to test for availability
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:34:76
   |
32 |     from kubernetes.client.rest import ApiException
33 |     from kubernetes.stream import stream
34 |     from kubernetes.stream.ws_client import ERROR_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL
   |                                                                            ^^^^^^^^^^^^^^
35 |     import kubernetes
36 |     from six import iteritems
   |
help: Remove unused import

F841 [*] Local variable `e` is assigned to but never used
  --> services/backup-daemon/maintenance/recovery/utils_oc.py:85:23
   |
84 |     use_kube_client = True
85 | except ImportError as e:
   |                       ^
86 |     log.exception("Cannot use python client")
87 |     use_kube_client = False
   |
help: Remove assignment to unused variable `e`

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:439:6
    |
437 |                 raise Exception("Cannot remove pod. Error: {}".format(error))
438 |
439 |     @retry(tries=5)  # handle case when DC version is Unknown
    |      ^^^^^
440 |     def scale(self, name, count, entity="dc"):
441 |         subprocess.check_call("{} scale --replicas={} {} {}"
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:524:13
    |
522 |                 apps_api = client.AppsV1Api(self._api_client)
523 |                 items = apps_api.list_namespaced_stateful_set(self.project).items
524 |             except:
    |             ^^^^^^
525 |                 apps_api = client.AppsV1beta1Api(self._api_client)
526 |                 items = apps_api.list_namespaced_stateful_set(self.project).items
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:531:13
    |
529 |                 apps_api = client.AppsV1beta1Api(self._api_client)
530 |                 items = apps_api.list_namespaced_deployment(self.project).items
531 |             except:
    |             ^^^^^^
532 |                 apps_api = client.AppsV1Api(self._api_client)
533 |                 items = apps_api.list_namespaced_deployment(self.project).items
    |

F841 [*] Local variable `e` is assigned to but never used
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:579:29
    |
577 |         try:
578 |             return self.get_entity(entity_type, entity_name)
579 |         except Exception as e:
    |                             ^
580 |             return None
    |
help: Remove assignment to unused variable `e`

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:647:6
    |
645 |                 raise e
646 |
647 |     @retry(tries=30, delay=5)
    |      ^^^^^
648 |     def oc_exec(self, pod_id, command):
649 |         log.debug(f"Try to execute '{command}' on pod {pod_id}")
    |

F405 `retry` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:745:6
    |
743 |                 raise ae
744 |
745 |     @retry(tries=5)  # handle case when DC version is Unknown
    |      ^^^^^
746 |     def scale(self, name, count, entity="dc"):
747 |         log.debug("Try to scale {} {} to {} replicas".format(entity, name, count))
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:758:13
    |
756 |                 core_api = client.AppsV1beta1Api(self._api_client)
757 |                 data = core_api.patch_namespaced_deployment(name, self.project, {"spec": {"replicas": count}})
758 |             except:
    |             ^^^^^^
759 |                 core_api = client.AppsV1Api(self._api_client)
760 |                 data = core_api.patch_namespaced_deployment(name, self.project, {"spec": {"replicas": count}})
    |

F405 `Differ` may be undefined, or defined from star imports
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:766:16
    |
765 |     def get_json_diff(self, source, data):
766 |         return Differ().get_json_diff(source, data, keep_name=True)
    |                ^^^^^^
767 |
768 |     def apply_object(self, data):
    |

E722 Do not use bare `except`
   --> services/backup-daemon/maintenance/recovery/utils_oc.py:812:13
    |
810 |                 apps_api = client.AppsV1beta1ApiApi(self._api_client)
811 |                 source = reset_last_applied(self.get_entity("deployment", entity_name))
812 |             except:
    |             ^^^^^^
813 |                 apps_api = client.AppsV1Api(self._api_client)
814 |                 source = reset_last_applied(self.get_entity("deployment", entity_name))
    |

Found 16 errors.
[*] 3 fixable with the `--fix` option.
PYTHON_RUFF_FORMAT
Would reformat: services/backup-daemon/maintenance/recovery/utils_oc.py
1 file would be reformatted

@Tvion Tvion marked this pull request as ready for review July 14, 2026 11:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working refactor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants