Skip to content

Releases: jenkinsci/kubernetes-operator

v0.8.1

05 Jul 17:08
3a5b7f6
Compare
Choose a tag to compare

New in this Release

Jenkins

  • Updated the base plugins and Jenkins LTS to the latest version.
  • Exposed terminationGracePeriodSeconds for the Jenkins master.

Backup

  • From version 4.1, the backup temporary directory is created in the backup PVC, so the temporary tar file is moved immediately after the tar process ends. This improves speed and reliability. Size your backup PVC accordingly. See the documentation section PVC Storage Size.
  • From version 4.1, each backup component (backup, restore, run) logs everything to stdout/stderr, improving understanding in case of issues and providing a backup and restore timeline. You can have a preview of the logs from the PR description.
  • From version 4.1, a lock file for backup and restore processes is implemented to prevent multiple backups in case of operator crash/restart. See this section of the docs.

If you do not wish to use these new features, you can use the old v0.2.6 tag.

CI / Chart

  • Cert-manager CRDs are no longer shipped by default.
  • Improved Ginkgo tests by implementing matrix testing.
  • Enhanced BATS tests to cover more scenarios.

Bug Fixes

  • Fix incorrect double restore in the reconciliation loop
  • Fixed configurationAsCode and groovyScripts arrays in the Helm chart.
  • Ensured consistent imagePullPolicy for the backup container.
  • Stopped using deprecated jnlpUrl for getting seed agents node secret.
  • Fixed the website build CI.

Thanks to all contributors who made this release possible! 🎉

Full list of PRs

  • Auto-updated Kubernetes Manifests by @github-actions in #901
  • Combine dark and regular logo in README.md by @pyatizbyantsevia in #915
  • fix(ci): update devcontainer, github actions config by @brokenpip3 in #928
  • build(deps-dev): bump the npm group in /website with 2 updates by @dependabot in #929
  • fix(tests) by @brokenpip3 in #936
  • Fix: use consistent imagePullPolicy when enable Jenkins backup by @lunarwhite in #939
  • Fix: change default value for configurationAsCode and groovyScripts by @mashchensky in #947
  • Modified ldap.md for issue #937 by @AniketNS in #951
  • Provides an Override to the WATCH_NAMESPACE env variable. by @valenca in #923
  • build(deps-dev): bump the npm group in /website with 2 updates by @dependabot in #958
  • chore: update jenkins and plugins to latest lts, update gh actions, add flake, remove minikube and use kind by @brokenpip3 in #974
  • fix: mkdir bin before link helm by @brokenpip3 in #978
  • feat: make ginkgo tests as matrix by @brokenpip3 in #979
  • build(deps-dev): bump the npm group in /website with 1 update by @dependabot in #981
  • Fix website build and 0.8.x pages, move deploy to workflow and nixify the website part by @brokenpip3 in #982
  • fix(website): base url in website build by @brokenpip3 in #984
  • feat(test): better bats tests, install from latest tag and then update from master by @brokenpip3 in #986
  • fix(test): bats test fix webhook upgrade by @brokenpip3 in #987
  • build(deps): bump the actions group with 5 updates by @dependabot in #985
  • Control cert-manager installation with a separate config value by @rkrzewski in #972
  • build(deps): bump the actions group with 5 updates by @dependabot in #1005
  • fix(backup): use atomic mv to create backup by @skillcoder in #1000
  • fix: seed job warnings, updated latest lts and plugins by @brokenpip3 in #1018
  • feat: expose jenkins master terminationGracePeriodSeconds by @DionJones615 in #1012
  • Auto-updated Kubernetes Manifests by @github-actions in #1020
  • fix(backup): find race and disable search in subdir, always test latest backup image in e2e, bump backup to 0.3.x by @skillcoder in #1011
  • chore(operator): update jenkins latest img and plugins, use latest backup in bats tests by @brokenpip3 in #1022
  • fix(backup): Duplicated backups & restores by @DionJones615 in #1021
  • feat(backup): logs everything to stdout/err, implement lock file for both backup/restore by @brokenpip3 in #1023
  • build(deps): bump the actions group across 1 directory with 2 updates by @dependabot in #1019
  • fix(operator): deprecated jnlpUrl by @brokenpip3 in #1026
  • chore: prepare 0.8.1 bug fix release by @brokenpip3 in #1028
  • Auto-updated Kubernetes Manifests by @github-actions in #1029
  • Release 0.8.1 Helm Chart by @github-actions in #1030
  • Auto-updated Kubernetes Manifests by @github-actions in #1031
  • fix(ci): release go env version by @brokenpip3 in #1032

New Contributors

Full Changelog: v0.8.0...v0.8.1

v0.8.0

13 Sep 08:16
Compare
Choose a tag to compare
v0.8.0

v0.8.0-beta.2

30 Jun 22:23
b95ccec
Compare
Choose a tag to compare

New in this Release

  • Backup with zstd: By default, the backup PVC method now uses zstd as the default compression algorithm instead of gz. This change is aimed at benefiting users with a large number of jobs to back up. The migration process is designed to be harmless. The script will restore the latest *.gz backup and then start using the new format: <backup-number>.tar.zstd in the backup persistent volume. To clean up the old .gz backups, manual intervention is required as they will not be deleted automatically. If you prefer to continue using the .gz format, you can use version 0.2.2 (quay.io/jenkins-kubernetes-operator/backup-pvc:v0.2.2).

  • Latest Plugin Installation: The new upstream Jenkins CLI now installs the latest plugins by default. However, this behavior can cause issues if the Jenkins instance frequently restarts. To address this, a new option called latestPlugin has been added. For more details, refer to issue #797. Note that when latestPlugin is set to false, you will need to manually specify fixed versions for many dependencies.

  • Devcontainer Support: Added support for devcontainer to improve the development process, particularly when working with older Golang versions and libraries.

  • Restore Before Seed Job Creation: By default, the operator now restores the backup before creating the seed jobs. This change helps avoid race conditions during the restore process.

  • Toleration Support in Helm Chart: Tolerations are now supported in the Helm chart.

Bugs Fixed (:crossed_fingers: )

Full changelog

New Contributors

v0.8.0-beta

17 Apr 22:18
f97badc
Compare
Choose a tag to compare

What's Changed

  • Update and use install-plugins.sh by @surmabck in #756
  • Add seedJobAgentImage into CRD by @bhubert in #754
  • Fix broken link for configuring seed jobs by @ck1125 in #780
  • adding seedjobagentimage to jenkins chart by @twildber in #771
  • Increase the memory limits for the kubernetes operator by @jelmer in #774
  • update image tag for virtuslab/jenkins-operator-backup-pvc by @peterbecich in #781
  • fix(operator): Attempt to fix all the major issues present atm against the newest jenkins lts version by @brokenpip3 in #784
  • chore(operator): update operator version in master by @brokenpip3 in #791
  • Remove security.md overwrite by @NotMyFault in #785
  • feat(registry): change the default registry from dockerhub to quay.io by @brokenpip3 in #799
  • chore(update): use latest jenkins lts: 2.375.3 by @brokenpip3 in #796
  • feat(backup): add backup img ci for e2e tests, docker build and push by @brokenpip3 in #795
  • fix(quay.io): start using quay.io and fix backup push by @brokenpip3 in #805
  • chore: Prepare the project for handover by @prryb in #800
  • Add tolerations for jenkis pod by @tombokombo in #807
  • Fix operator plugin check by @brokenpip3 in #806
  • chore(doc): Add the new chat references by @brokenpip3 in #809
  • chore: update to 2.387.2-lts and base plugins by @brokenpip3 in #811

New Contributors

Full Changelog: v0.7.1...v0.8.0-beta

v0.7.1

