Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add field status.clusterSize and CEL rule for spec.replicas transitions #1028

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

shreyas-s-rao
Copy link
Contributor

@shreyas-s-rao shreyas-s-rao commented Mar 11, 2025

How to categorize this PR?

/area quality usability
/kind api-change enhancement

What this PR does / why we need it:
This PR adds a CEL rule to validate spec.replicas transitions, to ensure that transitions such as 3->1 and 1->0->3 are disallowed.

To make this work for hibernated clusters whose replicas is set to 0, a new field status.clusterSize to record the etcd cluster size, independent of the replicas. For instance, when the Etcd is scaled from 3 to 0 replicas, the cluster size still remains 3.

This PR also removes the test (test-unit) and test_integration steps from the concourse pipeline job, since these are now run as prow jobs and are stable.

Which issue(s) this PR fixes:
Fixes partially #1022

Special notes for your reviewer:
Integration tests and documentation changes will soon follow. Added integration tests and doc changes. PR is still on hold until druid v0.28.0 is released.
/hold

Also, concourse steps test and test_integration will fail since the executable scripts for these steps have been removed in this PR, but the pipeline definition is fetched from master branch, so the pipeline still attempts to run these steps. Once this PR is merged, subsequent PRs will not face this issue.

Release note:

Add CEL rule for validating `spec.replicas` transitions.
Add field `status.clusterSize` to record the etcd cluster size, independent of the `spec.replicas` value.
`test` and `test_integration` steps are removed from concourse pipeline job, since these are now run as [prow jobs](https://github.com/gardener/ci-infra/tree/master/config/jobs/etcd-druid).

@shreyas-s-rao shreyas-s-rao added this to the v0.29.0 milestone Mar 11, 2025
@shreyas-s-rao shreyas-s-rao requested a review from a team as a code owner March 11, 2025 13:55
@gardener-robot gardener-robot added needs/review Needs review area/quality Output qualification (tests, checks, scans, automation in general, etc.) related area/usability Usability related kind/api-change API change with impact on API users kind/enhancement Enhancement, improvement, extension reviewed/do-not-merge Has no approval for merging as it may break things, be of poor quality or have (ext.) dependencies size/s Size of pull request is small (see gardener-robot robot/bots/size.py) labels Mar 11, 2025
@gardener-robot-ci-1 gardener-robot-ci-1 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) needs/ok-to-test Needs approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Mar 11, 2025
@gardener-robot gardener-robot added size/m Size of pull request is medium (see gardener-robot robot/bots/size.py) and removed size/s Size of pull request is small (see gardener-robot robot/bots/size.py) labels Mar 12, 2025
@gardener-robot-ci-1 gardener-robot-ci-1 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Mar 12, 2025
@shreyas-s-rao shreyas-s-rao self-assigned this Mar 13, 2025
@shreyas-s-rao shreyas-s-rao force-pushed the feature/replica-transitions branch from 372173f to 5820447 Compare March 13, 2025 04:05
@gardener-robot-ci-3 gardener-robot-ci-3 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Mar 13, 2025
@gardener-robot-ci-3 gardener-robot-ci-3 added reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) and removed reviewed/ok-to-test Has approval for testing (check PR in detail before setting this label because PR is run on CI/CD) labels Mar 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/quality Output qualification (tests, checks, scans, automation in general, etc.) related area/usability Usability related kind/api-change API change with impact on API users kind/enhancement Enhancement, improvement, extension needs/ok-to-test Needs approval for testing (check PR in detail before setting this label because PR is run on CI/CD) needs/review Needs review reviewed/do-not-merge Has no approval for merging as it may break things, be of poor quality or have (ext.) dependencies size/m Size of pull request is medium (see gardener-robot robot/bots/size.py)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants