Skip to content

feat(api): Ensuring all pods start successfully with default configurations#127

Merged
fernando-villalba merged 2 commits intomainfrom
feat/etcd-root-path-and-defaults
Jan 20, 2026
Merged

feat(api): Ensuring all pods start successfully with default configurations#127
fernando-villalba merged 2 commits intomainfrom
feat/etcd-root-path-and-defaults

Conversation

@fernando-villalba
Copy link
Collaborator

@fernando-villalba fernando-villalba commented Jan 20, 2026

Introduces RootPath configuration for Etcd specs, updates default container images, and refines CRD definitions. Addresses resulting regressions in tests and adds comprehensive coverage for new paths.

  • API/CRD:

    • Added rootPath field to EtcdSpec (default: /multigres/global) in v1alpha1 and CRDs.
    • Updated default images: Postgres to ghcr.io/multigres/pgctld:main, Etcd to gcr.io/etcd-development/etcd:v3.6.7.
    • Added livenessProbe and readinessProbe to MultiAdmin container spec.
    • Updated config/samples to reflect new defaults and API structure.
  • Logic:

    • Updated builders_global.go to construct MultiAdmin with correct probes and arguments.
    • Implemented deterministic SHA-1 hashing for TableGroup names exceeding length limits.
    • Changed default shard name from "0" to "0-inf".
  • Testing:

    • Fixed regression failures in cluster-handler, resolver, and webhook caused by naming changes.
    • Added TestReconcileDatabases_BuildError_SchemeMismatch to force BuildTableGroup error path coverage.
    • Added tests for External global topology resolution and getGlobalTopoRef error paths.
    • Achieved 100% test coverage across all modified modules.

…ations.

Introduces `RootPath` configuration for Etcd specs, updates default container images, and refines CRD definitions. Addresses resulting regressions in tests and adds comprehensive coverage for new paths.

- **API/CRD**:
  - Added `rootPath` field to EtcdSpec (default: `/multigres/global`) in `v1alpha1` and CRDs.
  - Updated default images: Postgres to `ghcr.io/multigres/pgctld:main`, Etcd to `gcr.io/etcd-development/etcd:v3.6.7`.
  - Added `livenessProbe` and `readinessProbe` to MultiAdmin container spec.
  - Updated `config/samples` to reflect new defaults and API structure.

- **Logic**:
  - Updated `builders_global.go` to construct `MultiAdmin` with correct probes and arguments.
  - Implemented deterministic SHA-1 hashing for `TableGroup` names exceeding length limits.
  - Changed default shard name from `"0"` to `"0-inf"`.

- **Testing**:
  - Fixed regression failures in `cluster-handler`, `resolver`, and `webhook` caused by naming changes.
  - Added `TestReconcileDatabases_BuildError_SchemeMismatch` to force `BuildTableGroup` error path coverage.
  - Added tests for `External` global topology resolution and `getGlobalTopoRef` error paths.
  - Achieved 100% test coverage across all modified modules.
@github-actions

This comment has been minimized.

@github-actions
Copy link

🔬 Go Test Coverage Report

Summary

Coverage Type Result
Threshold 0%
Previous Test Coverage Unknown%
New Test Coverage Unknown%

Status

⚠️ SKIPPED (Build Failed?)

Detail

Show New Coverage
No coverage report generated (Build likely failed).

@fernando-villalba fernando-villalba merged commit e72eb4b into main Jan 20, 2026
1 of 3 checks passed
@fernando-villalba fernando-villalba deleted the feat/etcd-root-path-and-defaults branch January 20, 2026 20:11
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.

1 participant