Update docs
This commit is contained in:
parent
76b2e8c65a
commit
c5703a6829
|
|
@ -9,7 +9,7 @@ Visit [website](https://jenkinsci.github.io/kubernetes-operator/) for the full d
|
|||
|
||||

|
||||
|
||||
## What's Jenkins Operator?
|
||||
## What's the 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.
|
||||
|
|
@ -22,7 +22,7 @@ Out of the box it provides:
|
|||
|
||||
## 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.
|
||||
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:
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -86,7 +86,7 @@
|
|||
<div class="container text-center td-arrow-down">
|
||||
<span class="h4 mb-0">
|
||||
<div style="font-size: 110%;" class="col-12">
|
||||
jenkins-operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes. <br />It was built with immutability and declarative configuration as code in mind.
|
||||
Jenkins Operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes. <br />It was built with immutability and declarative configuration as code in mind.
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
<link rel="icon" type="image/png" href="/kubernetes-operator/favicons/android-192x192.png"sizes="192x192">
|
||||
|
||||
<title>Configure backup and restore | Jenkins Operator</title><meta property="og:title" content="Configure backup and restore" />
|
||||
<meta property="og:description" content="Prevent job history loss
|
||||
<meta property="og:description" content="Prevent loss of job history
|
||||
" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:url" content="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.1.1/configure-backup-and-restore/" />
|
||||
|
|
@ -29,7 +29,7 @@
|
|||
<meta property="article:modified_time" content="2019-08-05T00:00:00+00:00"/><meta property="og:site_name" content="Jenkins Operator" />
|
||||
|
||||
<meta itemprop="name" content="Configure backup and restore">
|
||||
<meta itemprop="description" content="Prevent job history loss
|
||||
<meta itemprop="description" content="Prevent loss of job history
|
||||
">
|
||||
|
||||
|
||||
|
|
@ -42,7 +42,7 @@
|
|||
<meta itemprop="keywords" content="" />
|
||||
<meta name="twitter:card" content="summary"/>
|
||||
<meta name="twitter:title" content="Configure backup and restore"/>
|
||||
<meta name="twitter:description" content="Prevent job history loss
|
||||
<meta name="twitter:description" content="Prevent loss of job history
|
||||
"/>
|
||||
|
||||
|
||||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -455,7 +455,7 @@
|
|||
|
||||
<div class="td-content">
|
||||
<h1>Configure backup and restore</h1>
|
||||
<div class="lead">Prevent job history loss</div>
|
||||
<div class="lead">Prevent loss of job history</div>
|
||||
|
||||
|
||||
<p>Backup and restore is done by container sidecar.</p>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -520,7 +520,7 @@ Once you have running Kubernetes cluster you can focus on installing <strong>jen
|
|||
<h5>
|
||||
<a href="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.1.1/configure-backup-and-restore/">Configure backup and restore</a>
|
||||
</h5>
|
||||
<p>Prevent job history loss
|
||||
<p>Prevent loss of job history
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
<link rel="icon" type="image/png" href="/kubernetes-operator/favicons/android-192x192.png"sizes="192x192">
|
||||
|
||||
<title>Configure backup and restore | Jenkins Operator</title><meta property="og:title" content="Configure backup and restore" />
|
||||
<meta property="og:description" content="Prevent job history loss
|
||||
<meta property="og:description" content="Prevent loss of job history
|
||||
" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:url" content="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.2.0/configure-backup-and-restore/" />
|
||||
|
|
@ -29,7 +29,7 @@
|
|||
<meta property="article:modified_time" content="2019-08-05T00:00:00+00:00"/><meta property="og:site_name" content="Jenkins Operator" />
|
||||
|
||||
<meta itemprop="name" content="Configure backup and restore">
|
||||
<meta itemprop="description" content="Prevent job history loss
|
||||
<meta itemprop="description" content="Prevent loss of job history
|
||||
">
|
||||
|
||||
|
||||
|
|
@ -42,7 +42,7 @@
|
|||
<meta itemprop="keywords" content="" />
|
||||
<meta name="twitter:card" content="summary"/>
|
||||
<meta name="twitter:title" content="Configure backup and restore"/>
|
||||
<meta name="twitter:description" content="Prevent job history loss
|
||||
<meta name="twitter:description" content="Prevent loss of job history
|
||||
"/>
|
||||
|
||||
|
||||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -455,7 +455,7 @@
|
|||
|
||||
<div class="td-content">
|
||||
<h1>Configure backup and restore</h1>
|
||||
<div class="lead">Prevent job history loss</div>
|
||||
<div class="lead">Prevent loss of job history</div>
|
||||
|
||||
|
||||
<p>Backup and restore is done by container sidecar.</p>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -522,7 +522,7 @@ Once you have running Kubernetes cluster you can focus on installing <strong>jen
|
|||
<h5>
|
||||
<a href="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.2.0/configure-backup-and-restore/">Configure backup and restore</a>
|
||||
</h5>
|
||||
<p>Prevent job history loss
|
||||
<p>Prevent loss of job history
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -453,7 +453,7 @@
|
|||
|
||||
<p>Install Jenkins Custom Resource Definition:</p>
|
||||
<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">kubectl apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/crds/jenkins_v1alpha2_jenkins_crd.yaml</code></pre></div>
|
||||
<h2 id="deploy-jenkins-operator">Deploy jenkins-operator</h2>
|
||||
<h2 id="deploy-jenkins-operator">Deploy Jenkins Operator</h2>
|
||||
|
||||
<p>Apply Service Account and RBAC roles:</p>
|
||||
<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">kubectl apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/all-in-one-v1alpha2.yaml</code></pre></div>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
@ -115,7 +115,7 @@
|
|||
<section class="row td-box td-box--primary position-relative td-box--gradient td-box--height-auto">
|
||||
<div class="container text-center td-arrow-down">
|
||||
<span class="h4 mb-0">
|
||||
Jenkins operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes.<br /> It was built with immutability and declarative configuration as code in mind.<br /> Here are solved problems.
|
||||
Jenkins operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes.<br /> It was built with immutability and declarative configuration as code in mind.<br />
|
||||
</span>
|
||||
</div>
|
||||
</section>
|
||||
|
|
@ -184,7 +184,7 @@
|
|||
<i class="fas fa-file-archive"></i>
|
||||
</div>
|
||||
<h4 class="h3">Backup and restore for jobs history</h4>
|
||||
<p class="mb-0"><p>Prevent job history loss</p>
|
||||
<p class="mb-0"><p>Prevent loss of job history</p>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -23,13 +23,13 @@ make go-dependencies
|
|||
|
||||
## Build and run with a minikube
|
||||
|
||||
Build and run **jenkins-operator** locally:
|
||||
Build and run **Jenkins Operator** locally:
|
||||
|
||||
```bash
|
||||
make minikube-run EXTRA_ARGS='--minikube --local'
|
||||
```
|
||||
|
||||
Once minikube and **jenkins-operator** are up and running, apply Jenkins custom resource:
|
||||
Once minikube and **Jenkins Operator** are up and running, apply Jenkins custom resource:
|
||||
|
||||
```bash
|
||||
kubectl apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml
|
||||
|
|
@ -45,7 +45,7 @@ You can also run the controller locally and make it listen to a remote Kubernete
|
|||
make run NAMESPACE=default KUBECTL_CONTEXT=remote-k8s EXTRA_ARGS='--kubeconfig ~/.kube/config'
|
||||
```
|
||||
|
||||
Once minikube and **jenkins-operator** are up and running, apply Jenkins custom resource:
|
||||
Once minikube and **Jenkins Operator** are up and running, apply Jenkins custom resource:
|
||||
|
||||
```bash
|
||||
kubectl --context remote-k8s --namespace default apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml
|
||||
|
|
@ -90,7 +90,7 @@ Build Docker image inside provided Linux container by:
|
|||
$ make indocker
|
||||
```
|
||||
|
||||
Build **jenkins-operator** inside container using:
|
||||
Build **Jenkins Operator** inside container using:
|
||||
|
||||
```bash
|
||||
$ make build
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# How it works
|
||||
|
||||
This document describes a high level overview how **jenkins-operator** works.
|
||||
This document describes a high level overview how **Jenkins Operator** works.
|
||||
|
||||
1. [Architecture and design](#architecture-and-design)
|
||||
2. [Operator State](#operator-state)
|
||||
|
|
@ -9,7 +9,7 @@ This document describes a high level overview how **jenkins-operator** works.
|
|||
|
||||
## Architecture and design
|
||||
|
||||
The **jenkins-operator** design incorporates the following concepts:
|
||||
The **Jenkins Operator** design incorporates the following concepts:
|
||||
- watches any changes of manifests and maintain the desired state according to deployed custom resource manifest
|
||||
- implements the main reconciliation loop which consists of two smaller reconciliation loops - base and user
|
||||
|
||||
|
|
@ -48,5 +48,5 @@ Main assumptions are:
|
|||
|
||||
## Jenkins Docker Images
|
||||
|
||||
**jenkins-operator** is fully compatible with **jenkins:lts** docker image and does not introduce any hidden changes there.
|
||||
**Jenkins Operator** is fully compatible with **jenkins:lts** docker image and does not introduce any hidden changes there.
|
||||
If needed, the docker image can easily be changed in custom resource manifest as long as it supports standard Jenkins file system structure.
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
# Installation
|
||||
|
||||
This document describes installation procedure for **jenkins-operator**.
|
||||
This document describes installation procedure for **Jenkins Operator**.
|
||||
All container images can be found at [virtuslab/jenkins-operator](https://hub.docker.com/r/virtuslab/jenkins-operator)
|
||||
|
||||
## Requirements
|
||||
|
||||
To run **jenkins-operator**, you will need:
|
||||
To run **Jenkins Operator**, you will need:
|
||||
- running Kubernetes cluster version 1.11+
|
||||
- kubectl version 1.11+
|
||||
|
||||
|
|
@ -17,7 +17,7 @@ Install Jenkins Custom Resource Definition:
|
|||
kubectl apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/crds/jenkins_v1alpha2_jenkins_crd.yaml
|
||||
```
|
||||
|
||||
## Deploy jenkins-operator
|
||||
## Deploy Jenkins Operator
|
||||
|
||||
Apply Service Account and RBAC roles:
|
||||
|
||||
|
|
@ -25,13 +25,13 @@ Apply Service Account and RBAC roles:
|
|||
kubectl apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/all-in-one-v1alpha2.yaml
|
||||
```
|
||||
|
||||
Watch **jenkins-operator** instance being created:
|
||||
Watch **Jenkins Operator** instance being created:
|
||||
|
||||
```bash
|
||||
kubectl get pods -w
|
||||
```
|
||||
|
||||
Now **jenkins-operator** should be up and running in `default` namespace.
|
||||
Now **Jenkins Operator** should be up and running in `default` namespace.
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,19 +1,19 @@
|
|||
# Jenkins Security
|
||||
|
||||
By default **jenkins-operator** performs an initial security hardening of Jenkins instance via groovy scripts to prevent any security gaps.
|
||||
By default **Jenkins Operator** performs an initial security hardening of Jenkins instance via groovy scripts to prevent any security gaps.
|
||||
|
||||
## Jenkins Access Control
|
||||
|
||||
Currently **jenkins-operator** generates a username and random password and stores them in a Kubernetes Secret.
|
||||
Currently **Jenkins Operator** generates a username and random password and stores them in a Kubernetes Secret.
|
||||
However any other authorization mechanisms are possible and can be done via groovy scripts or configuration as code plugin.
|
||||
For more information take a look at [getting-started#jenkins-customization](v0.1.1/getting-started.md#jenkins-customisation).
|
||||
|
||||
Any change to Security Realm or Authorization requires that user called `jenkins-operator` must have admin rights
|
||||
because **jenkins-operator** calls Jenkins API.
|
||||
because **Jenkins Operator** calls Jenkins API.
|
||||
|
||||
## Jenkins Hardening
|
||||
|
||||
The list below describes all the default security setting configured by the **jenkins-operator**:
|
||||
The list below describes all the default security setting configured by the **Jenkins Operator**:
|
||||
- basic settings - use `Mode.EXCLUSIVE` - Jobs must specify that they want to run on master node
|
||||
- enable CSRF - Cross Site Request Forgery Protection is enabled
|
||||
- disable usage stats - Jenkins usage stats submitting is disabled
|
||||
|
|
@ -26,7 +26,7 @@ If you would like to dig a little bit into the code, take a look [here](../pkg/c
|
|||
|
||||
## Jenkins API
|
||||
|
||||
The **jenkins-operator** generates and configures Basic Authentication token for Jenkins go client and stores it in a Kubernetes Secret.
|
||||
The **Jenkins Operator** generates and configures Basic Authentication token for Jenkins go client and stores it in a Kubernetes Secret.
|
||||
|
||||
## Kubernetes
|
||||
|
||||
|
|
@ -34,25 +34,25 @@ Kubernetes API permissions are limited by the following roles:
|
|||
- [jenkins-operator role](../deploy/role.yaml)
|
||||
- [Jenkins Master role](../pkg/controller/jenkins/configuration/base/resources/rbac.go)
|
||||
|
||||
Since **jenkins-operator** must be able to grant permission for its' deployed Jenkins masters to spawn pods (the `Jenkins Master role` above),
|
||||
Since **Jenkins Operator** must be able to grant permission for its' deployed Jenkins masters to spawn pods (the `Jenkins Master role` above),
|
||||
the operator itself requires permission to create RBAC resources (the `jenkins-operator role` above).
|
||||
Deployed this way, any subject which may create a Pod (including a Jenkins job) may
|
||||
assume the `jenkins-operator` role by using its' ServiceAccount, create RBAC rules, and thus escape its granted permissions.
|
||||
Any namespace to which the `jenkins-operator` is deployed must be considered to implicitly grant all
|
||||
possible permissions to any subject which can create a Pod in that namespace.
|
||||
|
||||
To mitigate this issue **jenkins-operator** should be deployed in one namespace and the Jenkins CR should be created in separate namespace.
|
||||
To mitigate this issue **Jenkins Operator** should be deployed in one namespace and the Jenkins CR should be created in separate namespace.
|
||||
To achieve it change watch namespace in https://github.com/jenkinsci/kubernetes-operator/blob/master/deploy/operator.yaml#L25
|
||||
|
||||
## Setup Jenkins Operator and Jenkins in separated namespaces
|
||||
|
||||
You need to create two namespaces, for example we'll call them **jenkins** for Jenkins and **jenkins-operator** for Jenkins Operator.
|
||||
You need to create two namespaces, for example we'll call them **jenkins** for Jenkins and **Jenkins Operator** for Jenkins Operator.
|
||||
```bash
|
||||
$ kubectl create ns jenkins-operator
|
||||
$ kubectl create ns jenkins
|
||||
```
|
||||
|
||||
Next, apply the RBAC manifests for **jenkins-operator** namespace
|
||||
Next, apply the RBAC manifests for **Jenkins Operator** namespace
|
||||
```bash
|
||||
$ kubectl -n jenkins-operator apply -f deploy/service_account.yaml
|
||||
$ kubectl -n jenkins-operator apply -f deploy/role_binding.yaml
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Getting Started
|
||||
|
||||
This document describes a getting started guide for **jenkins-operator** and an additional configuration.
|
||||
This document describes a getting started guide for **Jenkins Operator** and an additional configuration.
|
||||
|
||||
1. [First Steps](#first-steps)
|
||||
2. [Deploy Jenkins](#deploy-jenkins)
|
||||
|
|
@ -15,7 +15,7 @@ This document describes a getting started guide for **jenkins-operator** and an
|
|||
## First Steps
|
||||
|
||||
Prepare your Kubernetes cluster and set up access.
|
||||
Once you have running Kubernetes cluster you can focus on installing **jenkins-operator** according to the [Installation](../installation.md) guide.
|
||||
Once you have running Kubernetes cluster you can focus on installing **Jenkins Operator** according to the [Installation](../installation.md) guide.
|
||||
|
||||
## Deploy Jenkins
|
||||
|
||||
|
|
@ -213,7 +213,7 @@ spec:
|
|||
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git
|
||||
```
|
||||
|
||||
**jenkins-operator** will automatically discover and configure all seed jobs.
|
||||
**Jenkins Operator** will automatically discover and configure all seed jobs.
|
||||
|
||||
You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
|
||||
|
||||
|
|
@ -327,9 +327,9 @@ stringData:
|
|||
## Jenkins Customisation
|
||||
|
||||
Jenkins can be customized using groovy scripts or configuration as code plugin. All custom configuration is stored in
|
||||
the **jenkins-operator-user-configuration-<cr_name>** ConfigMap which is automatically created by **jenkins-operator**.
|
||||
the **jenkins-operator-user-configuration-<cr_name>** ConfigMap which is automatically created by **Jenkins Operator**.
|
||||
|
||||
**jenkins-operator** creates **jenkins-operator-user-configuration-<cr_name>** secret where user can store sensitive
|
||||
**Jenkins Operator** creates **jenkins-operator-user-configuration-<cr_name>** secret where user can store sensitive
|
||||
information used for custom configuration. If you have entry in secret named `PASSWORD` then you can use it in
|
||||
Configuration as Plugin as `adminAddress: "${PASSWORD}"`.
|
||||
|
||||
|
|
@ -402,7 +402,7 @@ spec:
|
|||
version: 0.5.1
|
||||
```
|
||||
|
||||
Then **jenkins-operator** will automatically install plugins after Jenkins master pod restart.
|
||||
Then **Jenkins Operator** will automatically install plugins after Jenkins master pod restart.
|
||||
|
||||
## Configure backup and restore
|
||||
|
||||
|
|
@ -520,7 +520,7 @@ data:
|
|||
password: <base64-encoded-new-password>
|
||||
```
|
||||
|
||||
If needed **jenkins-operator** will restart Jenkins master pod and then you can login with the new user and password
|
||||
If needed **Jenkins Operator** will restart Jenkins master pod and then you can login with the new user and password
|
||||
credentials.
|
||||
|
||||
## Override default Jenkins container command
|
||||
|
|
@ -549,7 +549,7 @@ command:
|
|||
|
||||
## Debugging
|
||||
|
||||
Turn on debug in **jenkins-operator** deployment:
|
||||
Turn on debug in **Jenkins Operator** deployment:
|
||||
|
||||
```bash
|
||||
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Getting Started
|
||||
|
||||
This document describes a getting started guide for **jenkins-operator** and an additional configuration.
|
||||
This document describes a getting started guide for **Jenkins Operator** and an additional configuration.
|
||||
|
||||
1. [First Steps](#first-steps)
|
||||
2. [Deploy Jenkins](#deploy-jenkins)
|
||||
|
|
@ -17,7 +17,7 @@ This document describes a getting started guide for **jenkins-operator** and an
|
|||
## First Steps
|
||||
|
||||
Prepare your Kubernetes cluster and set up access.
|
||||
Once you have running Kubernetes cluster you can focus on installing **jenkins-operator** according to the [Installation](../installation.md) guide.
|
||||
Once you have running Kubernetes cluster you can focus on installing **Jenkins Operator** according to the [Installation](../installation.md) guide.
|
||||
|
||||
## Deploy Jenkins
|
||||
|
||||
|
|
@ -215,7 +215,7 @@ spec:
|
|||
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git
|
||||
```
|
||||
|
||||
**jenkins-operator** will automatically discover and configure all seed jobs.
|
||||
**Jenkins Operator** will automatically discover and configure all seed jobs.
|
||||
|
||||
You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
|
||||
|
||||
|
|
@ -456,7 +456,7 @@ data:
|
|||
* *.groovy is Groovy script configuration
|
||||
* *.yaml is configuration as code
|
||||
|
||||
If you want to correct your configuration you can edit it while **jenkins-operator** is running.
|
||||
If you want to correct your configuration you can edit it while **Jenkins Operator** is running.
|
||||
Jenkins will reconcile and apply new configuration.
|
||||
|
||||
### Using secrets inside Groovy script
|
||||
|
|
@ -547,7 +547,7 @@ spec:
|
|||
version: 0.5.1
|
||||
```
|
||||
|
||||
Then **jenkins-operator** will automatically install plugins after Jenkins master pod restart.
|
||||
Then **Jenkins Operator** will automatically install plugins after Jenkins master pod restart.
|
||||
|
||||
## Configure backup and restore
|
||||
|
||||
|
|
@ -665,7 +665,7 @@ data:
|
|||
password: <base64-encoded-new-password>
|
||||
```
|
||||
|
||||
If needed **jenkins-operator** will restart Jenkins master pod and then you can login with the new user and password
|
||||
If needed **Jenkins Operator** will restart Jenkins master pod and then you can login with the new user and password
|
||||
credentials.
|
||||
|
||||
## Override default Jenkins container command
|
||||
|
|
@ -694,7 +694,7 @@ command:
|
|||
|
||||
## Debugging
|
||||
|
||||
Turn on debug in **jenkins-operator** deployment:
|
||||
Turn on debug in **Jenkins Operator** deployment:
|
||||
|
||||
```bash
|
||||
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ linkTitle = "Jenkins Kubernetes Operator"
|
|||
{{% /blocks/section %}}
|
||||
|
||||
{{% blocks/lead color="primary" %}}
|
||||
Jenkins operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes.<br /> It was built with immutability and declarative configuration as code in mind.<br /> Here are solved problems.
|
||||
Jenkins operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes.<br /> It was built with immutability and declarative configuration as code in mind.<br />
|
||||
{{% /blocks/lead %}}
|
||||
|
||||
{{< blocks/section color="dark" >}}
|
||||
|
|
@ -51,7 +51,7 @@ Improve user experience by informing what has been done
|
|||
{{% /blocks/feature %}}
|
||||
|
||||
{{% blocks/feature icon="fas fa-file-archive" title="Backup and restore for jobs history" %}}
|
||||
Prevent job history loss
|
||||
Prevent loss of job history
|
||||
{{% /blocks/feature %}}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ menu:
|
|||
|
||||
{{% blocks/lead color="primary" %}}
|
||||
<div style="font-size: 110%;" class="col-12">
|
||||
jenkins-operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes. <br />It was built with immutability and declarative configuration as code in mind.
|
||||
Jenkins Operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes. <br />It was built with immutability and declarative configuration as code in mind.
|
||||
</div>
|
||||
{{% /blocks/lead %}}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,13 +32,13 @@ make go-dependencies
|
|||
|
||||
## Build and run with a minikube
|
||||
|
||||
Build and run **jenkins-operator** locally:
|
||||
Build and run **Jenkins Operator** locally:
|
||||
|
||||
```bash
|
||||
make minikube-run EXTRA_ARGS='--minikube --local'
|
||||
```
|
||||
|
||||
Once minikube and **jenkins-operator** are up and running, apply Jenkins custom resource:
|
||||
Once minikube and **Jenkins Operator** are up and running, apply Jenkins custom resource:
|
||||
|
||||
```bash
|
||||
kubectl apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml
|
||||
|
|
@ -54,7 +54,7 @@ You can also run the controller locally and make it listen to a remote Kubernete
|
|||
make run NAMESPACE=default KUBECTL_CONTEXT=remote-k8s EXTRA_ARGS='--kubeconfig ~/.kube/config'
|
||||
```
|
||||
|
||||
Once minikube and **jenkins-operator** are up and running, apply Jenkins custom resource:
|
||||
Once minikube and **Jenkins Operator** are up and running, apply Jenkins custom resource:
|
||||
|
||||
```bash
|
||||
kubectl --context remote-k8s --namespace default apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml
|
||||
|
|
@ -99,7 +99,7 @@ Build Docker image inside provided Linux container by:
|
|||
$ make indocker
|
||||
```
|
||||
|
||||
Build **jenkins-operator** inside container using:
|
||||
Build **Jenkins Operator** inside container using:
|
||||
|
||||
|
||||
```bash
|
||||
|
|
|
|||
|
|
@ -8,10 +8,10 @@ description: >
|
|||
---
|
||||
|
||||
{{% pageinfo %}}
|
||||
This document describes a getting started guide for **jenkins-operator**
|
||||
This document describes a getting started guide for **Jenkins Operator**
|
||||
{{% /pageinfo %}}
|
||||
|
||||
## First Steps
|
||||
|
||||
Prepare your Kubernetes cluster and set up access.
|
||||
Once you have running Kubernetes cluster you can focus on installing **jenkins-operator** according to the [Installation](/docs/installation/) guide.
|
||||
Once you have running Kubernetes cluster you can focus on installing **Jenkins Operator** according to the [Installation](/docs/installation/) guide.
|
||||
|
|
|
|||
|
|
@ -8,10 +8,10 @@ description: >
|
|||
---
|
||||
|
||||
{{% pageinfo %}}
|
||||
This document describes a getting started guide for **jenkins-operator** `v0.1.1` and an additional configuration.
|
||||
This document describes a getting started guide for **Jenkins Operator** `v0.1.1` and an additional configuration.
|
||||
{{% /pageinfo %}}
|
||||
|
||||
## First Steps
|
||||
|
||||
Prepare your Kubernetes cluster and set up access.
|
||||
Once you have running Kubernetes cluster you can focus on installing **jenkins-operator** according to the [Installation](/docs/installation/) guide.
|
||||
Once you have running Kubernetes cluster you can focus on installing **Jenkins Operator** according to the [Installation](/docs/installation/) guide.
|
||||
|
|
|
|||
|
|
@ -118,7 +118,7 @@ spec:
|
|||
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git
|
||||
```
|
||||
|
||||
**jenkins-operator** will automatically discover and configure all seed jobs.
|
||||
**Jenkins Operator** will automatically discover and configure all seed jobs.
|
||||
|
||||
You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
|
||||
|
||||
|
|
@ -247,7 +247,7 @@ data:
|
|||
password: <base64-encoded-new-password>
|
||||
```
|
||||
|
||||
If needed **jenkins-operator** will restart Jenkins master pod and then you can login with the new user and password
|
||||
If needed **Jenkins Operator** will restart Jenkins master pod and then you can login with the new user and password
|
||||
credentials.
|
||||
|
||||
## Override default Jenkins container command
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ linkTitle: "Configure backup and restore"
|
|||
weight: 10
|
||||
date: 2019-08-05
|
||||
description: >
|
||||
Prevent job history loss
|
||||
Prevent loss of job history
|
||||
---
|
||||
|
||||
Backup and restore is done by container sidecar.
|
||||
|
|
|
|||
|
|
@ -8,9 +8,9 @@ description: >
|
|||
---
|
||||
|
||||
Jenkins can be customized using groovy scripts or configuration as code plugin. All custom configuration is stored in
|
||||
the **jenkins-operator-user-configuration-<cr_name>** ConfigMap which is automatically created by **jenkins-operator**.
|
||||
the **jenkins-operator-user-configuration-<cr_name>** ConfigMap which is automatically created by **Jenkins Operator**.
|
||||
|
||||
**jenkins-operator** creates **jenkins-operator-user-configuration-<cr_name>** secret where user can store sensitive
|
||||
**Jenkins Operator** creates **jenkins-operator-user-configuration-<cr_name>** secret where user can store sensitive
|
||||
information used for custom configuration. If you have entry in secret named `PASSWORD` then you can use it in
|
||||
Configuration as Plugin as `adminAddress: "${PASSWORD}"`.
|
||||
|
||||
|
|
@ -83,7 +83,7 @@ spec:
|
|||
version: 0.5.1
|
||||
```
|
||||
|
||||
Under `spec.master.basePlugins` you can find plugins for valid **jenkins-operator** work:
|
||||
Under `spec.master.basePlugins` you can find plugins for valid **Jenkins Operator** work:
|
||||
|
||||
```yaml
|
||||
apiVersion: jenkins.io/v1alpha2
|
||||
|
|
@ -113,4 +113,4 @@ spec:
|
|||
|
||||
You can change version of them.
|
||||
|
||||
Then **jenkins-operator** will automatically install plugins after Jenkins master pod restart.
|
||||
Then **Jenkins Operator** will automatically install plugins after Jenkins master pod restart.
|
||||
|
|
@ -8,7 +8,7 @@ description: >
|
|||
---
|
||||
|
||||
|
||||
Turn on debug in **jenkins-operator** deployment:
|
||||
Turn on debug in **Jenkins Operator** deployment:
|
||||
|
||||
```bash
|
||||
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml
|
||||
|
|
|
|||
|
|
@ -8,10 +8,10 @@ description: >
|
|||
---
|
||||
|
||||
{{% pageinfo %}}
|
||||
This document describes a getting started guide for **jenkins-operator** `v0.2.0` and an additional configuration.
|
||||
This document describes a getting started guide for **Jenkins Operator** `v0.2.0` and an additional configuration.
|
||||
{{% /pageinfo %}}
|
||||
|
||||
## First Steps
|
||||
|
||||
Prepare your Kubernetes cluster and set up access.
|
||||
Once you have running Kubernetes cluster you can focus on installing **jenkins-operator** according to the [Installation](/docs/installation/) guide.
|
||||
Once you have running Kubernetes cluster you can focus on installing **Jenkins Operator** according to the [Installation](/docs/installation/) guide.
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ spec:
|
|||
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git
|
||||
```
|
||||
|
||||
**jenkins-operator** will automatically discover and configure all seed jobs.
|
||||
**Jenkins Operator** will automatically discover and configure all seed jobs.
|
||||
|
||||
You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ linkTitle: "Configure backup and restore"
|
|||
weight: 10
|
||||
date: 2019-08-05
|
||||
description: >
|
||||
Prevent job history loss
|
||||
Prevent loss of job history
|
||||
---
|
||||
|
||||
Backup and restore is done by container sidecar.
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ data:
|
|||
* *.groovy is Groovy script configuration
|
||||
* *.yaml is configuration as code
|
||||
|
||||
If you want to correct your configuration you can edit it while **jenkins-operator** is running.
|
||||
If you want to correct your configuration you can edit it while **Jenkins Operator** is running.
|
||||
Jenkins will reconcile and apply new configuration.
|
||||
|
||||
### Using secrets inside Groovy script
|
||||
|
|
@ -153,7 +153,7 @@ spec:
|
|||
version: 0.5.1
|
||||
```
|
||||
|
||||
Under `spec.master.basePlugins` you can find plugins for valid **jenkins-operator** work:
|
||||
Under `spec.master.basePlugins` you can find plugins for valid **Jenkins Operator** work:
|
||||
|
||||
```yaml
|
||||
apiVersion: jenkins.io/v1alpha2
|
||||
|
|
@ -183,4 +183,4 @@ spec:
|
|||
|
||||
You can change version of them.
|
||||
|
||||
Then **jenkins-operator** will automatically install plugins after Jenkins master pod restart.
|
||||
Then **Jenkins Operator** will automatically install plugins after Jenkins master pod restart.
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ description: >
|
|||
---
|
||||
|
||||
|
||||
Turn on debug in **jenkins-operator** deployment:
|
||||
Turn on debug in **Jenkins Operator** deployment:
|
||||
|
||||
```bash
|
||||
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ Now seed jobs are not built by master executors, but by dedicated agent deployed
|
|||
### Apply Jenkins configuration via Groovy scripts instead of Jenkins jobs
|
||||
We have removed hardcoded configuration by **Jenkins** jobs.
|
||||
|
||||
In `v0.1.1` **jenkins-operator** configuration was stored in `jenkins-operator-user-configuration-<cr_name>`
|
||||
In `v0.1.1` **Jenkins Operator** configuration was stored in `jenkins-operator-user-configuration-<cr_name>`
|
||||
If you want to use `v0.2.0` or newer you must simply write refer to old ConfigMap by modifying CR, for example:
|
||||
|
||||
```yaml
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ description: >
|
|||
Jenkins Operator fundamentals
|
||||
---
|
||||
|
||||
The **jenkins-operator** design incorporates the following concepts:
|
||||
The **Jenkins Operator** design incorporates the following concepts:
|
||||
- watches any changes of manifests and maintain the desired state according to deployed custom resource manifest
|
||||
- implements the main reconciliation loop which consists of two smaller reconciliation loops - base and user
|
||||
|
||||
|
|
|
|||
|
|
@ -7,5 +7,5 @@ description: >
|
|||
Jenkins default image details
|
||||
---
|
||||
|
||||
**jenkins-operator** is fully compatible with **jenkins:lts** docker image and does not introduce any hidden changes there.
|
||||
**Jenkins Operator** is fully compatible with **jenkins:lts** docker image and does not introduce any hidden changes there.
|
||||
If needed, the docker image can easily be changed in custom resource manifest as long as it supports standard Jenkins file system structure.
|
||||
|
|
@ -13,7 +13,7 @@ This document describes installation procedure for jenkins-operator. All contain
|
|||
|
||||
## Requirements
|
||||
|
||||
To run **jenkins-operator**, you will need:
|
||||
To run **Jenkins Operator**, you will need:
|
||||
|
||||
- running Kubernetes cluster version 1.11+
|
||||
|
||||
|
|
@ -27,7 +27,7 @@ Install Jenkins Custom Resource Definition:
|
|||
kubectl apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/crds/jenkins_v1alpha2_jenkins_crd.yaml
|
||||
```
|
||||
|
||||
## Deploy jenkins-operator
|
||||
## Deploy Jenkins Operator
|
||||
|
||||
Apply Service Account and RBAC roles:
|
||||
|
||||
|
|
@ -35,10 +35,10 @@ Apply Service Account and RBAC roles:
|
|||
kubectl apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/all-in-one-v1alpha2.yaml
|
||||
```
|
||||
|
||||
Watch **jenkins-operator** instance being created:
|
||||
Watch **Jenkins Operator** instance being created:
|
||||
|
||||
```bash
|
||||
kubectl get pods -w
|
||||
```
|
||||
|
||||
Now **jenkins-operator** should be up and running in `default` namespace.
|
||||
Now **Jenkins Operator** should be up and running in `default` namespace.
|
||||
|
|
|
|||
|
|
@ -7,20 +7,20 @@ description: >
|
|||
Jenkins security and hardening out of the box
|
||||
---
|
||||
|
||||
By default **jenkins-operator** performs an initial security hardening of Jenkins instance via groovy scripts to prevent any security gaps.
|
||||
By default **Jenkins Operator** performs an initial security hardening of Jenkins instance via groovy scripts to prevent any security gaps.
|
||||
|
||||
## Jenkins Access Control
|
||||
|
||||
Currently **jenkins-operator** generates a username and random password and stores them in a Kubernetes Secret.
|
||||
Currently **Jenkins Operator** generates a username and random password and stores them in a Kubernetes Secret.
|
||||
However any other authorization mechanisms are possible and can be done via groovy scripts or configuration as code plugin.
|
||||
For more information take a look at [getting-started#jenkins-customization](v0.1.1/getting-started.md#jenkins-customisation).
|
||||
|
||||
Any change to Security Realm or Authorization requires that user called `jenkins-operator` must have admin rights
|
||||
because **jenkins-operator** calls Jenkins API.
|
||||
because **Jenkins Operator** calls Jenkins API.
|
||||
|
||||
## Jenkins Hardening
|
||||
|
||||
The list below describes all the default security setting configured by the **jenkins-operator**:
|
||||
The list below describes all the default security setting configured by the **Jenkins Operator**:
|
||||
- basic settings - use `Mode.EXCLUSIVE` - Jobs must specify that they want to run on master node
|
||||
- enable CSRF - Cross Site Request Forgery Protection is enabled
|
||||
- disable usage stats - Jenkins usage stats submitting is disabled
|
||||
|
|
@ -33,7 +33,7 @@ If you would like to dig a little bit into the code, take a look [here](../pkg/c
|
|||
|
||||
## Jenkins API
|
||||
|
||||
The **jenkins-operator** generates and configures Basic Authentication token for Jenkins go client and stores it in a Kubernetes Secret.
|
||||
The **Jenkins Operator** generates and configures Basic Authentication token for Jenkins go client and stores it in a Kubernetes Secret.
|
||||
|
||||
## Kubernetes
|
||||
|
||||
|
|
@ -41,25 +41,25 @@ Kubernetes API permissions are limited by the following roles:
|
|||
- [jenkins-operator role](../deploy/role.yaml)
|
||||
- [Jenkins Master role](../pkg/controller/jenkins/configuration/base/resources/rbac.go)
|
||||
|
||||
Since **jenkins-operator** must be able to grant permission for its' deployed Jenkins masters to spawn pods (the `Jenkins Master role` above),
|
||||
Since **Jenkins Operator** must be able to grant permission for its' deployed Jenkins masters to spawn pods (the `Jenkins Master role` above),
|
||||
the operator itself requires permission to create RBAC resources (the `jenkins-operator role` above).
|
||||
Deployed this way, any subject which may create a Pod (including a Jenkins job) may
|
||||
assume the `jenkins-operator` role by using its' ServiceAccount, create RBAC rules, and thus escape its granted permissions.
|
||||
Any namespace to which the `jenkins-operator` is deployed must be considered to implicitly grant all
|
||||
possible permissions to any subject which can create a Pod in that namespace.
|
||||
|
||||
To mitigate this issue **jenkins-operator** should be deployed in one namespace and the Jenkins CR should be created in separate namespace.
|
||||
To mitigate this issue **Jenkins Operator** should be deployed in one namespace and the Jenkins CR should be created in separate namespace.
|
||||
To achieve it change watch namespace in https://github.com/jenkinsci/kubernetes-operator/blob/master/deploy/operator.yaml#L25
|
||||
|
||||
## Setup Jenkins Operator and Jenkins in separated namespaces
|
||||
|
||||
You need to create two namespaces, for example we'll call them **jenkins** for Jenkins and **jenkins-operator** for Jenkins Operator.
|
||||
You need to create two namespaces, for example we'll call them **jenkins** for Jenkins and **Jenkins Operator** for Jenkins Operator.
|
||||
```bash
|
||||
$ kubectl create ns jenkins-operator
|
||||
$ kubectl create ns jenkins
|
||||
```
|
||||
|
||||
Next, apply the RBAC manifests for **jenkins-operator** namespace
|
||||
Next, apply the RBAC manifests for **Jenkins Operator** namespace
|
||||
```bash
|
||||
$ kubectl -n jenkins-operator apply -f deploy/service_account.yaml
|
||||
$ kubectl -n jenkins-operator apply -f deploy/role_binding.yaml
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's Jenkins Operator?</span></a>
|
||||
<a class="nav-link" href="/kubernetes-operator/about"><span>What's the Jenkins Operator?</span></a>
|
||||
</li>
|
||||
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ As well as our example site, there's a growing number of projects using Docsy fo
|
|||
|
||||
|
||||
{{% blocks/feature icon="fab fa-github" title="Contributions welcome!" url="https://github.com/google/docsy" %}}
|
||||
We do a [Pull Request](https://github.com/google/docsy/pulls) contributions workflow on **GitHub**. New users are always welcome!
|
||||
We develop with **GitHub**. A new [Pull Requests](https://github.com/jenkinsci/kubernetes-operator/pulls) are more than welcome!
|
||||
{{% /blocks/feature %}}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue