Go to file
Mateusz Korus 4aa34157c3 Merge master (#620)
* 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

* 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>

* 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>

* Helm Chart: Remove empty priorityClassName from Jenkins template (#618)

Also bump Helm Chart version to v0.5.2

* Fix bad identation in chart/index.yaml (#619)

Co-authored-by: Szymon Fugas <sz.fugas@gmail.com>
Co-authored-by: Piotr Ryba <55996264+prryb@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: prryb <prryb@users.noreply.github.com>
Co-authored-by: Sig00rd <Sig00rd@users.noreply.github.com>
Co-authored-by: Cosnita Radu Viorel <radu.cosnita@gmail.com>
Co-authored-by: Morten Birkelund <mbi@salecto.com>
Co-authored-by: Ernestas <ernetas@gmail.com>
2021-08-30 08:21:52 +02:00
.devbots Configure bot for labelling new issues as needing triage (#597) 2021-07-16 11:45:43 +02:00
.github Fix docs autogen workflow case where markdown files were deleted (#637) 2021-08-19 17:46:12 +02:00
api/v1alpha2 Added validation webhook,cert-manager,and updated Makefile. 2021-08-27 14:29:50 +02:00
assets Add Jenkins Online Meetup - Jenkins Kubernetes Operator presentation 2020-05-11 21:10:12 +02:00
backup/pvc Bump backup PVC version to v0.1.1 2021-05-06 11:17:51 +02:00
chart Merge master (#620) 2021-08-30 08:21:52 +02:00
cicd Updated guide to 0.5.0 (#501) 2021-02-02 12:26:26 +01:00
config Added validation webhook,cert-manager,and updated Makefile. 2021-08-27 14:29:50 +02:00
controllers #554 Remove Deprecated JVM opts (#569) 2021-05-20 17:22:00 +02:00
deploy Bump version to v0.6.0 2021-06-10 08:10:50 +02:00
docs Merge master (#620) 2021-08-30 08:21:52 +02:00
hack Upgrade operator-sdk to 1.3.0 without e2e tests 2021-01-19 15:47:05 +01:00
internal lint with golangci-lint 2020-05-06 16:22:52 +02:00
pkg Add GitLFS pull after checkout behaviour to SeedJob GroovyScript Template (#483) 2021-07-29 11:44:51 +02:00
test Bump version to v0.6.0 2021-06-10 08:10:50 +02:00
version lint with golangci-lint 2020-05-06 16:22:52 +02:00
webhook Added validation webhook,cert-manager,and updated Makefile. 2021-08-27 14:29:50 +02:00
website Merge master (#620) 2021-08-30 08:21:52 +02:00
.dockerignore Upgrade operator-sdk to 1.3.0 without e2e tests 2021-01-19 15:47:05 +01:00
.gitignore Bump backup PVC version to v0.1.1 2021-05-06 11:17:51 +02:00
.golangci.yml lint with golangci-lint 2020-05-06 16:22:52 +02:00
CODE_OF_CONDUCT.md Update project and repo documents (#621) 2021-08-12 10:58:54 +02:00
CONTRIBUTING.md Update project and repo documents (#621) 2021-08-12 10:58:54 +02:00
Dockerfile Fix container-runtime-build Makefile goal 2021-01-27 14:29:05 +01:00
LICENSE.md CC license 2020-11-26 15:46:49 +01:00
Makefile Added validation webhook,cert-manager,and updated Makefile. 2021-08-27 14:29:50 +02:00
PROJECT Added validation webhook,cert-manager,and updated Makefile. 2021-08-27 14:29:50 +02:00
README.md Fix broken links in README (#648) 2021-08-23 16:38:42 +02:00
ROADMAP.md Update project and repo documents (#621) 2021-08-12 10:58:54 +02:00
SECURITY.md Update Supporting Docs 2020-04-14 16:59:23 +05:30
SUPPORT.md Update Supporting Docs 2020-04-14 16:59:23 +05:30
VERSION.txt Bump version to v0.6.0 2021-06-10 08:10:50 +02:00
checkmake.ini Add checkmake config 2018-10-26 18:17:26 +02:00
config.base.env Upgrade operator-sdk to 1.3.0 without e2e tests 2021-01-19 15:47:05 +01:00
config.crc.env Fix minikube-run and crc-run makefile goals 2020-01-28 10:11:01 +01:00
config.minikube.env Update Minikube and Kubernetes versions in Minikube env config (#582) 2021-06-16 14:01:25 +02:00
config.openshift.env Adding OpenShift doc 2020-04-29 14:47:28 +02:00
gen-crd-api-config.json Updated links and versions of plugins. 2020-10-01 15:39:40 +02:00
go.mod Use ssh.ParseRawPrivateKey to validate ssh private key (#546) 2021-04-27 07:21:58 +02:00
go.sum #548 Fix clearing /tmp dir in backup script 2021-04-26 15:57:13 +02:00
main.go Added validation webhook,cert-manager,and updated Makefile. 2021-08-27 14:29:50 +02:00
variables.mk Migrate Helm Chart to OSDK v1.3.0 (#551) 2021-04-29 13:50:06 +02:00

README.md

Jenkins Operator

Version Build status Go Report Card Docker Pulls

logo

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 dedicated channel called #jenkins-operator on virtuslab-oss.slack.com. Fill out (Invite form) and come 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 Docker Hub 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.