github jenkinsci/kubernetes-operator v0.9.0

3 hours ago

New in this Release

Jenkins operator 0.9.0 is here! 🎉

Thanks to everyone who contributed code and reported issues, this is the changelog since the last stable release (0.8.0):

Operators

  • Update the operator to go 1.26
  • Updated the default Jenkins image to 2.580.1 and refreshed the base plugins
  • Updated the seed-job agent to Java 21 and websocket connections
  • Added skipPlugins for custom images that already contain the required plugins (also airgapped installation)
  • Exposed container lifecycle hooks and configurable terminationGracePeriodSeconds.
  • Fixed ConfigMap watches and improved reconciliation and restart handling
  • Updated default health probes to /health, while preserving custom probe paths
  • Improved plugin-security validation using Jenkins Update Center metadata
  • Removed the operator’s explicit override of Jenkins agent protocol settings

Backup

  • Published backup images also for arm64
  • Updated the default backup image to v0.5.1, based on debian trixie
  • Improved backup creation with atomic moves and locks to prevent overlapping operations
  • Fixed duplicate backup/restore execution and backup-retention issues
  • Improved error handling and stdout/stderr logging
  • Added support for running backup scripts with arbitrary user IDs for openshift compatibility

CI / Charts

  • Improved Helm defaults, image pull policy handling, and watch-namespace configuration
  • Updated kubernetes dependencies, and Operator SDK
  • Improved Nix development tooling, integration tests, and pre-commit checks

Before upgrading: back up Jenkins data and review the updated CRD and chart values, backup temporary files use the backup volume, so ensure it has enough free space

Full list of PRs

  • fix(test): bats + chore(blog): add 0.8.1 release note by @brokenpip3 in #1033
  • build(deps): bump the actions group across 1 directory with 2 updates by @dependabot[bot] in #1038
  • Fix broken links on Jenkins API type docs by @BenjaminHerbert in #1067
  • chore: plugins and lts version october update by @brokenpip3 in #1070
  • fix(master): pass lifecycle configuration to master container by @DionJones615 in #1062
  • fix(bats-tests): lifecycle hook injection test failing by @xmbhasin in #1095
  • Update to go 1.22 and operator-sdk 1.35 (2025) by @xmbhasin in #1094
  • chore: pin github actions, update and freeze pre-commit hooks, update nix flake by @brokenpip3 in #1097
  • fix(backup): exec of backup binaries can be executed by random id (for ocp compatibility) by @brokenpip3 in #1099
  • build(deps): bump the actions group across 1 directory with 5 updates by @dependabot[bot] in #1098
  • build(deps-dev): bump the npm group across 1 directory with 3 updates by @dependabot[bot] in #1100
  • chore: bump version to 2.492.2-lts and update helm chart readme by @brokenpip3 in #1101
  • feat: add matrix tests for bats and replace the old devoptics plugin in tests by @brokenpip3 in #1102
  • chore: bump jenkins and golang.org/x/crypto by @brokenpip3 in #1104
  • chore: prepare release v0.9.0-beta1 by @brokenpip3 in #1105
  • Auto-updated Kubernetes Manifests by @github-actions[bot] in #1106
  • Release 0.9.0-beta1 Helm Chart by @github-actions[bot] in #1107
  • Auto-updated Kubernetes Manifests by @github-actions[bot] in #1108
  • Add option to skip install of plugins by @LEDfan in #1065
  • Auto-updated Kubernetes Manifests by @github-actions[bot] in #1112
  • docs: improve by @BenjaminHerbert in #1121
  • fix(backup): Add error handling and logging backup and restore scripts by @BenjaminHerbert in #1120
  • feat: automatic update of jenkins lts version and base plugins by @brokenpip3 in #1134
  • chore: update Jenkins lts version to 2.516.3 by @github-actions[bot] in #1135
  • docs: remove duplicated 'image' key by @pyatizbyantsevia in #1133
  • Removes disabling insecure protocols by @fuero in #1129
  • chore: update Jenkins lts version to 2.528.1 by @github-actions[bot] in #1137
  • chore: update Jenkins lts version to 2.528.2 by @github-actions[bot] in #1142
  • chore: update Jenkins lts version to 2.528.3 by @github-actions[bot] in #1147
  • build(deps): bump the actions group across 1 directory with 9 updates by @dependabot[bot] in #1144
  • prepare release v0.9.0 beta2 by @brokenpip3 in #1149
  • Auto-updated Kubernetes Manifests by @github-actions[bot] in #1150
  • Release 0.9.0-beta2 Helm Chart by @github-actions[bot] in #1152
  • chore: update Jenkins lts version to 2.541.1 by @github-actions[bot] in #1158
  • fix: retrieve plugin.json.gzip from reports.jenkins.io instead of ci.jenkins.io by @lemeurherve in #1163
  • chore: update Jenkins lts version to 2.541.2 by @github-actions[bot] in #1166
  • chore: update Jenkins lts version to 2.580.1 and fix seedjob jdk by @github-actions[bot] in #1191
  • Auto-updated Kubernetes Manifests by @github-actions[bot] in #1195
  • fix(controller): watch ConfigMaps instead of Secrets twice by @Mohamednourr in #1194
  • first step of go 1.26 migration by @brokenpip3 in #1196
  • update to go 1.26 part 2: update all the golang dependencies, enhance e2e speed/performance and use /health in probes by @brokenpip3 in #1197
  • build(deps): bump the golang group across 1 directory with 2 updates by @dependabot[bot] in #1198
  • build(deps): bump the actions group with 11 updates by @dependabot[bot] in #1182
  • use update center json for plugin sec validation by @brokenpip3 in #1199
  • build(deps): bump the actions group with 8 updates by @dependabot[bot] in #1201
  • remove gomod2nix and use directly buildGoModule by @brokenpip3 in #1202
  • repo cleanup by @brokenpip3 in #1203
  • fix(backup/pvc): publish backup-pvc for linux/amd64 and linux/arm64 by @PawanTheGod in #1186
  • build(deps-dev): bump the npm group across 1 directory with 3 updates by @dependabot[bot] in #1189
  • bump to 0.9.0 by @brokenpip3 in #1204
  • Release 0.9.0 Helm Chart by @github-actions[bot] in #1205

New Contributors

Full Changelog: v0.8.1...v0.9.0

Don't miss a new kubernetes-operator release

NewReleases is sending notifications on new releases.