Go to file
Tobia De Koninck fbaffc4e83 feat(skipPlugins): add option to skip install of plugins 2024-09-27 16:49:33 +02:00
.devcontainer feat(test): better bats tests, install from latest tag and then update from master (#986) 2024-03-15 20:57:30 +01:00
.github build(deps): bump the actions group across 1 directory with 2 updates (#1038) 2024-07-25 15:48:27 +02:00
api/v1alpha2 feat(skipPlugins): add option to skip install of plugins 2024-09-27 16:49:33 +02:00
assets Combine dark and regular logo in README.md (#915) 2023-10-15 16:31:07 +02:00
backup/pvc feat(backup): logs everything to stdout/err, implement lock file for both backup/restore (#1023) 2024-06-25 23:29:35 +02:00
chart Release 0.8.1 Helm Chart (#1030) 2024-07-05 17:27:10 +02:00
cicd
config feat(skipPlugins): add option to skip install of plugins 2024-09-27 16:49:33 +02:00
controllers
deploy Auto-updated Kubernetes Manifests (#1031) 2024-07-05 17:27:50 +02:00
hack
internal
nix chore: prepare 0.8.1 bug fix release (#1028) 2024-07-04 23:38:48 +02:00
pkg feat(skipPlugins): add option to skip install of plugins 2024-09-27 16:49:33 +02:00
test fix(test): helm/bats + chore(blog): add 0.8.1 release note (#1033) 2024-07-08 08:56:23 +02:00
version
website fix(test): helm/bats + chore(blog): add 0.8.1 release note (#1033) 2024-07-08 08:56:23 +02:00
.dockerignore
.envrc chore: update jenkins and plugins to latest lts, update gh actions, add flake, remove minikube and use kind (#974) 2024-02-24 17:08:10 +01:00
.gitignore feat(test): better bats tests, install from latest tag and then update from master (#986) 2024-03-15 20:57:30 +01:00
.golangci.yml
.pre-commit-config.yaml feat: make ginkgo tests as matrix (#979) 2024-02-26 00:00:37 +01:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Dockerfile
LICENSE.md
Makefile fix(test): helm/bats + chore(blog): add 0.8.1 release note (#1033) 2024-07-08 08:56:23 +02:00
PROJECT
README.md Combine dark and regular logo in README.md (#915) 2023-10-15 16:31:07 +02:00
ROADMAP.md
SUPPORT.md
VERSION.txt chore: prepare 0.8.1 bug fix release (#1028) 2024-07-04 23:38:48 +02:00
checkmake.ini
config.base.env chore(operator): update jenkins latest img and plugins, use latest backup in bats tests (#1022) 2024-06-22 16:27:38 +02:00
config.docker-desktop.env
config.kind.env chore: update jenkins and plugins to latest lts, update gh actions, add flake, remove minikube and use kind (#974) 2024-02-24 17:08:10 +01:00
config.openshift.env
flake.lock Fix website build and 0.8.x pages, move deploy to workflow and nixify the website part (#982) 2024-03-10 17:30:01 +01:00
flake.nix Control cert-manager installation with a separate config value (#972) 2024-03-16 16:28:15 +00:00
gen-crd-api-config.json
go.mod
go.sum
kind-cluster.yaml chore: update jenkins and plugins to latest lts, update gh actions, add flake, remove minikube and use kind (#974) 2024-02-24 17:08:10 +01:00
main.go
variables.mk chore: update jenkins and plugins to latest lts, update gh actions, add flake, remove minikube and use kind (#974) 2024-02-24 17:08:10 +01:00

README.md

Jenkins Operator

Version Build status Go Report Card Gitter chat

What's the Jenkins Operator?

The Jenkins Operator is a Kubernetes Native Operator which manages operations for Jenkins on Kubernetes. It has been built with Immutability and declarative Configuration as Code in mind.

Preliminaries

Considering that this Operator is created for managing instances for Jenkins, it is important to understand what

Jenkins Pipelines use Scripts written in Groovy which aid in the CasC aspect of Jenkins.

Jenkins uses plugins like CasC to extend it's solution space by carrying out Jobs of different kinds and providing a composable infrastructure for your CI/CD.

Out of the box it provides:

Problem statement and goals

The main reason why we decided to implement the Jenkins Operator is the fact that we faced a lot of problems with standard Jenkins deployment. We want to make Jenkins more robust, suitable for dynamic and multi-tenant environments.

Some of the problems we want to solve:

Documentation

Go to our documentation website for more information.

Selected content:

  1. How it works
  2. Getting Started
  3. Security
  4. Troubleshooting
  5. Developer Guide
  6. FAQ
  7. Jenkins Custom Resource Definition Schema

Common Issues and Workarounds

Community

Main channel of communication on topics related to Jenkins Operator is Jenkins Operator Category on Jenkins Community Discourse.

Here you can ask questions about the project, discuss best practices on using it, and talk to other users of the Operator, contributors and project's maintainers.

We also have a gitter/matrix channel, come to say hi!

Snapshots between releases

We are trying our best to resolve issues quickly, but they have to wait to be released. If you can't wait for an official docker image release and acknowledge the risk, you can use our unofficial images, which are built nightly.

You can find the project's Quay.io repository here.

Look for the images with tag "{git-hash}", where {git-hash} is the hash of the master commit that interests you.

Contribution

Feel free to file issues or pull requests, but please consult CONTRIBUTING document beforehand.

Before any big pull request please consult the maintainers to ensure a common direction.

Presentations

About the authors

This project was originally developed by VirtusLab and the following CONTRIBUTORS.