First alpha release of valkey-operator, supporting ValkeyCluster CRDs with some basic lifecycling operations.
This release serves as an initial release to begin testing the operator in non-production environments.
Please note: This is still in active development, breaking changes against the alpha CRD are expected. Data loss can be expected in this early release. Do not run this in production.
What's Changed
- initial kubebuilder init by @dmolik in #2
- Update README by @dmolik in #3
- Add initial developer guide documentation by @bjosv in #6
- feat(operator): flush out v1alpha1 CRDs by @dmolik in #5
- Update README by @jdheyburn in #12
- Add SUPPORT.md by @jdheyburn in #9
- Add Github DISCUSSION_TEMPLATE by @jdheyburn in #11
- Fix DISCUSSION_TEMPLATE directory by @jdheyburn in #13
- Add CONTRIBUTING.md by @jdheyburn in #8
- Upgrade kubebuilder scaffolding from v4.9.0 to v4.10.1 by @bjosv in #21
- Move exporter options to own sub-category in the ValkeyCluster CRD by @bjosv in #23
- Add rudimentary reconciliation using Deployment by @bjosv in #24
- (feat): Status Conditions for ValkeyCluster by @sandeepkunusoth in #33
- (feat): EventRecorder implementation by @sandeepkunusoth in #37
- (feat): Add Metrics Exporter Sidecar to ValkeyCluster Pods by @sandeepkunusoth in #49
- fixed e2e tests failing intermittently & review comments from past PR by @sandeepkunusoth in #54
- (feat): Support Resources Configuration for ValkeyCluster (#29) by @hieu2102 in #41
- (feat): Support Affinity Configuration for ValkeyCluster (#32) by @riccardoforzan in #38
- (feat): Support Toleration Configuration for ValkeyCluster (#30) by @hieu2102 in #61
- add startup probe to valkey containers by @ysqyang in #68
- Upgrade kubebuilder scaffolding from v4.10.1 to v4.11.0 by @bjosv in #71
- Pin GitHub Actions by @SuperQ in #73
- propagate nodeSelector to pod spec by @ysqyang in #69
- migrate to new Kubernetes events recorder API by @sandeepkunusoth in #72
- (chore) scaffold update: v4.11.0 -> v4.11.1 by @sandeepkunusoth in #78
- Split e2e-tests to separate files by @bjosv in #80
- Use deterministic deployment names to encode shard topology by @ysqyang in #81
- added replication check before marking cluster ready status by @sandeepkunusoth in #87
- Handle post-failover pod replacement gracefully by @ysqyang in #86
- Batch pending node processing across MEET, slot assignment, and replication by @ysqyang in #90
- Adds tech call to README by @stockholmux in #93
- (feat) Support for creating users on cluster init by @utdrmac in #82
- Fix slot-range parsing during migration and add rebalance planning logic by @ysqyang in #92
- Bump actions/setup-go from 6.2.0 to 6.3.0 by @dependabot[bot] in #101
- chore(kubebuilder): Upgrade the Scaffold: v4.11.1 -> v4.13.0 by @sandeepkunusoth in #97
- Add scale-out support with slot rebalancing by @ysqyang in #100
- feat: Add ValkeyNode CRD and controller for abstracting pod mgmt by @jdheyburn in #94
- Add additional checks in CI by @bjosv in #109
- Correcting controller-gen version in valkeynodes.valkey.io by @bjosv in #112
- Add scale-in support with slot draining by @ysqyang in #107
- Implement strategic merge patch (#62) by @hieu2102 in #108
- feat: ValkeyNode integration with ValkeyCluster by @jdheyburn in #113
- feat: Sequentially update workloads one-by-one by @jdheyburn in #116
- feat: Add type in ACL Secret by @deepakpunjabi in #117
- chore(kubebuilder): update scaffold v4.13.0 -> v4.13.1 by @sandeepkunusoth in #125
- Bump actions/setup-go from 6.3.0 to 6.4.0 by @dependabot[bot] in #126
- Add build info metric by @SuperQ in #106
- chore: split IMG use for vars by @jdheyburn in #130
- fix race condition between forget and failover by @ysqyang in #105
- pre-commit hooks for local validation by @sandeepkunusoth in #115
- Add default system users (#110) by @hieu2102 in #129
- feat: initial tls support for valkey cluster by @sandeepkunusoth in #133
- feat: proactive failovers before cluster rolls by @jdheyburn in #128
- fix: tighten _operator user ACL permissions (#132) by @daanvinken in #136
- fix: surface reconcileUsersAcl errors in cluster status by @daanvinken in #140
- fix: pass cluster arg to getValkeyClusterState in proactive failover by @daanvinken in #145
- fix: allow slot assignment for single-node clusters (#131) by @daanvinken in #135
- Setup container image publishing by @SuperQ in #102
- (feat): Extra Valkey config by @utdrmac in #44
- Update Go build by @SuperQ in #150
- fix: allow MEET against isolated shard primaries during scale-up by @daanvinken in #147
- fix: retry cert-manager resource apply in TLS e2e test by @daanvinken in #153
- test: add e2e tests for single-node cluster scale-up by @daanvinken in #148
- fix: authenticate getValkeyRole with _operator credentials by @daanvinken in #137
- chore(deps): bump docker/build-push-action from 6.18.0 to 7.1.0 by @dependabot[bot] in #156
- chore(deps): bump actions/setup-go from 6.3.0 to 6.4.0 by @dependabot[bot] in #157
- chore(deps): bump docker/setup-buildx-action from 3.12.0 to 4.0.0 by @dependabot[bot] in #158
- Add ValkeyNode-managed persistence support by @DharmendraChoudhary67 in #149
- chore(kubebuilder): update scaffold v4.13.1 -> v4.14.0 by @sandeepkunusoth in #161
- [feat] Roll ValkeyNodes on changes to ValkeyCluster.Spec.Config by @jdheyburn in #164
- fixed pre-commit local go version by @sandeepkunusoth in #168
- docs: Add valkeynode-design.md by @jdheyburn in #162
- Use status patch to eliminate resource version conflicts by @bjosv in #171
- docs: Add valkeycluster docs by @jdheyburn in #165
- [docs] Add quickstart guide and restructure README for v0.1.0 by @bjosv in #155
- Fix flaky metrics exporter test by waiting for cluster Ready by @bjosv in #173
- Fix e2e tests - pod already exists intermittent issue by @sandeepkunusoth in #172
- Delete old events in BeforeSuite to prevent stale event assertions by @bjosv in #169
- Fix intermittent test failures due to the toleration test by @bjosv in #170
New Contributors
- @dmolik made their first contribution in #2
- @bjosv made their first contribution in #6
- @jdheyburn made their first contribution in #12
- @sandeepkunusoth made their first contribution in #33
- @hieu2102 made their first contribution in #41
- @riccardoforzan made their first contribution in #38
- @ysqyang made their first contribution in #68
- @SuperQ made their first contribution in #73
- @stockholmux made their first contribution in #93
- @utdrmac made their first contribution in #82
- @dependabot[bot] made their first contribution in #101
- @deepakpunjabi made their first contribution in #117
- @daanvinken made their first contribution in #136
- @DharmendraChoudhary67 made their first contribution in #149
Full Changelog: https://github.com/valkey-io/valkey-operator/commits/v0.1.0