21 Jun 13:37
63e96c9
Compare
Choose a tag to compare
  • Remove cron validation (#748)
  • Allow to specify seed agent image (#718)
  • Allow configuring Seed Job SCM with github-branch-source/GitHubAppCredentials (#719)
  • Remove the validation of plugin version against a regex (#729)
  • Fix nil reference panic when using non-http readiness probe (#735)
  • Build multi-arch images (#693)
  • Fix #687 (#688)

v0.7.0

08 Dec 11:59
Compare
Choose a tag to compare

Changelog

  • Add HostAliases to schema (#656)
  • Security validator - Pulkit Sharma's GSoC project (#653)
  • Add handling of empty WATCH_NAMESPACE value of jenkins.namespace (#609)
  • Add GitLFS pull after checkout behaviour to SeedJob GroovyScript Template (#483)
  • Update Kubernetes to 1.30.0 (#579)

v0.6.0

10 Jun 08:02
Compare
Choose a tag to compare

Warning: This release isn't compatible with OpenShift and JenkinsImage crd was removed.

Changelog

  • #554 Remove Deprecated JVM opts (#569)
  • #560 Fixed envFrom not propagating to master pod (#564)
  • #552 Seed Jobs: Don't Validate "external" Credential Type (#556)
  • Migrate Helm Chart to OSDK v1.3.0 (#551)
  • Skip kube-api-access Volume Comparison (#550)
  • Use ssh.ParseRawPrivateKey to validate ssh private key (#546)
  • Add extra logs for Jenkins CR create/delete events (#536)
  • #507 Allow listing events (#514)
  • Upgrade operator-sdk to 1.3.0

Migrating from 0.5.0

Upgrading Operator-SDK caused some changes in Custom Resource Definitions. Because of that, upgrading to 0.6.0 requires removing the old CRDs and resources, then reapplying according to the guide: https://jenkinsci.github.io/kubernetes-operator/docs/installation/. For changes in Jenkins CR see the sample manifest here: https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/latest/deploy-jenkins/

v0.5.0

18 Jan 14:12
fe81e5a
Compare
Choose a tag to compare

Changelog:

  • Removed Travis (#490)
  • Tests running on github actions (#484)
  • Grand Christmas Patch (#479)
  • #473 Fix website copyright
  • Fixed targetPort value (#467)
  • Fix docs Added service description and fixed displayed tags (#449)
  • Fixed docs Added helm installation section in Installation Guide
  • Added labels and annotations to Helm Chart (#458)
  • Release 0.3.4 Helm chart (#442)
  • Bump workflow-job plugin version to 2.39
  • Merge pull request #435 from smolin/patch-1
  • Fix route name (#436)
  • Add routes resources authorization to jenkins-operator service account
  • Update GVK Filtering to not consider Kinds unused by the Operator
  • Add support in helm chart for Jenkins pod volume mounts (#420)
  • Bump backup PVC version to v0.1.0
  • Release 0.3.2 Helm chart
  • #349 Fix Helm upgrade issue with PVC
  • Check CasC version to match changes in YamlSource (#409)
  • JenkinsImage controller based on kaniko (#394)
  • Improve secret management in helm chart (#405)
  • #273 Add get-latest.sh script to the PVC backup provider
  • Minor refactor of the jenkins reconcile - Extract resources limits creation - Start to extract the reconcilier structure into a separate file (#403)
  • Change helm chart to helm 3 apiVersion (#397)
  • reorganise directories for better readability
  • Inject abstration not implementation (#391)
  • Intermediate Commit for transition from Pod to Deployment based Jenkins Controller (#379)
  • Rename caas.go to casc.go to fit the package name
  • Refactor log handling (#381)
  • Fix typo in README for Google Meet (#386)
  • Improve Helm Chart labels (#382)
  • #377 Add missing permissions in all-in-one-v1alpha2.yaml
  • Add jenkins container envs to Helm Chart (#375)
  • Update agent image used in SeedJobs (#374)
  • Add service account update verb to operator role (#373)
  • Allow to configure Jenkins labels in Helm chart (#372)
  • Lint with golangci-lint (#369)
  • Refactoring for jenkins client (#366)
  • Add Route pointing to the HTTP Service when the Route API is present (#357)
  • Move to operator-sdk v.0.17.0 (#363)
  • #273 Prevent make backup with the same number before pod deletion
  • #359 Add watch events for Jenkins (required by Kubernetes plugin)
  • #351 Reconcile CasC user configuration before groovy scripts (#356)
  • #355 Add priorityClassName
  • Add OpenShift docs (#353)
  • Improve helm chart configuration as code and groovy script section
  • Default rule policy now allows watching resources required by OpenShift (#352)
  • #263 Execute user scripts before seed jobs (#345)
  • #328 Fix 65535 string length issue
  • #344 Fix operator notifications in Helm Chart
  • Fix securityContext for Jenkins (#342)
  • Add e2e tests for the Helm Chart (#334)
  • #327 Fix create configuration config maps
  • #324 Allow set services in Helm Chart

v0.4.0

13 Apr 17:36
v0.4.0
8404b97
Compare
Choose a tag to compare

Changelog:

  • #190 Improve e2e tests for OpenShift
  • #291 Don't install configuration-as-code-support plugin by default
  • Update base plugins versions
  • #321 Allow to set priorityClassName for master pod
  • #318 Fix running Jenkins-Operator locally
  • #296 Allow specifying custom plugins location in Jenkins CR
  • Mark Master as required and omitempty fields as +optional
  • #190 Allow set quay.io/openshift/origin-jenkins with OAuth image in e2e tests
  • #303 Add cookie jar to present session cookie for Jenkins API calls
  • #264 Configure kubernetes plugin with FQDNs for Jenkins http and slave services
  • #190 Allow set quay.io/openshift/origin-jenkins image in e2e tests
  • #290 Pass script in body instead of URL parameter
  • Upgrade operator-sdk to 0.15.1
  • Add Bitbucket trigger for seed jobs
  • Don't set default security context
  • #194 Allow unset resources.limits or resources.requests
  • #199 Generalize Jenkins container command validation
  • Fix set operator version in Jenkins CR status
  • Fix signal propagation to the Jenkins master
  • #190 Allow set Jenkins API authorization strategy
  • Fix get Jenkins plugins through Jenkins API
  • #190 Fix run seed job agent on top of OpenShift
  • #200 Allow set Jenkins master service account annotations
  • #200 Allow for additional RBAC role bindings for Jenkins master
  • Change default Jenkins home path to /var/lib/jenkins
  • #201 Fix issue with plugin installation in OpenShift image
  • #190 Fix run Jenkins master on top of OpenShift
  • #190 Fix run seed job agent on top of OpenShift
  • Add printing debug messages during Jenkins master start
  • Improve logging
  • #158 Increase number of seed job agent executors

v0.3.3

30 Jan 22:11
v0.3.3
4b89360
Compare
Choose a tag to compare

Changelog:

  • #257 Propagate NodeSelector,Tolerations and ImagePullSecrets to seed job agent from Jenkins pod
  • #262 Allow configure Jenkins master pod labels