Update grouped non-major updates#237
Conversation
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Add LICENSE file
Initializing the project
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Update kubebuilder to v3.14.0
Fixes from comments #15 - Fix API group name for custom resources - remove unnecessary comment lines
demo: https://github.com/aenix-io/etcd-operator/tree/basic-readme fixes #10 Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
1. Union argument layers and copy source code. 2. Changed layers order final image for grow cache hit
fixes: #10 Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
- Added basic validating and defaulting webhooks - Added simple test for defaulting webhook
Controller now can successfully bootstrap etcd cluster :) Controller creates Service, ConfigMap and StatefulSet based on EtcdCluster CR Only EmptyDir storage is supported Initialized status is being set and updated
Proof that it works: https://github.com/hiddenmarten/etcd-operator/pull/1 After that just changed the name of the label, to the easier one.
Update cluster Ready status according to StatefulSet status and update ConfigMap cluster state to `existing` after first time STS is ready fixes #24
The auxiliary GH action to setup release drafts and update change log accordingly. Configured with autolabeler, so the PRs will be labeled according to the PR branch name and/or files changed: | Branch name | Files changed | Resulting label | | ------------- | ------------- | ------------- | | deps/* | | `dependencies` | | chore/* | | `chore` | | docs/* | **/*.md | `documentation` | | enh/* | | `enhancement` | | feature/* | | `feature` | | fix/* | | `bugfix` | | bugfix/* | | `bugfix` | | | /api/* | `api-change` | | | /internal/* | `controllers` | Based on labels release draft will be updated with 'Features', 'Bug Fixes' and 'Maintenance' categories which will include corresponding PR's title. It's also possible to manage release draft's version by applying `major`, `minor` and `patch` labels on PR. By default the version will be the next patch version after the last release, v0.0.1 if none. --------- Signed-off-by: Artem Bortnikov <artem.bortnikov@telekom.com>
Explicit RW permissions for content and pull requests required, due to repository settings, which grants to workflows only read permissions in the repository for the contents and packages scopes. - RW for content is required for release draft creation (release-drafter). - RW for pull-requests is required for adding labels to PRs (auto-labeler). Signed-off-by: Artem Bortnikov <artem.bortnikov@telekom.com>
in order to access cluster from clients using one IP we decided to use ClusterIP Service
Created basic docs site and filled content for main pages
This is important when scaling cluster up for this operation to be zero down time fixes #25
In case error happens during status update request, reconcile will not be requeued. So, this call should be moved ouside `defer` function fixes #36
Just an idea to create `CODEOWNERS` to automatically assign reviewers when changing specific part of code. Is there anybody who would like to keep informed about updates? Aproove from codeowners is required to merge every specific change.
Signed-off-by: Artem Bortnikov <artem.bortnikov@telekom.com>
Subj. Without such import, there is auth error: ``` Error setting up etcd client: error creating Kubernetes client: no Auth Provider found for name "oidc" ``` <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced commands for managing etcd pods, including status checks, defragmentation, compaction, alarm management, and member management. - **Bug Fixes** - Standardized error handling for improved user feedback during command execution. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
go.mod (1)
16-21: Kubernetes and Etcd Client Updates:
The updates togo.etcd.io/etcd/client/v3,k8s.io/api,k8s.io/apimachinery,k8s.io/client-go,k8s.io/utils, and inclusion ofsigs.k8s.io/controller-runtime(v0.20.3) ensure alignment with newer Kubernetes and etcd APIs. Please review that any interactions with these libraries in your operator remain compatible after these upgrades.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
go.sumis excluded by!**/*.sumsite/package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (13)
.github/workflows/docker-publish.yaml(2 hunks).github/workflows/helm-publish.yaml(1 hunks).github/workflows/hugo.yaml(1 hunks).github/workflows/make-test-e2e.yaml(1 hunks).github/workflows/make-test.yaml(1 hunks).github/workflows/nilaway-lint.yaml(1 hunks).github/workflows/pre-commit.yaml(1 hunks).github/workflows/release-assets.yaml(1 hunks).github/workflows/release-drafter.yaml(1 hunks)Dockerfile(1 hunks)Makefile(3 hunks)go.mod(2 hunks)site/package.json(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (12)
- .github/workflows/hugo.yaml
- Dockerfile
- site/package.json
- .github/workflows/helm-publish.yaml
- .github/workflows/make-test.yaml
- .github/workflows/release-assets.yaml
- .github/workflows/nilaway-lint.yaml
- .github/workflows/release-drafter.yaml
- .github/workflows/pre-commit.yaml
- .github/workflows/docker-publish.yaml
- .github/workflows/make-test-e2e.yaml
- Makefile
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: pre-commit
🔇 Additional comments (16)
go.mod (16)
3-5: Go Version and Toolchain Update:
The Go version directive has been updated togo 1.23.0and a new toolchain directive (toolchain go1.24.1) has been added. Please ensure that all associated build and CI workflows have been updated accordingly to use the new Go toolchain.
11-14: Testing & CLI Dependencies Updated:
The dependencies for testing and CLI enhancement—github.com/onsi/ginkgo/v2,github.com/onsi/gomega,github.com/spf13/cobra, andgithub.com/spf13/pflag—have been updated. Verify that your test suites and CLI commands continue to work seamlessly with these versions.
26-26: xxhash Dependency Update:
Thegithub.com/cespare/xxhash/v2dependency has been updated to versionv2.3.0. Though a minor release, ensure that any hash-based functionality in the project is tested for compatibility.
32-32: json-patch v5 Upgrade:
The upgrade ofgithub.com/evanphx/json-patch/v5tov5.9.11is noted. Confirm that JSON patching operations—if used anywhere in the project—continue to function correctly with this updated library.
34-34: CBOR Library Addition/Update:
The indirect dependency forgithub.com/fxamacker/cbor/v2is now at versionv2.7.0. If your project leverages CBOR encoding/decoding, it’s a good idea to run a focused test to ensure that behavior remains consistent.
36-36: OpenAPI JSON Pointer Update:
Thegithub.com/go-openapi/jsonpointerupdate tov0.21.0(from the previous version) should bring minor improvements. Verify that any integration relying on JSON pointer functionality remains stable.
38-38: OpenAPI Swag Dependency Upgrade:
Updatinggithub.com/go-openapi/swagtov0.23.0should help keep documentation generation and related tasks up-to-date. Please test any features that depend on this package.
43-43: Google Btree Update:
The version forgithub.com/google/btreeis now updated tov1.1.3. Although typically an indirect dependency, it’s good practice to ensure that any performance optimizations leveraging B-trees are still effective.
47-47: Google pprof Version Update:
Thegithub.com/google/pprofpackage has been bumped up to a build identified by a timestamp (v0.0.0-20241210010833-40e02aabc2ad). Please ensure that any profiling or debugging workflows depending on pprof behave as expected.
58-58: Moby Spdystream Upgrade:
The dependency forgithub.com/moby/spdystreamhas been updated from an older version tov0.5.0. This upgrade may offer improved performance or bug fixes. Confirm that any streaming or multiplexing capabilities remain fully operational.
65-68: Prometheus Dependencies Update:
The Prometheus-related dependencies (github.com/prometheus/client_golangto v1.19.1,client_modelto v0.6.1,commonto v0.55.0, andprocfsto v0.15.1) have been updated. These are critical for metrics collection; thorough testing should be done to confirm that your monitoring and alerting setups continue functioning without disruption.
75-75: Float16 Library Update:
github.com/x448/float16has been updated to versionv0.8.4. Verify that any numerical conversions or computations relying on this library yield correct results, especially if using lower-precision floating point representations.
76-77: Etcd API and Client Package Updates:
Bothgo.etcd.io/etcd/api/v3andgo.etcd.io/etcd/client/pkg/v3are now at versionv3.5.19. Please ensure there are no regressions in the interaction with etcd, particularly in scenarios that involve critical data storage or retrieval.
80-88: Golang.org/x Dependencies Overhaul:
Multiplegolang.org/xmodules (including exp, net, oauth2, sync, sys, term, text, time, and tools) have been updated. These changes can affect low-level functionality, performance, or OS interactions. A series of regression and integration tests focusing on platform-dependent behavior is highly recommended.
91-95: Google and gRPC Libraries Updated:
The updates togoogle.golang.org/genproto(both API and RPC versions),google.golang.org/grpc(v1.65.0),google.golang.org/protobuf(v1.36.1), andgopkg.in/evanphx/json-patch.v4(v4.12.0) are critical, as they may impact API communication and data serialization/deserialization. Validate that any gRPC services or protocol buffers used in your project remain fully compatible.
100-104:Details
❓ Verification inconclusive
Kubernetes API Extensions and Related Utilities Upgrade:
The following dependencies have been updated:
k8s.io/apiextensions-apiservertov0.32.1k8s.io/klog/v2tov2.130.1k8s.io/kube-openapito a newer timestamp versionsigs.k8s.io/jsonandsigs.k8s.io/structured-merge-diff/v4(now atv4.4.2)
These upgrades play a crucial role in ensuring that custom resource definitions and API extensions work correctly with your operator. Please perform end-to-end tests to detect any unnoticed incompatibilities with Kubernetes APIs.
Action Required: Verify Compatibility of Upgraded Kubernetes Dependencies
The
go.modfile now lists the following updated dependencies:
k8s.io/apiextensions-apiserver v0.32.1k8s.io/klog/v2 v2.130.1k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3fsigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3sigs.k8s.io/structured-merge-diff/v4 v4.4.2These updates—central to ensuring that custom resource definitions and API extensions function correctly—appear in the final state without any residual or removed code. However, given that some dependencies now reference timestamped versions, it’s essential to run comprehensive end-to-end tests to catch any potential incompatibilities with the Kubernetes API.
Please verify these upgrades in your integration testing environment and ensure that no unexpected runtime issues occur.
* We create several etcd clients in the reconciliation loop, but never had a defer .Close() for them. * We erroneously try to configure these clients with etcd-0 instead of etcd-0.etcd-headless.namespace as the url. Now fixed. Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
* Several `defer c.Close()` added to clean up etcd clients after reconciliation. * DNS names targeting etcd cluster members fixed to resolve properly. * TLS capability added to etcd clients created during reconciliation.
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Documentation** - Added Kirill Klinchenkov and Timofei Larkin as new maintainers in the maintainers list. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Resolves #273 Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
ℹ️ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
## Summary - Replace deprecated `gcr.io/kubebuilder/kube-rbac-proxy:v0.16.0` with `quay.io/brancz/kube-rbac-proxy:v0.18.1` - The GCR-hosted image became unavailable after March 18, 2025 - The new image is from the original upstream author (brancz) Fixes #271 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated authentication proxy image to quay.io/brancz/kube-rbac-proxy:v0.18.1 across deployment configs and Helm chart values. * **Documentation** * API reference updated to mark numerous embedded and top-level fields as optional, clarifying optionality for specs like replicas, storage, security, TLS, metadata, and pod disruption settings. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Andrei Kvapil <kvapss@gmail.com> Co-authored-by: Claude <noreply@anthropic.com>
Leave yaml.v2 indentation style, as used by default in k8s.
Signed-off-by: Andrey Kolkov <androndo@gmail.com>
* drop /bin/sh from restore: collapse restore-agent + restore-datadir into a single Go initContainer using etcdutl/v3/snapshot.NewV3() * PodSecurityContext.FSGroup=65532 when bootstrap.restore is set so the nonroot restore-agent can mkdir into a freshly-mounted PVC * tighten restore-agent: require all 5 env vars, trim cluster envs symmetrically, log + os.RemoveAll on partial state before retry, sentinel-based skip-check instead of bare member/ * bump default restore-agent memory limit (etcdutl Restore() runs in-process and OOM-kills on multi-GB snapshots at 512Mi) * mirror PVC.SubPath hardening on the restore side (validatePVCSubPath) * treat Job.Status.CompletionTime==nil in the errNoMarker grace branch as "still within grace" — finalize-empty is unrecoverable * Go toolchain bump 1.22.4 -> 1.23.0 (Dockerfile + 5 workflows) required by go.etcd.io/etcd/etcdutl/v3 v3.5.21 * controller-gen bump v0.15.0 -> v0.16.5 (needed for Go 1.23 build); regenerate CRD + RBAC + deepcopy on top * new CI workflow: codegen-drift gate runs make manifests generate helm-crd-copy and fails on dirty git status * e2e: harden the kubectl port-forward race by wrapping health- check in Eventually; add restore continuation spec exercising the full PVC restore path against a live cluster Signed-off-by: Andrey Kolkov <androndo@gmail.com>
This PR contains the following updates:
v4.1.7→v4.3.1v5.0.1→v5.6.010.4.19→10.5.0v4.2.0→v4.3.1v3.2.0→v3.7.0v5.5.1→v5.10.0v3.3.0→v3.12.0v1.27.2→v1.42.0v1.17.18→v1.19.23v1.55.1→v1.103.3v1.4.2→v1.4.3v2.19.0→v2.29.0v1.33.1→v1.41.0v1.7.0→v1.10.2v1.0.5→v1.0.10v1.19.0→v1.21.01.23.0→1.26.4v3.5.21→v3.6.12v3.5.21→v3.6.12v1.27.0→v1.28.01.23.0→1.26.4v1.60.0→v1.64.8v3.15.2→v3.21.00.127.0→0.162.1v1.15.0→v1.20.2v0.30.2→v0.36.1v0.30.2→v0.36.1v0.30.2→v0.36.1v0.16.5→v0.21.0v0.23.0→v0.32.0v1.30.0→v1.36.1v1.4.1→v1.9.2v4.44.1→v4.53.3v1.13.1→v1.14.211.0.0→11.0.1v0.74.0→v0.91.0v0.18.1→v0.22.0v6.0.0→v6.4.0v0.18.4→v0.24.1v3.5.0→v3.10.12.9.0→2.11.5Release Notes
actions/checkout (actions/checkout)
v4.3.1Compare Source
What's Changed
Full Changelog: actions/checkout@v4...v4.3.1
v4.3.0Compare Source
What's Changed
New Contributors
Full Changelog: actions/checkout@v4...v4.3.0
v4.2.2Compare Source
url-helper.tsnow leverages well-known environment variables by @jww3 in #1941isGhesby @jww3 in #1946v4.2.1Compare Source
v4.2.0Compare Source
actions/setup-go (actions/setup-go)
v5.6.0Compare Source
What's Changed
Full Changelog: actions/setup-go@v5...v5.6.0
v5.5.0Compare Source
What's Changed
Bug fixes:
Dependency updates:
New Contributors
Full Changelog: actions/setup-go@v5...v5.5.0
v5.4.0Compare Source
What's Changed
Dependency updates :
New Contributors
Full Changelog: actions/setup-go@v5...v5.4.0
v5.3.0Compare Source
What's Changed
@actions/cacheto^4.0.0by @Link- in #531New Contributors
Full Changelog: actions/setup-go@v5...v5.3.0
v5.2.0Compare Source
What's Changed
New Contributors
Full Changelog: actions/setup-go@v5...v5.2.0
v5.1.0Compare Source
What's Changed
This addresses issues with caching by adding the architecture (arch) to the cache key, ensuring that cache keys are accurate to prevent conflicts.
Note: This change may break previous cache keys as they will no longer be compatible with the new format.
Bug Fixes
isGheslogic by @jww3 in #511New Contributors
Full Changelog: actions/setup-go@v5...v5.1.0
v5.0.2Compare Source
What's Changed
Bug fixes:
Dependency updates:
New Contributors
Full Changelog: actions/setup-go@v5...v5.0.2
postcss/autoprefixer (autoprefixer)
v10.5.0Compare Source
mask-position-xandmask-position-ysupport (by @toporek).v10.4.27Compare Source
package.json.v10.4.26Compare Source
v10.4.25Compare Source
v10.4.24Compare Source
v10.4.23Compare Source
v10.4.22Compare Source
stretchprefixes on new Can I Use database.fraction.js.v10.4.21Compare Source
-moz-prefix for:placeholder-shown(by @Marukome0743).v10.4.20Compare Source
fit-contentprefix for Firefox.azure/setup-helm (azure/setup-helm)
v4.3.1Compare Source
Changed
Added
v4.3.0Compare Source
docker/login-action (docker/login-action)
v3.7.0Compare Source
scopeinput to set scopes for the authentication token by @crazy-max in #912registry-authinput by @crazy-max in #911Full Changelog: docker/login-action@v3.6.0...v3.7.0
v3.6.0Compare Source
registry-authinput for raw authentication to registries by @crazy-max in #887Full Changelog: docker/login-action@v3.5.0...v3.6.0
v3.5.0Compare Source
Full Changelog: docker/login-action@v3.4.0...v3.5.0
v3.4.0Compare Source
Full Changelog: docker/login-action@v3.3.0...v3.4.0
v3.3.0Compare Source
Full Changelog: docker/login-action@v3.2.0...v3.3.0
docker/metadata-action (docker/metadata-action)
v5.10.0Compare Source
Full Changelog: docker/metadata-action@v5.9.0...v5.10.0
v5.9.0Compare Source
tag-namesoutput to return tag names without image base name by @crazy-max in #553Full Changelog: docker/metadata-action@v5.8.0...v5.9.0
v5.8.0Compare Source
is_not_default_branchglobal expression by @crazy-max in #535Full Changelog: docker/metadata-action@v5.7.0...v5.8.0
v5.7.0Compare Source
Full Changelog: docker/metadata-action@v5.6.1...v5.7.0
v5.6.1Compare Source
Full Changelog: docker/metadata-action@v5.6.0...v5.6.1
v5.6.0Compare Source
commit_dateglobal expression by @trim21 in #471 #475Full Changelog: docker/metadata-action@v5.5.1...v5.6.0
docker/setup-buildx-action (docker/setup-buildx-action)
v3.12.0Compare Source
installinput by @crazy-max in #455Full Changelog: docker/setup-buildx-action@v3.11.1...v3.12.0
v3.11.1Compare Source
keep-statenot being respected by @crazy-max in #429Full Changelog: docker/setup-buildx-action@v3.11.0...v3.11.1
v3.11.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.10.0...v3.11.0
v3.10.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.9.0...v3.10.0
v3.9.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.8.0...v3.9.0
v3.8.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.7.1...v3.8.0
v3.7.1Compare Source
uuidpackage by @crazy-max in #369Full Changelog: docker/setup-buildx-action@v3.7.0...v3.7.1
v3.7.0Compare Source
buildkitd-flagsif opt-in by @crazy-max in #363uuidpackage and switch tocryptoby @crazy-max in #366Full Changelog: docker/setup-buildx-action@v3.6.1...v3.7.0
v3.6.1Compare Source
Full Changelog: docker/setup-buildx-action@v3.6.0...v3.6.1
v3.6.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.5.0...v3.6.0
v3.5.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.4.0...v3.5.0
v3.4.0Compare Source
Full Changelog: docker/setup-buildx-action@v3.3.0...v3.4.0
aws/aws-sdk-go-v2 (github.com/aws/aws-sdk-go-v2)
v1.42.0Compare Source
General Highlights
Module Highlights
github.com/aws/aws-sdk-go-v2/service/cleanrooms: v1.43.0github.com/aws/aws-sdk-go-v2/service/connect: v1.171.0github.com/aws/aws-sdk-go-v2/service/connectcampaignsv2: v1.12.0github.com/aws/aws-sdk-go-v2/service/groundstation: v1.41.0github.com/aws/aws-sdk-go-v2/service/imagebuilder: v1.53.0Configuration
📅 Schedule: (UTC)
* * * * 6)🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.