Go to file
Jakub Al-Khalili 61d5311ac2 Disabled notification feature 2019-07-31 14:52:32 +02:00
assets
backup/pvc #37 Improve backup PVC docker image user creation 2019-06-26 22:51:11 +02:00
build
cicd
cmd/manager
deploy Removed build goal from e2e tests 2019-07-09 15:00:25 +02:00
docs #54 Improve docs 2019-07-23 15:23:53 +02:00
internal Add notification library 2019-07-31 14:51:00 +02:00
pkg Disabled notification feature 2019-07-31 14:52:32 +02:00
scripts
test/e2e #54 Improve business logic 2019-07-22 16:41:00 +02:00
version
.gitignore Add Jenkins scheme doc 2019-06-19 18:00:30 +02:00
.travis.yml
Dockerfile Improved Makefile and Dockerfile 2019-07-09 11:46:26 +02:00
LICENSE
Makefile Removed build goal from e2e tests 2019-07-09 15:00:25 +02:00
README.md Bump version to v0.1.1 2019-06-29 17:13:51 +02:00
VERSION.txt Bump version to v0.1.1 2019-06-29 17:13:51 +02:00
checkmake.ini
config.env Improved config.env 2019-07-08 15:16:17 +02:00
entrypoint.sh Added docker goal to Makefile 2019-07-08 15:14:44 +02:00
gen-crd-api-config.json Add Jenkins scheme doc 2019-06-19 18:00:30 +02:00
go.mod Add notification library 2019-07-31 14:51:00 +02:00
go.sum Add notification library 2019-07-31 14:51:00 +02:00
tools.go

README.md

Jenkins Operator

Version Build Status Go Report Card Docker Pulls

logo

What's Jenkins Operator?

Jenkins operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes. It was built with immutability and declarative configuration as code in mind.

Out of the box it provides:

  • integration with Kubernetes
  • pipelines as code
  • extensibility via groovy scripts or configuration as code plugin
  • security and hardening

Problem statement and goals

The main reason why we decided to write 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:

  • volumes handling (AWS EBS volume attach/detach issue when using PVC)
  • installing plugins with incompatible versions or security vulnerabilities
  • better configuration as code
  • lack of end to end tests
  • handle graceful shutdown properly
  • security and hardening out of the box
  • orphaned jobs with no jnlp connection
  • make errors more visible for end users
  • backup and restore for jobs history

Documentation

  1. Installation
  2. Getting Started
  3. How it works
  4. Security
  5. Developer Guide
  6. Jenkins scheme

Contribution

Feel free to file issues or pull requests.

About the authors

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