64 Commits

Author SHA1 Message Date
argoyle 25a6340fd7 Merge pull request 'chore(release): prepare for 1.6.1' (#318) from next-release into main
Release / release (push) Successful in 50s
cron-checker / vulnerabilities (push) Successful in 4m15s
cron-checker / test (push) Successful in 5m1s
cron-checker / build (push) Successful in 18m23s
Reviewed-on: #318
2026-02-11 21:35:35 +00:00
renovate 8e7cfecf14 fix(deps): update kubernetes packages to v0.35.1 (#328)
cron-checker / test (push) Failing after 2s
Release / release (push) Failing after 2s
cron-checker / vulnerabilities (push) Failing after 3s
cron-checker / build (push) Has been skipped
2026-02-11 07:40:35 +00:00
releaser eb73c53789 chore(release): prepare for 1.6.1
cron-checker / vulnerabilities (pull_request) Successful in 3m18s
cron-checker / test (pull_request) Successful in 4m45s
cron-checker / build (pull_request) Successful in 15m28s
2026-02-11 07:36:25 +00:00
releaser 1eb3684f89 chore(release): prepare for 1.6.1
cron-checker / test (pull_request) Failing after 2s
cron-checker / vulnerabilities (pull_request) Failing after 2s
cron-checker / build (pull_request) Has been skipped
2026-02-11 07:36:22 +00:00
releaser edecf70831 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser 458f4eb972 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser b0f1582140 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser 1b306ef6be chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser bc3d294098 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser cd08bafb22 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser fa23921480 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser 30b5632a82 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser 1b72084a1a chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser 6297314421 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser a66993bb85 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser d54cd60871 chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
releaser e4da589e5b chore(release): prepare for 1.6.1 2026-02-11 07:36:16 +00:00
renovate 43a4ae15f4 chore(deps): update dependency go to v1.26.0 (#325)
Release / release (push) Successful in 1m15s
cron-checker / vulnerabilities (push) Successful in 1m32s
cron-checker / test (push) Successful in 2m32s
cron-checker / build (push) Failing after 3s
2026-02-11 07:35:23 +00:00
renovate 230afd92ba chore(deps): update golang docker tag to v1.26.0 (#327)
Release / release (push) Successful in 45s
cron-checker / vulnerabilities (push) Successful in 1m28s
cron-checker / test (push) Successful in 3m3s
cron-checker / build (push) Successful in 6m9s
2026-02-11 06:40:11 +00:00
renovate 0dfe286d12 chore(deps): update golang:1.25.7 docker digest to d2819ff (#326)
cron-checker / test (push) Failing after 3s
Release / release (push) Failing after 2s
cron-checker / vulnerabilities (push) Failing after 2s
cron-checker / build (push) Has been skipped
2026-02-11 00:00:28 +00:00
renovate 93bfdb3b4e chore(deps): update golang docker tag to v1.25.7 (#324)
cron-checker / vulnerabilities (push) Successful in 2m1s
cron-checker / test (push) Successful in 2m6s
Release / release (push) Successful in 4m1s
cron-checker / build (push) Successful in 7m15s
2026-02-04 19:28:29 +00:00
renovate 5c4d6cde66 chore(deps): update dependency go to v1.25.7 (#323)
Release / release (push) Failing after 38s
cron-checker / vulnerabilities (push) Successful in 3m12s
cron-checker / test (push) Successful in 4m16s
cron-checker / build (push) Successful in 11m40s
2026-02-04 16:42:56 +00:00
renovate 3712d63916 chore(deps): update golang:1.25.6 docker digest to ceda080 (#322)
cron-checker / vulnerabilities (push) Successful in 1m18s
cron-checker / test (push) Successful in 2m25s
Release / release (push) Successful in 4m17s
cron-checker / build (push) Successful in 7m28s
2026-02-04 10:59:40 +00:00
argoyle 01bad1f754 Merge pull request 'chore: remove unused .gitlab-ci.yml' (#321) from remove-gitlab-ci into main
Release / release (push) Failing after 1m49s
cron-checker / vulnerabilities (push) Successful in 4m41s
cron-checker / test (push) Successful in 6m19s
cron-checker / build (push) Failing after 10m54s
Reviewed-on: #321
2026-01-23 15:08:07 +00:00
argoyle 706b8c2287 chore: remove unused .gitlab-ci.yml
cron-checker / vulnerabilities (pull_request) Successful in 6m55s
cron-checker / test (pull_request) Successful in 10m15s
cron-checker / build (pull_request) Successful in 17m25s
No longer needed after migration to Gitea Actions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 14:33:43 +01:00
renovate d9b736b43b chore(deps): update golang docker tag to v1.25.6 (#320)
cron-checker / vulnerabilities (push) Successful in 2m8s
cron-checker / test (push) Successful in 3m48s
Release / release (push) Successful in 6m5s
cron-checker / build (push) Successful in 8m55s
2026-01-15 23:43:58 +00:00
argoyle 96454eb4e8 Merge pull request 'chore(deps): update dependency go to v1.25.6' (#319) from renovate/go-1.x into main
cron-checker / vulnerabilities (push) Successful in 4m3s
Release / release (push) Successful in 4m37s
cron-checker / test (push) Successful in 8m14s
cron-checker / build (push) Successful in 10m5s
Reviewed-on: #319
2026-01-15 20:39:34 +00:00
renovate 959369e62f chore(deps): update dependency go to v1.25.6
cron-checker / vulnerabilities (pull_request) Successful in 6m14s
cron-checker / test (pull_request) Successful in 12m47s
cron-checker / build (pull_request) Successful in 20m51s
2026-01-15 20:03:36 +00:00
renovate ce761d0b4d chore(deps): update golang:1.25.5 docker digest to 3a01526 (#316)
Release / release (push) Successful in 1m15s
cron-checker / vulnerabilities (push) Successful in 2m7s
cron-checker / test (push) Successful in 2m47s
cron-checker / build (push) Failing after 29m37s
2026-01-13 06:53:07 +00:00
argoyle 88f56b38a4 Merge pull request 'ci: run build job on pull requests' (#317) from feat/ci-docker-build into main
cron-checker / build (push) Has been cancelled
cron-checker / vulnerabilities (push) Has been cancelled
cron-checker / test (push) Has been cancelled
Release / release (push) Has been cancelled
Reviewed-on: #317
2026-01-13 06:52:48 +00:00
argoyle b5a76e8f85 ci: run build job on pull requests
cron-checker / vulnerabilities (pull_request) Successful in 4m7s
cron-checker / test (pull_request) Successful in 8m10s
cron-checker / build (pull_request) Successful in 12m20s
2026-01-13 07:23:59 +01:00
argoyle 2c3637dad1 Merge pull request 'chore(release): prepare for 1.6.0' (#315) from next-release into main
Release / release (push) Successful in 1m4s
cron-checker / vulnerabilities (push) Successful in 3m6s
cron-checker / test (push) Successful in 3m25s
cron-checker / build (push) Successful in 10m30s
Reviewed-on: #315
2026-01-10 20:08:56 +00:00
releaser 952f8a03c2 chore(release): prepare for 1.6.0
cron-checker / vulnerabilities (pull_request) Successful in 2m14s
cron-checker / test (pull_request) Successful in 3m0s
cron-checker / build (pull_request) Has been skipped
2026-01-10 19:54:18 +00:00
releaser 2de6e2d055 chore(release): prepare for 1.6.0 2026-01-10 19:54:13 +00:00
releaser 5e80c539bb chore(release): prepare for 1.6.0 2026-01-10 19:44:43 +00:00
releaser 67292c2524 chore(release): prepare for 1.6.0 2026-01-10 19:44:39 +00:00
argoyle ad42dd7921 Merge pull request 'feat: add Docker build and push to CI workflow' (#314) from feat/ci-docker-build into main
cron-checker / test (push) Successful in 4m31s
cron-checker / vulnerabilities (push) Successful in 4m34s
Release / release (push) Successful in 1m4s
cron-checker / build (push) Successful in 10m6s
Reviewed-on: #314
2026-01-10 19:40:17 +00:00
argoyle 9b689f90cb feat: add Docker build and push to CI workflow
cron-checker / vulnerabilities (pull_request) Successful in 4m31s
cron-checker / test (pull_request) Successful in 5m22s
cron-checker / build (pull_request) Has been skipped
2026-01-10 20:31:43 +01:00
argoyle b5206ed105 Merge pull request 'chore(release): prepare for 1.5.0' (#313) from next-release into main
Release / release (push) Successful in 2m19s
cron-checker / vulnerabilities (push) Successful in 6m40s
cron-checker / test (push) Successful in 9m27s
Reviewed-on: #313
2026-01-10 18:50:19 +00:00
releaser 288527b9bd chore(release): prepare for 1.5.0
cron-checker / test (pull_request) Successful in 8m32s
cron-checker / vulnerabilities (pull_request) Successful in 6m55s
2026-01-10 18:35:53 +00:00
releaser adcd59e48f chore(release): prepare for 1.5.0 2026-01-10 18:35:46 +00:00
argoyle ecd185e74e Merge pull request 'feat: run CI workflow on tags' (#312) from feat/ci-on-tags into main
Release / release (push) Successful in 2m11s
cron-checker / vulnerabilities (push) Successful in 3m39s
cron-checker / test (push) Successful in 5m30s
Reviewed-on: #312
2026-01-10 18:34:21 +00:00
argoyle 920500f335 feat: run CI workflow on tags
cron-checker / vulnerabilities (pull_request) Successful in 3m34s
cron-checker / test (pull_request) Successful in 4m34s
2026-01-10 19:25:23 +01:00
argoyle f60ca960d6 Merge pull request 'chore(release): prepare for 1.4.0' (#306) from next-release into main
Release / release (push) Successful in 3m15s
cron-checker / test (push) Successful in 4m25s
cron-checker / vulnerabilities (push) Successful in 7m34s
Reviewed-on: #306
2026-01-09 15:56:02 +00:00
releaser 69b24e9e09 chore(release): prepare for 1.4.0 2026-01-09 15:55:21 +00:00
releaser 651682092a chore(release): prepare for 1.4.0 2026-01-09 15:55:10 +00:00
argoyle e982d69dd6 Merge pull request 'docs: add CLAUDE.md for Claude Code guidance' (#310) from docs/claude-md into main
cron-checker / test (push) Has been cancelled
cron-checker / vulnerabilities (push) Has been cancelled
Release / release (push) Has been cancelled
Reviewed-on: #310
2026-01-09 15:52:49 +00:00
argoyle 7a9b1cb675 Merge pull request 'feat: add release workflow using shared workflow' (#311) from feat/release-workflow into main
cron-checker / test (push) Has been cancelled
cron-checker / vulnerabilities (push) Has been cancelled
Release / release (push) Has been cancelled
Reviewed-on: #311
2026-01-09 15:52:39 +00:00
argoyle 9be8681761 feat: add release workflow using shared workflow
cron-checker / vulnerabilities (pull_request) Successful in 4m25s
cron-checker / test (pull_request) Successful in 6m2s
2026-01-09 16:40:51 +01:00
argoyle 5293e94e21 docs: add CLAUDE.md for Claude Code guidance
cron-checker / vulnerabilities (pull_request) Successful in 4m29s
cron-checker / test (pull_request) Successful in 6m6s
2026-01-09 16:39:14 +01:00
argoyle 83cd217fb5 Merge pull request 'chore(deps): update actions/setup-go action to v6' (#309) from renovate/actions-setup-go-6.x into main
cron-checker / vulnerabilities (push) Successful in 8m43s
cron-checker / test (push) Successful in 11m20s
Reviewed-on: #309
2026-01-08 16:18:42 +00:00
renovate 5b9dc135e3 chore(deps): update actions/setup-go action to v6
cron-checker / vulnerabilities (pull_request) Successful in 5m35s
cron-checker / test (pull_request) Successful in 6m43s
2026-01-08 16:01:37 +00:00
argoyle 8170cbaa0d Merge pull request 'chore(deps): update actions/checkout action to v6' (#308) from renovate/actions-checkout-6.x into main
cron-checker / vulnerabilities (push) Successful in 3m8s
cron-checker / test (push) Successful in 4m57s
Reviewed-on: #308
2026-01-08 15:07:28 +00:00
renovate a5a8ac6090 chore(deps): update actions/checkout action to v6
cron-checker / vulnerabilities (pull_request) Successful in 3m38s
cron-checker / test (pull_request) Successful in 4m6s
2026-01-08 15:01:46 +00:00
argoyle 9d56171a31 Merge pull request 'feat: migrate from GitLab CI to Gitea Actions' (#307) from feat/gitea-actions into main
cron-checker / test (push) Successful in 4m5s
cron-checker / vulnerabilities (push) Successful in 4m53s
Reviewed-on: #307
2026-01-08 14:36:41 +00:00
argoyle 8582f07d3f feat: migrate from GitLab CI to Gitea Actions
cron-checker / vulnerabilities (pull_request) Successful in 1m46s
cron-checker / test (pull_request) Successful in 2m17s
2026-01-08 15:21:26 +01:00
Unbound Release a257fabbc8 chore(release): prepare for 1.3.19 2025-12-30 17:59:43 +00:00
Unbound Release d95d216e0b chore(release): prepare for 1.3.19 2025-12-30 17:59:42 +00:00
argoyle ad1db6b5e3 Merge branch 'renovate/golang-1.25.5' into 'master'
chore(deps): update golang:1.25.5 docker digest to ad03ba9

See merge request unboundsoftware/cron-checker!302
2025-12-30 17:42:31 +01:00
Renovate 85f607ac20 chore(deps): update golang:1.25.5 docker digest to ad03ba9 2025-12-30 04:03:31 +00:00
argoyle ecc9e0f04f Merge branch 'next-release' into 'master'
chore(release): prepare for 1.3.18

See merge request unboundsoftware/cron-checker!301
2025-12-18 08:15:14 +01:00
Unbound Release 126bdcf632 chore(release): prepare for 1.3.18 2025-12-18 08:15:14 +01:00
argoyle 95a19faf9d Merge branch 'renovate/kubernetes-go' into 'master'
fix(deps): update kubernetes packages to v0.35.0

See merge request unboundsoftware/cron-checker!300
2025-12-18 07:12:09 +01:00
Renovate 15f9e75c0f fix(deps): update kubernetes packages to v0.35.0 2025-12-18 01:01:55 +00:00
9 changed files with 235 additions and 118 deletions
+43
View File
@@ -0,0 +1,43 @@
name: cron-checker
on:
push:
branches: [main]
tags: ['*']
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v6
with:
go-version: 'stable'
- name: Run tests
run: go test -race -coverprofile=coverage.txt ./...
vulnerabilities:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v6
with:
go-version: 'stable'
- name: Check vulnerabilities
run: |
go install golang.org/x/vuln/cmd/govulncheck@latest
govulncheck ./...
build:
runs-on: ubuntu-latest
needs: [test, vulnerabilities]
env:
BUILDTOOLS_CONTENT: ${{ secrets.BUILDTOOLS_CONTENT }}
GITEA_REPOSITORY: ${{ gitea.repository }}
steps:
- uses: actions/checkout@v6
- uses: buildtool/setup-buildtools-action@v1
- name: Build and push
run: unset GITEA_TOKEN && build && push
+9
View File
@@ -0,0 +1,9 @@
name: Release
on:
push:
branches: [main]
jobs:
release:
uses: unboundsoftware/shared-workflows/.gitea/workflows/Release.yml@main
-20
View File
@@ -1,20 +0,0 @@
include:
- template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml'
- project: unboundsoftware/ci-templates
file: Defaults.gitlab-ci.yml
- project: unboundsoftware/ci-templates
file: Release.gitlab-ci.yml
stages:
- build
image: buildtool/build-tools:${BUILDTOOLS_VERSION}
build:
stage: build
script:
- build
- curl -Os https://uploader.codecov.io/latest/linux/codecov
- chmod +x codecov
- ./codecov -t ${CODECOV_TOKEN} -R $CI_PROJECT_DIR -C $CI_COMMIT_SHA -r $CI_PROJECT_PATH
- push
+3 -1
View File
@@ -1 +1,3 @@
{"version":"1.3.17"}
{
"version": "1.6.1"
}
+51
View File
@@ -2,6 +2,57 @@
All notable changes to this project will be documented in this file.
## [1.6.1] - 2026-02-11
### ⚙️ Miscellaneous Tasks
- Run build job on pull requests
- *(deps)* Update golang:1.25.5 docker digest to 3a01526 (#316)
- *(deps)* Update dependency go to v1.25.6
- *(deps)* Update golang docker tag to v1.25.6 (#320)
- Remove unused .gitlab-ci.yml
- *(deps)* Update golang:1.25.6 docker digest to ceda080 (#322)
- *(deps)* Update dependency go to v1.25.7 (#323)
- *(deps)* Update golang docker tag to v1.25.7 (#324)
- *(deps)* Update golang:1.25.7 docker digest to d2819ff (#326)
- *(deps)* Update golang docker tag to v1.26.0 (#327)
- *(deps)* Update dependency go to v1.26.0 (#325)
## [1.6.0] - 2026-01-10
### 🚀 Features
- Add Docker build and push to CI workflow
## [1.5.0] - 2026-01-10
### 🚀 Features
- Run CI workflow on tags
## [1.4.0] - 2026-01-09
### 🚀 Features
- Migrate from GitLab CI to Gitea Actions
- Add release workflow using shared workflow
### 📚 Documentation
- Add CLAUDE.md for Claude Code guidance
### ⚙️ Miscellaneous Tasks
- *(deps)* Update golang:1.25.5 docker digest to ad03ba9
- *(deps)* Update actions/checkout action to v6
- *(deps)* Update actions/setup-go action to v6
## [1.3.18] - 2025-12-18
### 🐛 Bug Fixes
- *(deps)* Update kubernetes packages to v0.35.0
## [1.3.17] - 2025-12-10
### 🐛 Bug Fixes
+61
View File
@@ -0,0 +1,61 @@
# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Project Overview
A Kubernetes monitoring tool that checks for CronJobs not running according to schedule and sends Slack notifications. It runs as a container inside a K8s cluster, polling all CronJobs every 60 seconds.
## Common Commands
```bash
# Run tests
go test ./...
# Run tests with race detection and coverage
go test -race -coverprofile=coverage.txt ./...
# Build the binary
CGO_ENABLED=0 go build -o release/cron-checker -ldflags '-w -s'
# Check for vulnerabilities
govulncheck ./...
# Format and vet
go fmt ./...
go vet ./...
# Check for unused modules
go mod tidy
```
## Architecture
This is a single-file Go application (`main.go`) with comprehensive tests (`main_test.go`).
**Core Components:**
- `doCheck()` - Main loop that polls K8s CronJobs, parses cron schedules, and sends Slack alerts for overdue jobs
- `Client` / `ClientProvider` interfaces - Abstractions over K8s client for testability
- `ConfigProvider` / `InClusterProvider` - Handles K8s in-cluster authentication
**Key Dependencies:**
- `k8s.io/client-go` - Kubernetes API client
- `github.com/robfig/cron` - Cron schedule parsing
- `github.com/multiplay/go-slack` - Slack webhook integration
- `github.com/alecthomas/kingpin/v2` - CLI flag parsing
**Configuration:**
- `SLACK_URL` env var or `--slack-url` flag (required) - Slack webhook URL for notifications
## Building Docker Image
The Dockerfile performs a multi-stage build that runs fmt, vet, and tests before building:
```bash
docker build -t cron-checker .
```
To extract coverage report:
```bash
docker build --target export -o . .
```
+1 -1
View File
@@ -1,4 +1,4 @@
FROM amd64/golang:1.25.5@sha256:0c27bcf0df81eca89f87e1e78be5ad5e36487f0eaf71cd900ba14ee7621d3e70 as build
FROM amd64/golang:1.26.0@sha256:e7479dbd4918090d893b97245fd8c0bcf767677f8ede2e60e7fb2c2f38c94215 as build
WORKDIR /build
ENV CGO_ENABLED=0
ADD . /build
+17 -19
View File
@@ -1,17 +1,17 @@
module gitlab.com/unboundsoftware/cron-checker
go 1.24.0
go 1.25.0
toolchain go1.25.5
toolchain go1.26.0
require (
github.com/alecthomas/kingpin/v2 v2.4.0
github.com/multiplay/go-slack v0.0.0-20220428123529-0762aee71fe3
github.com/robfig/cron v1.2.0
github.com/sanity-io/litter v1.5.8
k8s.io/api v0.34.3
k8s.io/apimachinery v0.34.3
k8s.io/client-go v0.34.3
k8s.io/api v0.35.1
k8s.io/apimachinery v0.35.1
k8s.io/client-go v0.35.1
)
require (
@@ -19,11 +19,10 @@ require (
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/emicklei/go-restful/v3 v3.12.2 // indirect
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-openapi/jsonpointer v0.21.0 // indirect
github.com/go-openapi/jsonreference v0.20.2 // indirect
github.com/go-openapi/swag v0.23.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/google/gnostic-models v0.7.0 // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/josharian/intern v1.0.0 // indirect
@@ -32,25 +31,24 @@ require (
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/x448/float16 v0.8.4 // indirect
github.com/xhit/go-str2duration/v2 v2.1.0 // indirect
go.yaml.in/yaml/v2 v2.4.2 // indirect
go.yaml.in/yaml/v2 v2.4.3 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/net v0.38.0 // indirect
golang.org/x/oauth2 v0.27.0 // indirect
golang.org/x/sys v0.31.0 // indirect
golang.org/x/term v0.30.0 // indirect
golang.org/x/text v0.23.0 // indirect
golang.org/x/net v0.47.0 // indirect
golang.org/x/oauth2 v0.30.0 // indirect
golang.org/x/sys v0.38.0 // indirect
golang.org/x/term v0.37.0 // indirect
golang.org/x/text v0.31.0 // indirect
golang.org/x/time v0.9.0 // indirect
google.golang.org/protobuf v1.36.5 // indirect
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
google.golang.org/protobuf v1.36.8 // indirect
gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/klog/v2 v2.130.1 // indirect
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b // indirect
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 // indirect
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect
k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 // indirect
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect
sigs.k8s.io/randfill v1.0.0 // indirect
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect
sigs.k8s.io/yaml v1.6.0 // indirect
+50 -77
View File
@@ -1,3 +1,5 @@
github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0=
github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
github.com/alecthomas/kingpin/v2 v2.4.0 h1:f48lwail6p8zpO1bC4TxtqACaGqHYA22qkHjHpqDjYY=
github.com/alecthomas/kingpin/v2 v2.4.0/go.mod h1:0gyi0zQnjuFk8xrkNKamJoyUo382HRL7ATRpFZCw6tE=
github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 h1:s6gZFSlWYmbqAuRjVTiNNhvNRfY2Wxp9nhfyel4rklc=
@@ -12,8 +14,8 @@ github.com/emicklei/go-restful/v3 v3.12.2 h1:DhwDP0vY3k8ZzE0RunuJy8GhNpPL6zqLkDf
github.com/emicklei/go-restful/v3 v3.12.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
github.com/fxamacker/cbor/v2 v2.9.0 h1:NpKPmjDBgUfBms6tr6JZkTHtfFGcMKsw3eGcmD/sapM=
github.com/fxamacker/cbor/v2 v2.9.0/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ=
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs=
github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ=
github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY=
@@ -24,23 +26,19 @@ github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+Gr
github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ=
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
github.com/google/gnostic-models v0.7.0 h1:qwTtogB15McXDaNqTZdzPJRHvaVJlAl+HVQnLmJEJxo=
github.com/google/gnostic-models v0.7.0/go.mod h1:whL5G0m6dmc5cPxKc5bdKdEN3UjI7OUGxBlw57miDrQ=
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo=
github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
github.com/google/pprof v0.0.0-20250403155104-27863c87afa6 h1:BHT72Gu3keYf3ZEu2J0b1vyeLSOYI8bm5wbJM/8yDe8=
github.com/google/pprof v0.0.0-20250403155104-27863c87afa6/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y=
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
@@ -60,23 +58,21 @@ github.com/multiplay/go-slack v0.0.0-20220428123529-0762aee71fe3 h1:dJYuKCHHnle0
github.com/multiplay/go-slack v0.0.0-20220428123529-0762aee71fe3/go.mod h1:NvMi0R59yLlFQoqPIiHVWLgL2XnsGXw3MNMH65wGNew=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/onsi/ginkgo/v2 v2.21.0 h1:7rg/4f3rB88pb5obDgNZrNHrQ4e6WpjonchcpuBRnZM=
github.com/onsi/ginkgo/v2 v2.21.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo=
github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4=
github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/onsi/ginkgo/v2 v2.27.2 h1:LzwLj0b89qtIy6SSASkzlNvX6WktqurSHwkk2ipF/Ns=
github.com/onsi/ginkgo/v2 v2.27.2/go.mod h1:ArE1D/XhNXBXCBkKOLkbsb2c81dQHCRcF5zwn/ykDRo=
github.com/onsi/gomega v1.38.2 h1:eZCjf2xjZAqe+LeWvKb5weQ+NcPwX84kqJ0cZNxok2A=
github.com/onsi/gomega v1.38.2/go.mod h1:W2MJcYxRGV63b418Ai34Ud0hEdTVXq9NW9+Sx6uXf3k=
github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/robfig/cron v1.2.0 h1:ZjScXvvxeQ63Dbyxy76Fj3AT3Ut0aKsyd2/tl3DTMuQ=
github.com/robfig/cron v1.2.0/go.mod h1:JGuDeoQd7Z6yL4zQhZ3OPEVHB7fL6Ka6skscFHfmt2k=
github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII=
github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o=
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
github.com/sanity-io/litter v1.5.8 h1:uM/2lKrWdGbRXDrIq08Lh9XtVYoeGtcQxk9rtQ7+rYg=
github.com/sanity-io/litter v1.5.8/go.mod h1:9gzJgR2i4ZpjZHsKvUXIRQVk7P+yM3e+jAF7bU2UI5U=
github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/spf13/pflag v1.0.9 h1:9exaQaMOCwffKiiiYk6/BndUBv+iRViNW+4lEMi0PvY=
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
@@ -88,84 +84,61 @@ github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81P
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg=
github.com/xhit/go-str2duration/v2 v2.1.0 h1:lxklc02Drh6ynqX+DdPyp5pCKLUQpRT8bp8Ydu2Bstc=
github.com/xhit/go-str2duration/v2 v2.1.0/go.mod h1:ohY8p+0f07DiV6Em5LKB0s2YpLtXVyJfNt1+BlmyAsU=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
go.yaml.in/yaml/v2 v2.4.2 h1:DzmwEr2rDGHl7lsFgAHxmNz/1NlQ7xLIrlN2h5d1eGI=
go.yaml.in/yaml/v2 v2.4.2/go.mod h1:081UH+NErpNdqlCXm3TtEran0rJZGxAYx9hb/ELlsPU=
go.yaml.in/yaml/v2 v2.4.3 h1:6gvOSjQoTB3vt1l+CU+tSyi/HOjfOjRLJ4YwYZGwRO0=
go.yaml.in/yaml/v2 v2.4.3/go.mod h1:zSxWcmIDjOzPXpjlTTbAsKokqkDNAVtZO0WOMiT90s8=
go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8=
golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
golang.org/x/oauth2 v0.27.0 h1:da9Vo7/tDv5RH/7nZDz1eMGS/q1Vv1N/7FCrBhI9I3M=
golang.org/x/oauth2 v0.27.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y=
golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
golang.org/x/mod v0.29.0 h1:HV8lRxZC4l2cr3Zq1LvtOsi/ThTgWnUk/y64QSs8GwA=
golang.org/x/mod v0.29.0/go.mod h1:NyhrlYXJ2H4eJiRy/WDBO6HMqZQ6q9nk4JzS3NuCK+w=
golang.org/x/net v0.47.0 h1:Mx+4dIFzqraBXUugkia1OOvlD6LemFo1ALMHjrXDOhY=
golang.org/x/net v0.47.0/go.mod h1:/jNxtkgq5yWUGYkaZGqo27cfGZ1c5Nen03aYrrKpVRU=
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
golang.org/x/sys v0.38.0 h1:3yZWxaJjBmCWXqhN1qh02AkOnCQ1poK6oF+a7xWL6Gc=
golang.org/x/sys v0.38.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/term v0.37.0 h1:8EGAD0qCmHYZg6J17DvsMy9/wJ7/D/4pV/wfnld5lTU=
golang.org/x/term v0.37.0/go.mod h1:5pB4lxRNYYVZuTLmy8oR2BH8dflOR+IbTYFD8fi3254=
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY=
golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/tools v0.26.0 h1:v/60pFQmzmT9ExmjDv2gGIfi3OqfKoEP6I5+umXlbnQ=
golang.org/x/tools v0.26.0/go.mod h1:TPVVj70c7JJ3WCazhD8OdXcZg/og+b9+tH/KxylGwH0=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=
google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
golang.org/x/tools v0.38.0 h1:Hx2Xv8hISq8Lm16jvBZ2VQf+RLmbd7wVUsALibYI/IQ=
golang.org/x/tools v0.38.0/go.mod h1:yEsQ/d/YK8cjh0L6rZlY8tgtlKiBNTL14pGDJPJpYQs=
google.golang.org/protobuf v1.36.8 h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc=
google.golang.org/protobuf v1.36.8/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4=
gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M=
gopkg.in/evanphx/json-patch.v4 v4.13.0 h1:czT3CmqEaQ1aanPc5SdlgQrrEIb8w/wwCvWWnfEbYzo=
gopkg.in/evanphx/json-patch.v4 v4.13.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M=
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/api v0.34.3 h1:D12sTP257/jSH2vHV2EDYrb16bS7ULlHpdNdNhEw2S4=
k8s.io/api v0.34.3/go.mod h1:PyVQBF886Q5RSQZOim7DybQjAbVs8g7gwJNhGtY5MBk=
k8s.io/apimachinery v0.34.3 h1:/TB+SFEiQvN9HPldtlWOTp0hWbJ+fjU+wkxysf/aQnE=
k8s.io/apimachinery v0.34.3/go.mod h1:/GwIlEcWuTX9zKIg2mbw0LRFIsXwrfoVxn+ef0X13lw=
k8s.io/client-go v0.34.3 h1:wtYtpzy/OPNYf7WyNBTj3iUA0XaBHVqhv4Iv3tbrF5A=
k8s.io/client-go v0.34.3/go.mod h1:OxxeYagaP9Kdf78UrKLa3YZixMCfP6bgPwPwNBQBzpM=
k8s.io/api v0.35.1 h1:0PO/1FhlK/EQNVK5+txc4FuhQibV25VLSdLMmGpDE/Q=
k8s.io/api v0.35.1/go.mod h1:28uR9xlXWml9eT0uaGo6y71xK86JBELShLy4wR1XtxM=
k8s.io/apimachinery v0.35.1 h1:yxO6gV555P1YV0SANtnTjXYfiivaTPvCTKX6w6qdDsU=
k8s.io/apimachinery v0.35.1/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns=
k8s.io/client-go v0.35.1 h1:+eSfZHwuo/I19PaSxqumjqZ9l5XiTEKbIaJ+j1wLcLM=
k8s.io/client-go v0.35.1/go.mod h1:1p1KxDt3a0ruRfc/pG4qT/3oHmUj1AhSHEcxNSGg+OA=
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b h1:MloQ9/bdJyIu9lb1PzujOPolHyvO06MXG5TUIj2mNAA=
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b/go.mod h1:UZ2yyWbFTpuhSbFhv24aGNOdoRdJZgsIObGBUaYVsts=
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 h1:hwvWFiBzdWw1FhfY1FooPn3kzWuJ8tmbZBHi4zVsl1Y=
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE=
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 h1:Y3gxNAuB0OBLImH611+UDZcmKS3g6CthxToOb37KgwE=
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912/go.mod h1:kdmbQkyfwUagLfXIad1y2TdrjPFWp2Q89B3qkRwf/pQ=
k8s.io/utils v0.0.0-20251002143259-bc988d571ff4 h1:SjGebBtkBqHFOli+05xYbK8YF1Dzkbzn+gDM4X9T4Ck=
k8s.io/utils v0.0.0-20251002143259-bc988d571ff4/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 h1:IpInykpT6ceI+QxKBbEflcR5EXP7sU1kvOlxwZh5txg=
sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg=
sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 h1:jTijUJbW353oVOd9oTlifJqOGEkUw2jB/fXCbTiQEco=