- prepare to switch from `master` to `main`
- avoid to run workflow in case is not needed
- add a way to bump the lts via make
- use latest jenkins lts 2.387.1
- add the docker labels
- update base plugins
- fix#797
- Add more tests with bats
- Update base plugin to latest version
- Temporary revert #807
- Better nightly job
* fix(seed): fix#742, workaround #698
Original fix proposal: https://github.com/jenkinsci/kubernetes-operator/issues/742#issuecomment-1304398590
* fix(install-plugin.sh): fix#758, #739
* the fix was original attempted here:
https://github.com/jenkinsci/kubernetes-operator/pull/764 but was not
working correctly due to 2-3 additional changes which needed to be
done
* removed the openshift check because the env is not mention anywhere
and also the new jenkins-plugin-cli does not a specific command for
openshift. Finally this does not make any sense in general, the only
problem in ocp will be the user id that will be mapped to a random uid
but that's another story. The command to install the plugins should
remain the same across different k8s flavours.
* fix(doc/test): fix /usr/bin/tini in any doc and validation
* fix(jenkins): remove AdminWhitelistRule to avoid jvm stack trace, see: https://www.jenkins.io/doc/book/security/controller-isolation/jep-235/#api-compatibility
* fix(seed): fix seed img built on a previous jvm, fix#761
* fix(plugin): update the base plugin to work with the newest version of
jenkins:lts
* fix(run): fix#778
* fix(backup): add a trap to remove the tmp dir if the tar fail, also fix: #770
* test(chart): update chart values for testing, will revert before merge
* fix(configmap): leftover
* fix(tests): fix seed job test
* fix(e2e)
* fix(e2e): helm
* fix(operator): update the temporary img to reflect latests changes
* Fix Helm e2e tests
* add trap in case of unwanted exit and make shellcheck happy
* chore(plugin): update git ver to 5.0.0
* fix(backup): always force delete the backup directory
* chore(operator): update the temporary img to reflect latest changes
* chore(jenkins): upgrade jenkins latest lts
* Add manual dispatch trigger for nightly build workflow, with an input parameter for optionally skipping the e2e and helm tests part of the workflow
* Bump how much memory to start minikube cluster with on e2e test workflows
* Log events from default namespace on tests failure, bump the limit of kubernetes events logged to 30
* Bump workflow-job plugin version used by default from 2.42 to 1145.v7f2433caa07f
* Tidy up k8s events logging
* Increase memory and decrease CPU in resources
* Standarize API fields
* Refactor tests
* Change image and resources for e2e tests
* Increase readability
* Fix workflow for autogenerating docs (#592)
* Use grep -c flag in check for changes step to fix case when more than 1 website file was modified
* Implemented validation logic for the webhook
- Created a single Validate() function to validate both updating and creating Jenkins CR.
- Implemented the Validate function to fetch warnings from the API and do security check if
being enabled.
- Updated the helm charts and helm-e2e target to run the helm tests.
* Configure bot for labelling new issues as needing triage (#597)
* Configure bot for managing stale issues (#598)
* Docs: explanation what is backed up and why (#599)
* Explanation what's backed up and why
* Auto-updated docs (#600)
Co-authored-by: prryb <prryb@users.noreply.github.com>
* Docs: clarification of description of get latest command in backup (#601)
* Auto-updated docs (#602)
Co-authored-by: Sig00rd <Sig00rd@users.noreply.github.com>
* Bump seedjobs agent image version to 4.9-1 (#604)
* Add GitLFS pull after checkout behaviour to SeedJob GroovyScript Template (#483)
Add GitLFS pull after checkout behaviour to support also repositories which are relying on Git LFS
Close#482
* Docs: minor fixes (#608)
* Link to project's DockerHub in README's section on nightly builds, add paragraph about nightly builds in installation docs
* Fix repositoryURL in sample seedJob configuration with SSH auth
* Slightly expand on #348
* Fix formatting in docs on Jenkins' customization, update plugin versions
* Add notes on Jenkins home Volume in Helm chart values.yaml and docs (#589)
* Auto-updated docs (#610)
Co-authored-by: Sig00rd <Sig00rd@users.noreply.github.com>
* Reimplemented the validation logic with caching the security warnings
- Reimplemented the validator interface
- Updated manifests to allocate more resources
* Add an issue template for documentation (#613)
* Docs: add info on restricted volumeMounts other than jenkins-home(#612)
* Update note in installation docs
* Update Helm chart default values.yaml
* Update schema
* Auto-updated docs (#616)
Co-authored-by: Sig00rd <Sig00rd@users.noreply.github.com>
* Auto-updated docs (#617)
Co-authored-by: Sig00rd <Sig00rd@users.noreply.github.com>
* Updated Validation logic
- Defined a security manager struct to cache all the plugin data
- Added flag to make validating security warnings optional while deploying the operator
* Helm Chart: Remove empty priorityClassName from Jenkins template (#618)
Also bump Helm Chart version to v0.5.2
* Added unit test cases for webhook
* Updated Helm Charts
- Optimized the charts
- Made the webhook optional
- Added cert manager as dependency to be installed while running webhook
* Updated unit tests, helm charts and validation logic
* Completed helm e2e tests and updated helm charts
- Completed helm tests for various scenarios
- Disabled startupapi check for cert manager webhook, defined a secret and updated templates
- Made the webhook completely optional
* Code optimization and cleanup
* Modified helm tests
* code cleanup and optimization
Fixed helm not creating role permissions #424
Added ability to use custom k8s cluster domain #461
Fixed propagation of JENKINS_OPTS to seed-job agent #462
Fixed updating last backup #421
Made the targetPort in Jenkins pod a fixed value.
Previously users encountered issue with changing values.
Added test comparing expected and actual targetPort values.
Allows for using the annotation jenkins.io/use-deployment
and setting the value to true makes the operator use a
Deployment instead of Pod for serving Jenkins.
This is part of a temporary feature and has to be committed to avoid bigger PRs.
As it is quite difficult to set cluster-wide objects in test and don't
break other tests, which are running in parallel, rely on pre-created
priorityClass (which is already in the cluster by default) in test.