69 Commits

Author SHA1 Message Date
renovate 1215b73ab9 chore(deps): update golang:1.26.1 docker digest to 5ba1126 (#341)
cron-checker / vulnerabilities (push) Successful in 1m36s
cron-checker / test (push) Successful in 2m5s
Release / release (push) Failing after 54s
cron-checker / build (push) Successful in 14m45s
2026-04-07 06:39:17 +00:00
releaser 5699c92842 chore(release): prepare for 1.6.3 (#340)
Release / release (push) Successful in 49s
cron-checker / test (push) Successful in 2m8s
cron-checker / vulnerabilities (push) Successful in 2m9s
cron-checker / build (push) Successful in 15m35s
## [1.6.3] - 2026-03-19

### 🐛 Bug Fixes

- *(deps)* Update kubernetes monorepo to v0.35.3 (#339)

### ⚙️ Miscellaneous Tasks

- *(deps)* Update golang:1.26.1 docker digest to 984bf90 (#337)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: #340
Co-authored-by: Unbound Releaser <releaser@unbound.se>
Co-committed-by: Unbound Releaser <releaser@unbound.se>
2026-03-19 13:02:43 +00:00
renovate 828a0a69ab fix(deps): update kubernetes monorepo to v0.35.3 (#339)
cron-checker / test (push) Successful in 1m58s
Release / release (push) Successful in 1m11s
cron-checker / vulnerabilities (push) Successful in 2m4s
cron-checker / build (push) Successful in 18m19s
2026-03-19 11:39:45 +00:00
renovate ec81b3b253 chore(deps): update golang:1.26.1 docker digest to 984bf90 (#337)
cron-checker / test (push) Successful in 1m55s
cron-checker / vulnerabilities (push) Successful in 1m31s
Release / release (push) Successful in 1m0s
cron-checker / build (push) Successful in 15m46s
2026-03-17 03:02:47 +00:00
releaser aa395e7fd1 chore(release): prepare for 1.6.2 (#336)
Release / release (push) Successful in 57s
cron-checker / test (push) Successful in 1m44s
cron-checker / vulnerabilities (push) Successful in 2m7s
cron-checker / build (push) Successful in 54m12s
## [1.6.2] - 2026-03-06

### 🐛 Bug Fixes

- *(deps)* Update kubernetes packages to v0.35.2 (#331)

### ⚙️ Miscellaneous Tasks

- *(deps)* Update golang:1.26.0 docker digest to 9835fb4 (#329)
- *(deps)* Update golang docker tag to v1.26.1 (#334)
- *(deps)* Update dependency go to v1.26.1 (#333)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: #336
Co-authored-by: Unbound Releaser <releaser@unbound.se>
Co-committed-by: Unbound Releaser <releaser@unbound.se>
2026-03-06 20:02:15 +00:00
renovate e33264eb3e chore(deps): update dependency go to v1.26.1 (#333)
Release / release (push) Successful in 1m30s
cron-checker / test (push) Successful in 3m17s
cron-checker / vulnerabilities (push) Successful in 3m22s
cron-checker / build (push) Successful in 14m30s
2026-03-06 02:27:10 +00:00
renovate 31b18fa716 chore(deps): update golang docker tag to v1.26.1 (#334)
Release / release (push) Successful in 56s
cron-checker / vulnerabilities (push) Successful in 1m53s
cron-checker / test (push) Successful in 2m0s
cron-checker / build (push) Successful in 13m15s
2026-03-06 02:26:37 +00:00
renovate 9105de9fbf fix(deps): update kubernetes packages to v0.35.2 (#331)
Release / release (push) Successful in 1m3s
cron-checker / vulnerabilities (push) Successful in 2m16s
cron-checker / test (push) Successful in 3m2s
cron-checker / build (push) Successful in 15m7s
2026-02-27 09:28:07 +00:00
renovate 780d2987fe chore(deps): update golang:1.26.0 docker digest to 9835fb4 (#329)
Release / release (push) Successful in 55s
cron-checker / test (push) Successful in 3m4s
cron-checker / vulnerabilities (push) Successful in 3m7s
cron-checker / build (push) Successful in 34m42s
2026-02-24 22:35:00 +00:00
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
9 changed files with 198 additions and 32 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.18"} {
"version": "1.6.3"
}
+71
View File
@@ -2,6 +2,77 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [1.6.3] - 2026-03-19
### 🐛 Bug Fixes
- *(deps)* Update kubernetes monorepo to v0.35.3 (#339)
### ⚙️ Miscellaneous Tasks
- *(deps)* Update golang:1.26.1 docker digest to 984bf90 (#337)
## [1.6.2] - 2026-03-06
### 🐛 Bug Fixes
- *(deps)* Update kubernetes packages to v0.35.2 (#331)
### ⚙️ Miscellaneous Tasks
- *(deps)* Update golang:1.26.0 docker digest to 9835fb4 (#329)
- *(deps)* Update golang docker tag to v1.26.1 (#334)
- *(deps)* Update dependency go to v1.26.1 (#333)
## [1.6.1] - 2026-02-11
### 🐛 Bug Fixes
- *(deps)* Update kubernetes packages to v0.35.1 (#328)
### ⚙️ 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 ## [1.3.18] - 2025-12-18
### 🐛 Bug Fixes ### 🐛 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.1@sha256:5ba1126a6dbb65aa517ff5eaecab6abc29480671e5c0ca176192de8da9dba4b8 as build
WORKDIR /build WORKDIR /build
ENV CGO_ENABLED=0 ENV CGO_ENABLED=0
ADD . /build ADD . /build
+4 -4
View File
@@ -2,16 +2,16 @@ module gitlab.com/unboundsoftware/cron-checker
go 1.25.0 go 1.25.0
toolchain go1.25.5 toolchain go1.26.1
require ( require (
github.com/alecthomas/kingpin/v2 v2.4.0 github.com/alecthomas/kingpin/v2 v2.4.0
github.com/multiplay/go-slack v0.0.0-20220428123529-0762aee71fe3 github.com/multiplay/go-slack v0.0.0-20220428123529-0762aee71fe3
github.com/robfig/cron v1.2.0 github.com/robfig/cron v1.2.0
github.com/sanity-io/litter v1.5.8 github.com/sanity-io/litter v1.5.8
k8s.io/api v0.35.0 k8s.io/api v0.35.3
k8s.io/apimachinery v0.35.0 k8s.io/apimachinery v0.35.3
k8s.io/client-go v0.35.0 k8s.io/client-go v0.35.3
) )
require ( require (
+6 -6
View File
@@ -125,12 +125,12 @@ 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.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 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/api v0.35.0 h1:iBAU5LTyBI9vw3L5glmat1njFK34srdLmktWwLTprlY= k8s.io/api v0.35.3 h1:pA2fiBc6+N9PDf7SAiluKGEBuScsTzd2uYBkA5RzNWQ=
k8s.io/api v0.35.0/go.mod h1:AQ0SNTzm4ZAczM03QH42c7l3bih1TbAXYo0DkF8ktnA= k8s.io/api v0.35.3/go.mod h1:9Y9tkBcFwKNq2sxwZTQh1Njh9qHl81D0As56tu42GA4=
k8s.io/apimachinery v0.35.0 h1:Z2L3IHvPVv/MJ7xRxHEtk6GoJElaAqDCCU0S6ncYok8= k8s.io/apimachinery v0.35.3 h1:MeaUwQCV3tjKP4bcwWGgZ/cp/vpsRnQzqO6J6tJyoF8=
k8s.io/apimachinery v0.35.0/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns= k8s.io/apimachinery v0.35.3/go.mod h1:jQCgFZFR1F4Ik7hvr2g84RTJSZegBc8yHgFWKn//hns=
k8s.io/client-go v0.35.0 h1:IAW0ifFbfQQwQmga0UdoH0yvdqrbwMdq9vIFEhRpxBE= k8s.io/client-go v0.35.3 h1:s1lZbpN4uI6IxeTM2cpdtrwHcSOBML1ODNTCCfsP1pg=
k8s.io/client-go v0.35.0/go.mod h1:q2E5AAyqcbeLGPdoRB+Nxe3KYTfPce1Dnu1myQdqz9o= k8s.io/client-go v0.35.3/go.mod h1:RzoXkc0mzpWIDvBrRnD+VlfXP+lRzqQjCmKtiwZ8Q9c=
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 h1:Y3gxNAuB0OBLImH611+UDZcmKS3g6CthxToOb37KgwE= k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 h1:Y3gxNAuB0OBLImH611+UDZcmKS3g6CthxToOb37KgwE=