Skip to content

chore(multigres): bump images and module to 300f673 - #558

Closed
soedirgo wants to merge 1 commit into
multigres:mainfrom
soedirgo:chore/bump-multigres-b713432
Closed

chore(multigres): bump images and module to 300f673#558
soedirgo wants to merge 1 commit into
multigres:mainfrom
soedirgo:chore/bump-multigres-b713432

Conversation

@soedirgo

@soedirgo soedirgo commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

What

Bumps the default upstream images and the github.com/multigres/multigres module to 300f673.

Constant Image Old New
DefaultPostgresImage ghcr.io/multigres/pgctld sha-54b4c18 sha-300f673
DefaultMultiadminImage ghcr.io/multigres/multigres sha-54b4c18 sha-300f673
DefaultMultiorchImage ghcr.io/multigres/multigres sha-54b4c18 sha-300f673
DefaultMultipoolerImage ghcr.io/multigres/multigres sha-54b4c18 sha-300f673
DefaultMultigatewayImage ghcr.io/multigres/multigres sha-54b4c18 sha-300f673
DefaultMultiadminWebImage ghcr.io/multigres/multiadmin-web sha-95eb327 sha-64da1ab

Module: v0.0.0-20260722000357-54b4c18f6f5fv0.0.0-20260731210621-300f673c63ee. DefaultEtcdImage and DefaultPostgresExporterImage are untouched.

Tags verified present in GHCR before pinning:

ghcr.io/multigres/multigres:sha-300f673      sha256:66d20d1253ae87829574cc490f076665b02ec03130f7e0c901e7fff67d2681e7
ghcr.io/multigres/pgctld:sha-300f673         sha256:2257013afddbe9a7beff4cb792df91aa18f6c306872cad6fe9f808c207330daa
ghcr.io/multigres/multiadmin-web:sha-64da1ab sha256:019506ce9c004d3af0461dd3cdbea7c6aaef8ae0b043a74ff6764599be0aee5d

multiadmin-web has no sha-300f673 build. 64da1ab is the newest commit touching web/multiadmin/ at or before 300f673c (the following nine commits are Go-only, docs, or CI), so it is the correct web-side equivalent. The module is pinned to 300f673 to match the core images.

Operator impact

No operator code changes are required. Findings from the pin_upstream_images audit over 54b4c18..300f673c (50 upstream commits):

  • RewindToSource RPC removed (22d50ae2) — dropped from proto/multipoolermanagerdata.proto, consensusservice.proto, and the rpcclient interface; diverged standbys now self-heal locally in multipooler. grep -rn RewindToSource over the operator returns nothing. No impact.
  • POSTGRES_ACTION_REWIND = 4 removed from the PostgresAction enum. The operator never references PostgresAction. No impact.
  • pgctld starts an existing PGDATA as a standby by default (06c2155b) — StartRequest.as_primary now defaults to false, so a crashed former primary comes back in recovery mode and is only promoted through consensus-gated pg_promote(). The operator does not import go/pb/pgctldservice and never calls Start itself. No impact, but relevant when reading e2e failover timings: a hard-killed sole primary now stays read-only until multiorch promotes it.
  • pgctld live-includes extra postgresql.conf instead of copying at initdb (11675fd7) — this one targets the operator's flow directly. appendExtraConfFiles now emits include_if_exists '<abs path>' at the end of postgresql.conf rather than copying bytes, so the ConfigMap the operator mounts and passes via POSTGRES_INITDB_EXTRA_CONF (containers.go:276, PostgresConfigMountPath = /etc/pgctld/postgres-config) is re-read on every start and pg_reload_conf() SIGHUP. Previously operator config edits were frozen at cluster creation. The env var name and absolute-path contract are unchanged, so no operator change — but note the caveat below.
  • Structured-logging refactor (4e311c15, plus c5c6b80b quieting the health/replication paths) — 84 files, messages lowercased and attribute keys held to snake_case by sloglint. buildHandler in go/common/servenv/logging.go is a plain slog.NewJSONHandler with no ReplaceAttr, so the level/msg builtins are untouched. The observer's scanner (tools/observer/pkg/observer/logs.go:200-205) reads exactly level, msg, error, problem_codeproblem_code is still emitted (go/services/multiorch/recovery/recovery_grace_period.go:204), and isProbeNoise's two message strings (startup failed, error handling message) are unchanged in this range (git log -S over both returns nothing). No impact.
  • eventlog.Emit now uses the canonical event type as the record message instead of the multigres.event sentinel. Nothing in this repo greps for that sentinel. No impact.
  • StandbyReplicationStatus.last_receive_lsn_advance_time (012077f5) and PrimaryConnInfo.passfile (64da1abd) added; multiorch cohort-eligibility tightening (57db243a, 9111441c), SetPrimary target caching (300f673c), and deferred repair on unknown replication status (d78123d0). The operator consumes none of these messages. New feature opportunity, not wired up here.
  • clustermetadata.proto is unchanged across the whole range, so there is no repeat of the PoolerType deprecation handled in 4ec99a5. The topoclient changes in this range are log-message lowercasing only, no API surface change.

The only multipoolermanagerdata symbols the operator uses are BackupMetadata, BackupMetadata_COMPLETE, BackupMetadata_INCOMPLETE, GetBackupsRequest/Response, and UpdateConsensusRuleRequest/Response — none changed.

Caveat: existing shards do not gain the config include directive

GeneratePostgresServerConfig is only called from InitDataDirWithResult, which early-returns when IsDataDirInitialized() is true (go/cmd/pgctld/command/init.go:97-102). Shards whose PGDATA was initialized by an older pgctld therefore keep the copied-bytes snapshot in PGDATA/postgresql.conf and no include_if_exists line, so the image bump alone does not make their mounted config live. Newly created shards get the new behavior. Worth knowing before anyone treats #554-style config propagation as fixed for existing clusters.

Flag compatibility

All 38 --flag strings in pkg/resource-handler/controller/shard/containers.go still exist upstream at 300f673. Two apparent misses are false positives: --repo1-path appears only in a comment about pgbackrest, and --web.listen-address belongs to postgres-exporter, not a multigres binary.

Environment variable compatibility

PGDATA and POSTGRES_PASSWORD_FILE remain the only hard requirements, and both are set on each container that needs them — buildPgctldSidecar (containers.go:262, :266) and buildMultipoolerContainer (:513, :517). buildMultiorchContainer needs neither.

Verification

  • go build ./..., go vet ./..., go test ./... — all pass, no failures.
  • go mod tidy produced no transitive churn: go.mod changes by exactly one line.
  • tools/observer: go mod tidy is a no-op, go build ./... and go test ./... pass.
  • Not yet run: make kind-redeploy smoke test against a real cluster. Left to CI's e2e matrix, hence draft.

The branch name still reads chore/bump-multigres-b713432 — it was retargeted from b713432 to 300f673 in place, and GitHub does not allow changing a PR's head ref.

@soedirgo
soedirgo force-pushed the chore/bump-multigres-b713432 branch from e0683b8 to c2b5a64 Compare August 3, 2026 11:45
@github-actions

This comment has been minimized.

@soedirgo
soedirgo force-pushed the chore/bump-multigres-b713432 branch from c2b5a64 to bdf3485 Compare August 3, 2026 11:48
@soedirgo
soedirgo marked this pull request as ready for review August 3, 2026 11:50
@soedirgo
soedirgo requested a review from a team as a code owner August 3, 2026 11:50
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

- Multigres 300f673 removes the RewindToSource RPC and the POSTGRES_ACTION_REWIND enum value; diverged standbys now self-heal locally inside multipooler. The operator references neither symbol, so the module bump is source-compatible and needs no code change.
- pgctld now brings an already-initialized data directory up as a standby unless StartRequest.as_primary is set, so a crashed primary returns read-only until consensus promotes it. That path is entirely data-plane; the operator does not call pgctld's Start RPC.
- pgctld live-includes --pg-initdb-extra-conf files via include_if_exists instead of copying their bytes at initdb, so edits to the ConfigMap the operator mounts at POSTGRES_INITDB_EXTRA_CONF are re-read on restart and SIGHUP. Only newly initialized data directories gain the include directive, since InitDataDirWithResult early-returns on an initialized PGDATA.
- The structured-logging refactor lowercases messages and enforces snake_case attribute keys, but leaves the slog JSON builtins alone. The observer's log scanner still parses level, msg, error, and problem_code, and its probe-noise message strings are unchanged upstream.
- multiadmin-web stays at sha-64da1ab: it is the newest commit touching web/multiadmin/ at or before 300f673, and no multiadmin-web image is published for the later SHAs.

Signed-off-by: Bobbie Soedirgo <bobbie@supabase.io>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@soedirgo
soedirgo force-pushed the chore/bump-multigres-b713432 branch from bdf3485 to c87acc7 Compare August 3, 2026 12:09
@soedirgo soedirgo changed the title chore(multigres): bump images and module to b713432 chore(multigres): bump images and module to 300f673 Aug 3, 2026
@soedirgo
soedirgo marked this pull request as draft August 3, 2026 12:10
@soedirgo soedirgo closed this Aug 3, 2026
@soedirgo
soedirgo deleted the chore/bump-multigres-b713432 branch August 3, 2026 12:14
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

🔬 Go Test Coverage Report

Summary

Coverage Type Result
Threshold 70%
Previous Test Coverage 76.7%
New Test Coverage 76.6%

Status

✅ PASS

Detail

