2018-12-12 09:43:29 +01:00
2018-12-25 17:10:56 +01:00
2019-01-03 20:01:26 +01:00
2018-10-26 18:17:26 +02:00
2018-11-05 15:59:26 +01:00
2019-01-03 20:01:26 +01:00
2018-12-20 16:36:11 +01:00
2018-10-19 16:20:19 +02:00

jenkins-operator

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

It provides out of the box:

  • Seed Jobs and DSL Pipelines as code
  • Kubernetes plugin
  • Configuration as Code plugin
  • Secure and Hardened Jenkins instance
  • Basic Authentication

Documentation

  1. Installation
  2. Getting Started
  3. How it works
  4. Developer Guide

Contribution

Feel free to file issues or pull requests.

TODO

Common:

  • simple API for generating Kubernetes events using one common format
  • VirtusLab docker registry https://hub.docker.com/r/virtuslab/jenkins-operator
  • decorate Jenkins API client and add more functions for handling jobs and builds e.g. Ensure, CreateOrUpdate
  • documentation
  • VirtusLab flavored Jenkins theme
  • create Jenkins Jobs View for all jobs managed by the operator
  • jenkins job for executing groovy scripts

Base configuration:

  • install configuration as a code Jenkins plugin
  • handle Jenkins restart when base configuration has changed
  • install and configure Kubernetes plugin (in-progress)
  • e2e pipelines using Kubernetes plugin
  • Jenkins hardening, disable insecure options

User configuration:

  • user reconciliation loop with CR validation
  • configure seed jobs and deploy keys
  • e2e tests for seed jobs
  • configure Jenkins authorization (via configuration as a code plugin or groovy scripts)
  • backup and restore for Jenkins jobs running as standalone job (AWS, GCP, Azure)
  • trigger backup job before pod deletion using preStop k8s hooks
  • verify Jenkins configuration events
S
Description
No description provided
Readme
86 MiB
Languages
Go 82.3%
Shell 4.6%
HTML 4.5%
Makefile 4%
SCSS 3%
Other 1.6%