Show New Coverage
github.com/multigres/multigres-operator/api/v1alpha1/cell_types.go:193:								init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/celltemplate_types.go:67:							init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/common_types.go:139:							IsEnabled				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/common_types.go:290:							ComponentCertSecretName			0.0%
github.com/multigres/multigres-operator/api/v1alpha1/common_types.go:297:							ComponentCertCommonName			0.0%
github.com/multigres/multigres-operator/api/v1alpha1/common_types.go:451:							MergePVCDeletionPolicy			0.0%
github.com/multigres/multigres-operator/api/v1alpha1/common_types.go:482:							MergeDurabilityPolicy			0.0%
github.com/multigres/multigres-operator/api/v1alpha1/common_types.go:491:							MergeBackupConfig			81.8%
github.com/multigres/multigres-operator/api/v1alpha1/coretemplate_types.go:68:							init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/multigrescluster_types.go:651:						init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:37:						BuildOTELEnvVars			100.0%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:43:						BuildOTELEnvVarsWithResourceAttributes	91.1%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:132:						buildOTELResourceAttributes		92.9%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:161:						filterOTELResourceAttributes		85.7%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:183:						splitOTELResourceAttributes		100.0%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:206:						BuildOTELSamplingVolume			0.0%
github.com/multigres/multigres-operator/api/v1alpha1/observability_helpers.go:231:						envOrCRD				100.0%
github.com/multigres/multigres-operator/api/v1alpha1/shard_types.go:322:							init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/shardtemplate_types.go:83:							init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/tablegroup_types.go:204:							init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/toposerver_types.go:245:							init					100.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:14:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:19:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:29:						DeepCopyInto				64.7%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:54:						DeepCopy				80.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:64:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:69:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:79:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:88:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:98:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:106:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:121:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:131:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:141:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:151:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:167:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:177:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:191:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:201:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:209:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:224:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:234:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:269:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:279:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:291:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:301:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:306:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:316:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:324:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:334:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:342:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:356:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:366:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:374:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:394:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:404:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:414:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:424:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:429:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:439:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:445:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:455:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:463:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:473:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:481:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:495:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:505:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:513:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:533:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:543:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:560:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:570:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:575:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:585:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:602:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:612:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:629:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:639:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:656:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:666:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:676:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:686:						DeepCopyInto				100.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:692:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:702:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:707:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:717:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:722:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:732:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:752:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:762:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:772:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:782:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:797:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:807:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:817:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:827:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:837:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:847:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:856:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:866:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:874:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:888:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:898:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:906:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:979:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:989:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1030:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1040:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1056:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1066:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1076:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1086:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1091:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1101:						DeepCopyInto				100.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1106:						DeepCopy				80.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1116:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1128:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1138:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1178:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1188:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1193:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1203:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1208:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1218:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1238:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1248:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1253:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1263:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1268:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1278:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1287:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1297:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1305:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1325:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1335:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1345:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1355:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1378:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1388:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1402:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1412:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1420:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1442:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1452:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1480:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1490:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1560:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1570:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1598:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1608:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1616:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1626:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1634:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1648:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1658:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1666:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1693:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1703:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1733:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1743:						DeepCopyInto				40.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1753:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1763:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1772:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1782:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1790:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1812:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1822:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1836:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1846:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1854:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1913:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1923:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1935:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1945:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1950:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1960:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1969:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1979:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:1987:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2001:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2011:						DeepCopyObject				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2019:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2034:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2044:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2056:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2066:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2076:						DeepCopy				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2086:						DeepCopyInto				0.0%
github.com/multigres/multigres-operator/api/v1alpha1/zz_generated.deepcopy.go:2091:						DeepCopy				0.0%
github.com/multigres/multigres-operator/cmd/multigres-gc/main.go:39:								init					0.0%
github.com/multigres/multigres-operator/cmd/multigres-gc/main.go:43:								main					0.0%
github.com/multigres/multigres-operator/cmd/multigres-gc/main.go:125:								registerCleankeepers			0.0%
github.com/multigres/multigres-operator/cmd/multigres-gc/main.go:131:								namespaceOrAll				0.0%
github.com/multigres/multigres-operator/cmd/multigres-operator/main.go:78:							init					0.0%
github.com/multigres/multigres-operator/cmd/multigres-operator/main.go:84:							main					0.0%
github.com/multigres/multigres-operator/cmd/multigres-operator/main.go:498:							certsExist				0.0%
github.com/multigres/multigres-operator/pkg/cert/generator.go:52:								WithExtKeyUsages			100.0%
github.com/multigres/multigres-operator/pkg/cert/generator.go:59:								WithOrganization			100.0%
github.com/multigres/multigres-operator/pkg/cert/generator.go:81:								GenerateCA				88.9%
github.com/multigres/multigres-operator/pkg/cert/generator.go:143:								GenerateServerCert			91.7%
github.com/multigres/multigres-operator/pkg/cert/generator.go:217:								ParseCA					100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:94:									componentName				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:101:								organization				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:108:								extKeyUsages				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:125:								NewManager				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:136:								Bootstrap				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:151:								Start					100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:179:								reconcilePKI				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:203:								ensureCA				96.8%
github.com/multigres/multigres-operator/pkg/cert/manager.go:283:								ensureServerCert			100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:403:								waitForProjection			100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:428:								setOwner				100.0%
github.com/multigres/multigres-operator/pkg/cert/manager.go:443:								emitEvent				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_cell.go:14:			BuildCell				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:33:			BuildGlobalTopoServer			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:94:			BuildMultiadminDeployment		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:253:			BuildMultiadminService			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:294:			BuildMultiadminWebDeployment		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:407:			BuildMultiadminWebService		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:465:			BuildMultigatewayGlobalService		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:529:			BuildMultigatewayGlobalReplicaService	100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_global.go:570:			postgresSuperuserOrDefault		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_tablegroup.go:14:		BuildTableGroup				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/builders_tablegroup.go:94:		buildCellTopologyLabels			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:58:			buildCertificate			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:79:			publicGatewayDNSNames			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:87:			buildInternalCertificates		91.7%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:146:			truncateCommonName			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:155:			buildCertificateFromSpec		87.5%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:197:			reconcileCertificate			85.7%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:270:			listCertificates			85.7%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:293:			findCertificateByName			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:309:			deleteOwnedCertificates			94.4%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:367:			isOwnedBy				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/certificate.go:381:			isNoMatchError				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:53:	Reconcile				96.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:317:	handleDeletion				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:367:	SetupWithManager			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:405:	projectRefOrGenerationChangedPredicate	72.7%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:435:	enqueueRequestsFromTemplate		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:462:	templateKindFromObject			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:478:	referencesTemplate			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:495:	collectResolvedTemplates		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/multigrescluster_controller.go:559:	collectTrackingLabels			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_cells.go:17:			reconcileCells				85.4%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_databases.go:17:		reconcileDatabases			87.5%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_global.go:26:			reconcileGlobalComponents		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_global.go:44:			reconcileGlobalTopoServer		81.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_global.go:105:		reconcileMultiadmin			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_global.go:162:		globalTopoRef				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_global.go:199:		reconcileMultiadminWeb			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:47:		reconcileTopology			73.8%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:182:		specCellNames				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:190:		cellNamesToKeepInTopology		87.5%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:222:		managedLocalTopoServerReady		73.3%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:263:		openTopoStore				66.7%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:276:		isPruningEnabled			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/reconcile_topology.go:287:		handleTopoUnavailable			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/status.go:22:				extractExternalEndpoint			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/status.go:42:				computeGatewayCondition			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/status.go:79:				computeAdminWebCondition		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/multigrescluster/status.go:113:				updateStatus				98.3%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/builders.go:14:				BuildShard				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/builders.go:84:				calculateTotalReplicas			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/reconcile_shards.go:20:			stepListChildShards			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/reconcile_shards.go:38:			stepApplyDesiredShards			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/reconcile_shards.go:89:			observedCleanupInProgress		85.7%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/reconcile_shards.go:106:			stepReconcileUndesired			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/reconcile_shards.go:166:			stepRequeueIfPending			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/status.go:19:					stepComputeStatus			97.8%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/status.go:112:				stepPatchStatus				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:48:					Error					100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:52:					Unwrap					100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:56:					newStepError				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:65:					continueStep				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:69:					doneStep				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:76:					runSteps				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:93:					stepFetchTableGroup			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:107:					stepHandlePendingDeletion		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/steps.go:119:					stepShortCircuitDeletion		100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:39:			Reconcile				100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:91:			withStepErrorHandling			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:113:			handlePendingDeletion			96.3%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:188:			setShardPendingDeletion			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:203:			childShardSelector			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:215:			SetupWithManager			100.0%
github.com/multigres/multigres-operator/pkg/cluster-handler/controller/tablegroup/tablegroup_controller.go:237:			projectRefOrGenerationChangedPredicate	72.7%
github.com/multigres/multigres-operator/pkg/data-handler/backuphealth/backuphealth.go:48:					Evaluate				92.9%
github.com/multigres/multigres-operator/pkg/data-handler/backuphealth/backuphealth.go:82:					EvaluateBackups				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/backuphealth/backuphealth.go:147:					ParseTime				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/backuphealth/backuphealth.go:160:					Apply					100.0%
github.com/multigres/multigres-operator/pkg/data-handler/drain/drain.go:37:							ExecuteDrainStateMachine		100.0%
github.com/multigres/multigres-operator/pkg/data-handler/drain/drain.go:255:							UpdateDrainState			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/drain/drain.go:274:							IsPrimaryTerminatingOrMissing		100.0%
github.com/multigres/multigres-operator/pkg/data-handler/drain/drain.go:298:							IsPrimaryDraining			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/drain/drain.go:325:							IsPrimaryNotReady			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/cell.go:18:							RegisterCell				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/cell.go:63:							cellMetadataFromTopoRefs		90.9%
github.com/multigres/multigres-operator/pkg/data-handler/topo/cell.go:99:							createOrUpdateCell			91.7%
github.com/multigres/multigres-operator/pkg/data-handler/topo/cell.go:129:							ManagedLocalTopoServerName		100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/cell.go:135:							ManagedLocalTopoServerAddress		100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/cell.go:140:							UnregisterCell				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/database.go:18:							RegisterDatabase			91.7%
github.com/multigres/multigres-operator/pkg/data-handler/topo/database.go:88:							UnregisterDatabase			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/database.go:129:							GetBackupLocation			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/database.go:169:							GetDurabilityPolicy			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/database.go:180:							buildDurabilityPolicy			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:35:							GetPoolerStatus				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:77:							matchPoolerToPod			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:90:							FindPrimaryPooler			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:124:							PoolerRoutingRole			66.7%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:133:							IsPrimaryPooler				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:138:							CollectCells				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:154:							ShardFilter				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:165:							PodMatchesPooler			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:174:							ForceUnregisterPod			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:210:							MarkDeadPoolers				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:276:							isLifecycleShutdown			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:284:							isLifecycleQuarantined			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/pooler.go:292:							poolerMatchesAnyActivePod		100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/store.go:18:							NewStoreFromShard			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/store.go:37:							NewStoreFromCell			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/store.go:57:							NewStoreFromRef				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/store.go:76:							IsTopoUnavailable			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/topology.go:21:							RegisterDatabaseFromSpec		96.8%
github.com/multigres/multigres-operator/pkg/data-handler/topo/topology.go:117:							RegisterCellFromSpec			100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/topology.go:160:							PruneDatabases				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/topology.go:207:							PruneCells				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/topology.go:253:							isNodeExists				100.0%
github.com/multigres/multigres-operator/pkg/data-handler/topo/topology.go:261:							isNoNode				100.0%
github.com/multigres/multigres-operator/pkg/gc/gc.go:28:									WithDefaults				0.0%
github.com/multigres/multigres-operator/pkg/gc/pvc/pvc.go:38:									New					100.0%
github.com/multigres/multigres-operator/pkg/gc/pvc/pvc.go:46:									Kind					0.0%
github.com/multigres/multigres-operator/pkg/gc/pvc/pvc.go:48:									Clean					84.6%
github.com/multigres/multigres-operator/pkg/gc/pvc/pvc.go:82:									processPVC				89.7%
github.com/multigres/multigres-operator/pkg/gc/pvc/pvc.go:135:									buildSelector				71.4%
github.com/multigres/multigres-operator/pkg/monitoring/metrics.go:112:								init					100.0%
github.com/multigres/multigres-operator/pkg/monitoring/metrics.go:131:								Collectors				100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:7:								SetClusterInfo				100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:16:								SetClusterTopology			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:22:								SetCellGatewayReplicas			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:28:								SetShardPoolReplicas			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:36:								SetPoolPodsDrifted			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:41:								SetTopoServerReplicas			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:47:								RecordWebhookRequest			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:57:								SetLastBackupAge			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:62:								IncrementDrainOperations		100.0%
github.com/multigres/multigres-operator/pkg/monitoring/recorder.go:67:								SetRollingUpdateInProgress		100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:50:								InitTracing				100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:92:								StartReconcileSpan			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:108:								StartChildSpan				100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:114:								RecordSpanError				100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:125:								InjectTraceContext			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:154:								ExtractTraceContext			100.0%
github.com/multigres/multigres-operator/pkg/monitoring/tracing.go:187:								EnrichLoggerWithTrace			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cell.go:15:								ResolveCell				100.0%
github.com/multigres/multigres-operator/pkg/resolver/cell.go:47:								ResolveCellTemplate			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cell.go:87:								mergeCellConfig				100.0%
github.com/multigres/multigres-operator/pkg/resolver/cluster.go:15:								PopulateClusterDefaults			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cluster.go:179:								ResolveGlobalTopo			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cluster.go:242:								ResolveMultiadmin			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cluster.go:280:								ResolveMultiadminWeb			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cluster.go:318:								ResolveCoreTemplate			100.0%
github.com/multigres/multigres-operator/pkg/resolver/cluster.go:354:								mergeEtcdSpec				100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:78:								DefaultResourcesAdmin			100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:91:								DefaultResourcesEtcd			100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:104:								DefaultResourcesGateway			100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:117:								DefaultResourcesOrch			100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:130:								DefaultResourcesPostgres		100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:143:								DefaultResourcesPooler			100.0%
github.com/multigres/multigres-operator/pkg/resolver/defaults.go:156:								DefaultResourcesAdminWeb		100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:21:								NewResolver				100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:38:								mergeStatelessSpec			100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:70:								mergePodPlacementSpec			100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:83:								isResourcesZero				100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:92:								defaultEtcdSpec				100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:114:								defaultExternalTopoSpec			100.0%
github.com/multigres/multigres-operator/pkg/resolver/resolver.go:127:								defaultStatelessSpec			100.0%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:23:								ResolveShard				100.0%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:110:								ResolveShardTemplate			100.0%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:145:								mergeShardConfig			100.0%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:236:								mergeMultiorchSpec			100.0%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:247:								mergePoolSpec				96.2%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:292:								defaultPoolSpec				100.0%
github.com/multigres/multigres-operator/pkg/resolver/shard.go:307:								defaultBackupConfig			100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:30:								ValidateCoreTemplateReference		100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:53:								CoreTemplateExists			100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:73:								ValidateCellTemplateReference		100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:96:								CellTemplateExists			100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:116:								ValidateShardTemplateReference		100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:139:								ShardTemplateExists			100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:165:								ValidateClusterIntegrity		100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:238:								ValidateClusterLogic			98.5%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:649:								hasDefaultStorageClass			100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:666:								getEffectiveEtcdReplicas		100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:678:								effectiveDatabaseDurabilityPolicy	100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:697:								ValidatePoolName			100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:719:								validateResourceRequirements		100.0%
github.com/multigres/multigres-operator/pkg/resolver/validation.go:740:								validateCellTopology			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:49:				Reconcile				95.2%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:177:				reconcileMultigatewayDeployment		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:211:				reconcileMultigatewayService		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:245:				reconcileLocalTopoServer		85.7%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:301:				localTopoServerReady			80.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:333:				handlePendingDeletion			88.2%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:381:				ensureLocalTopoServerDeleted		75.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:392:				deleteOwnedLocalTopoServerIfExists	75.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:418:				deleteLocalTopoServerIfExists		66.7%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:450:				patchReadyForDeletionCondition		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:474:				patchLocalTopoServerWaitingStatus	88.9%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:515:				updateStatus				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:613:				setConditions				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:663:				SetupWithManager			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/cell_controller.go:684:				projectRefOrGenerationChangedPredicate	63.6%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/local_toposerver.go:16:				BuildLocalTopoServerName		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/local_toposerver.go:20:				hasManagedLocalTopoServer		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/local_toposerver.go:24:				isControlledByCell			83.3%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/local_toposerver.go:39:				BuildLocalTopoServer			90.9%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/multigateway.go:56:				BuildMultigatewayDeploymentName		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/multigateway.go:68:				BuildMultigatewayServiceName		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/multigateway.go:79:				BuildMultigatewayDeployment		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/multigateway.go:309:				BuildMultigatewayService		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/multigateway.go:366:				buildCellNodeSelector			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/cell/placement.go:9:					tolerationsFromPlacement		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/configmap.go:24:					BuildPgHbaConfigMap			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:126:				PgHbaConfigMapName			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:130:				postgresPasswordSecretRef		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:135:				buildSocketDirVolume			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:145:				buildPgHbaVolume			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:158:				buildPostgresPasswordVolume		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:180:				postgresPasswordVolumeMount		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:188:				shardTLSConfigured			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:192:				buildShardTLSVolume			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:209:				shardTLSVolumeMount			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:229:				buildPgctldSidecar			95.5%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:367:				buildPostgresExporterContainer		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:405:				BuildPoolServiceID			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:413:				buildMultipoolerContainer		96.2%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:567:				buildMultiorchContainer			93.3%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:654:				buildRuntimeOTELEnvVars			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:674:				buildPostgresConfigVolume		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:690:				buildPoolVolumes			91.7%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:723:				buildSharedBackupVolume			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:765:				buildPgBackRestCertVolume		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:838:				buildPgBackRestCipherKeyVolume		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:861:				pgPasswordFileEnvVar			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:870:				pgUserEnvVar				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:876:				postgresSuperuserOrDefault		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/containers.go:885:				s3EnvVars				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/drain_helpers.go:19:				resolvePodRole				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/drain_helpers.go:35:				countDrainedPods			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/drain_helpers.go:47:				clearDrainAnnotations			0.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/drain_helpers.go:60:				initiateDrain				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/labels.go:10:					buildPoolLabelsWithCell			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/multiorch.go:26:					BuildMultiorchDeployment		95.2%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/multiorch.go:103:					BuildMultiorchService			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/multiorch.go:134:					buildMultiorchNameWithCell		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/multiorch.go:154:					buildMultiorchLabelsWithCell		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/placement.go:9:					tolerationsFromPlacement		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pdb.go:19:					BuildPoolPodDisruptionBudget		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:34:					BuildPoolPodName			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:52:					BuildPoolPod				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:136:					buildPoolPodSecurityContext		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:159:					buildContainerSecurityContext		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:173:					buildHeadlessServiceName		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:196:					ComputeSpecHash				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:249:					hashContainers				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pod.go:288:					sortedKeys				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pvc.go:23:					BuildPoolDataPVCName			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pvc.go:45:					BuildPoolDataPVC			95.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pvc.go:103:					BuildSharedBackupPVCName		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_pvc.go:120:					BuildSharedBackupPVC			96.4%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_service.go:23:				BuildPoolHeadlessService		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/pool_service.go:58:				buildPoolHeadlessServiceName		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/ports.go:33:					buildMultipoolerContainerPorts		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/ports.go:55:					buildPoolHeadlessServicePorts		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/ports.go:86:					buildMultiorchContainerPorts		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/ports.go:102:					buildPostgresExporterContainerPorts	100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/ports.go:114:					buildMultiorchServicePorts		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:25:			reconcileDataPlane			45.1%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:127:			reconcilePodRoles			61.5%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:189:			reconcileDrainState			45.8%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:250:			isDrainStale				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:302:			topoStore				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:314:			reconcilePoolerPrune			75.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:358:			hasPrimary				0.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_data_plane.go:370:			isPoolerPruningEnabled			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_deletion.go:40:				handleDeletion				76.9%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_deletion.go:152:			cleanupShardPVCs			73.3%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_deletion.go:217:			shardPVCShouldBeCleaned			42.9%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_deletion.go:237:			handlePendingDeletion			75.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_multiorch.go:15:			reconcileMultiorchDeployment		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_multiorch.go:50:			reconcileMultiorchService		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:29:			reconcilePoolPods			97.2%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:138:			createMissingResources			82.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:307:			isPodReady				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:324:			isPoolHealthy				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:348:			handleExternalDeletion			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:389:			handleScaleDown				97.8%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:511:			handleRollingUpdates			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:624:			selectPodToDrain			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:681:			syncDrainedLabels			55.6%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:714:			cleanupDrainedPod			95.5%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:790:			cleanupPodPVC				81.5%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:845:			countPoolCellPVCs			81.8%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:880:			podNeedsUpdate				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:913:			expandPVCIfNeeded			95.5%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:963:			pvcNeedsFilesystemResize		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_pool_pods.go:978:			resolvePodIndex				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:20:			reconcilePgHbaConfigMap			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:45:			reconcilePostgresPasswordSecret		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:53:			postgresPasswordSecretData		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:61:			postgresPasswordSecret			84.6%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:105:			reconcilePgBackRestCerts		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:159:			reconcileBackupCipherSecret		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:194:			reconcileSharedBackupPVC		91.7%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:243:			reconcilePoolPDB			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/reconcile_shared_infra.go:270:			reconcilePoolHeadlessService		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:60:				orphanByRemainingCount			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:81:				Reconcile				74.6%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:405:				reconcilePool				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:455:				getMultiorchCells			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:491:				getPoolCells				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:511:				ShouldDeletePVCOnShardRemoval		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:525:				ShouldDeleteShardLevelPVCOnRemoval	100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:534:				reconcilePVCOwnerRefs			55.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:621:				SetupWithManager			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:650:				computePostgresConfigHash		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/shard_controller.go:675:				enqueueFromPostgresConfigMap		87.5%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/status.go:23:					updateStatus				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/status.go:141:					updatePoolsStatus			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/status.go:235:					updateMultiorchStatus			96.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/status.go:294:					cellSetToSlice				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/status.go:304:					setConditions				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:31:			Error					0.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:35:			isMissingStorageClassDependency		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:40:			backupFilesystemStorageClassName	80.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:51:			validateStorageClassExists		77.8%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:70:			validateBackupStorageClassDependency	76.9%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:113:			validatePoolStorageClassDependencies	90.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/shard/storage_class_guard.go:170:			setStorageClassCondition		76.9%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/storage/pvc.go:17:					BuildPVCTemplate			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/container_env.go:13:				buildContainerEnv			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/container_env.go:41:				buildPodIdentityEnv			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/container_env.go:66:				buildEtcdConfigEnv			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/container_env.go:120:			buildEtcdClusterPeerList		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/ports.go:23:					buildContainerPorts			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/ports.go:56:					buildHeadlessServicePorts		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/ports.go:86:					buildClientServicePorts			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/service.go:17:				BuildHeadlessService			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/service.go:53:				BuildClientService			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/statefulset.go:38:				BuildStatefulSet			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/statefulset.go:149:				buildVolumeClaimTemplates		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/storage_class_guard.go:33:			Error					0.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/storage_class_guard.go:38:			isMissingStorageClassDependency		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/storage_class_guard.go:44:			validateStorageClassExists		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/storage_class_guard.go:61:			validateEtcdStorageClassDependency	93.3%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/storage_class_guard.go:114:			setStorageClassCondition		84.6%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:43:			Reconcile				96.7%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:176:		reconcileStatefulSet			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:210:		reconcileHeadlessService		100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:244:		reconcileClientService			100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:278:		updateStatus				97.1%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:393:		setConditions				100.0%
github.com/multigres/multigres-operator/pkg/resource-handler/controller/toposerver/toposerver_controller.go:424:		SetupWithManager			100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:17:								IgnoreMetaRuntimeFields			100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:55:								IgnoreServiceRuntimeFields		100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:75:								IgnoreStatefulSetRuntimeFields		100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:97:								IgnoreDeploymentRuntimeFields		100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:116:								IgnorePodSpecDefaults			100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:148:								IgnorePodSpecDefaultsExceptPullPolicy	100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:179:								IgnoreStatefulSetSpecDefaults		100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:191:								IgnoreDeploymentSpecDefaults		100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:204:								IgnoreProbeDefaults			100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:219:								filterByFieldName			100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:235:								IgnoreObjectMetaCompletely		100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:243:								IgnoreStatus				100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:249:								IgnorePVCRuntimeFields			100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:258:								CompareOptions				100.0%
github.com/multigres/multigres-operator/pkg/testutil/compare.go:267:								CompareSpecOnly				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:29:								WithKubeconfig				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:36:								WithCRDPaths				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:57:								AddUser					100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:62:								getKubeconfigFromUserAdder		100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:87:								SetUpEnvtest				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:148:								SetUpClient				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:175:								SetUpManager				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:206:								StartManager				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:216:								startManager				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:256:								SetUpEnvtestManager			100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:272:								createEnvtestEnvironment		100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:287:								startEnvtest				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:302:								cleanEnvtest				100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:319:								createEnvtestDir			100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:333:								writeKubeconfigFile			100.0%
github.com/multigres/multigres-operator/pkg/testutil/envtest.go:343:								generateKubeconfigFile			100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:51:								NewFakeClientWithFailures		100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:61:								Get					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:75:								List					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:88:								Create					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:101:							Update					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:114:							Patch					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:128:							Delete					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:141:							DeleteAllOf				100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:154:							Status					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:166:							Update					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:179:							Patch					100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:196:							FailOnObjectName			100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:210:							FailOnKeyName				100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:220:							FailOnNamespacedKeyName			100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:230:							FailOnNamespace				100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:244:							AlwaysFail				100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:252:							FailKeyAfterNCalls			100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:265:							FailObjAfterNCalls			100.0%
github.com/multigres/multigres-operator/pkg/testutil/fake_client.go:278:							FailObjListAfterNCalls			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:34:							Error					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:84:							WithExtraResource			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:92:							WithTimeout				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:100:							WithCmpOpts				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:108:							NewResourceWatcher			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:146:							SetTimeout				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:152:							ResetTimeout				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:159:							SetCmpOpts				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:165:							ResetCmpOpts				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:175:							Events					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:188:							EventCh					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:198:							ForKind					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:218:							ForName					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:234:							Count					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:243:							subscribe				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:257:							unsubscribe				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher.go:278:							extractKind				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_cache.go:16:						findLatestEvent				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_cache.go:34:						findLatestEventFor			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_cache.go:57:						checkLatestEventMatches			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_deletion.go:22:						Obj					100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_deletion.go:51:						WaitForDeletion				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_deletion.go:70:						waitForSingleDeletion			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_listener.go:19:						collectEvents				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_listener.go:55:						sendEvent				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_match.go:46:						WaitForMatch				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_match.go:88:						waitForSingleMatch			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_match.go:178:						waitForEvent				100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_match.go:213:						WaitForEventType			100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_match.go:261:						addEventHandlerToInformer		100.0%
github.com/multigres/multigres-operator/pkg/testutil/resource_watcher_match.go:285:						watchResource				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:164:							BuildStandardLabels			100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:175:							AddCellLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:181:							AddClusterLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:187:							AddShardLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:196:							AddDatabaseLabel			100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:205:							AddTableGroupLabel			100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:214:							AddPoolLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:223:							AddZoneIDLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:232:							AddRegionLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:259:							GetSelectorLabels			100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/labels.go:273:							MergeLabels				100.0%
github.com/multigres/multigres-operator/pkg/util/metadata/project_ref.go:16:							ResolveProjectRef			100.0%
github.com/multigres/multigres-operator/pkg/util/name/name.go:103:								Hash					100.0%
github.com/multigres/multigres-operator/pkg/util/name/name.go:146:								JoinWithConstraints			100.0%
github.com/multigres/multigres-operator/pkg/util/name/name.go:209:								isLowercaseLetter			100.0%
github.com/multigres/multigres-operator/pkg/util/name/name.go:213:								isUppercaseLetter			100.0%
github.com/multigres/multigres-operator/pkg/util/name/name.go:217:								isDigit					100.0%
github.com/multigres/multigres-operator/pkg/util/name/name.go:221:								isLowercaseAlphanumeric			100.0%
github.com/multigres/multigres-operator/pkg/util/pvc/orphan.go:27:								MarkOrphan				95.5%
github.com/multigres/multigres-operator/pkg/util/pvc/orphan.go:78:								ClearOrphan				87.5%
github.com/multigres/multigres-operator/pkg/util/pvc/orphan.go:98:								HasOrphanLabel				100.0%
github.com/multigres/multigres-operator/pkg/util/pvc/retention.go:12:								BuildRetentionPolicy			100.0%
github.com/multigres/multigres-operator/pkg/util/status/conditions.go:9:							SetCondition				100.0%
github.com/multigres/multigres-operator/pkg/util/status/conditions.go:25:							IsConditionTrue				100.0%
github.com/multigres/multigres-operator/pkg/util/status/phase.go:30:								ComputePhase				100.0%
github.com/multigres/multigres-operator/pkg/util/status/phase.go:51:								IsCrashLooping				100.0%
github.com/multigres/multigres-operator/pkg/util/status/phase.go:56:								isContainerCrashLooping			100.0%
github.com/multigres/multigres-operator/pkg/util/status/phase.go:68:								AnyCrashLooping				100.0%
github.com/multigres/multigres-operator/pkg/util/status/phase.go:98:								ComputeWorkloadPhase			100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/defaulter.go:27:							NewMultigresClusterDefaulter		100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/defaulter.go:34:							Default					100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:36:							NewMultigresClusterValidator		100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:41:							ValidateCreate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:49:							ValidateUpdate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:68:							ValidateDelete				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:75:							validate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:127:							validateTemplatesExist			100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:137:							validateLogic				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:148:							validateNoStorageShrink			90.5%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:191:							collectPoolStorageSizes			100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:219:							validateEtcdReplicasImmutable		100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:255:							effectiveEtcdReplicas			100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:284:							NewTemplateValidator			100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:289:							ValidateCreate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:297:							ValidateUpdate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:306:							validatePoolNames			100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:323:							ValidateDelete				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:368:							isTemplateInUse				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:432:							NewChildResourceValidator		100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:439:							ValidateCreate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:447:							ValidateUpdate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:455:							ValidateDelete				100.0%
github.com/multigres/multigres-operator/pkg/webhook/handlers/validator.go:462:							validate				100.0%
github.com/multigres/multigres-operator/pkg/webhook/pki.go:44:									PatchWebhookCABundle			100.0%
github.com/multigres/multigres-operator/pkg/webhook/pki.go:51:									patchMutatingWebhook			100.0%
github.com/multigres/multigres-operator/pkg/webhook/pki.go:97:									patchValidatingWebhook			100.0%
github.com/multigres/multigres-operator/pkg/webhook/pki.go:147:									HasCertAnnotation			100.0%
github.com/multigres/multigres-operator/pkg/webhook/pki.go:173:									FindOperatorDeployment			100.0%
github.com/multigres/multigres-operator/pkg/webhook/setup.go:21:								Setup					100.0%
total:																(statements)				76.6%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants