Merge pull request #98 from antoniaklja/master

Update docs
This commit is contained in:
Tomasz Sęk 2019-09-11 12:50:30 +02:00 committed by GitHub
commit bd45b0b277
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
66 changed files with 135 additions and 135 deletions

View File

@ -9,7 +9,7 @@ Visit [website](https://jenkinsci.github.io/kubernetes-operator/) for the full d
![logo](/assets/jenkins_gopher_wide.png) ![logo](/assets/jenkins_gopher_wide.png)
## What's Jenkins Operator? ## What's the Jenkins Operator?
Jenkins operator is a Kubernetes native operator which fully manages Jenkins on Kubernetes. 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. 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 ## 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. We want to make Jenkins more robust, suitable for dynamic and multi-tenant environments.
Some of the problems we want to solve: Some of the problems we want to solve:

View File

@ -57,7 +57,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -58,7 +58,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
@ -86,7 +86,7 @@
<div class="container text-center td-arrow-down"> <div class="container text-center td-arrow-down">
<span class="h4 mb-0"> <span class="h4 mb-0">
<div style="font-size: 110%;" class="col-12"> <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> </div>
</span> </span>
</div> </div>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -68,7 +68,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -59,7 +59,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -60,7 +60,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -60,7 +60,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -58,7 +58,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -21,7 +21,7 @@
<link rel="icon" type="image/png" href="/kubernetes-operator/favicons/android-192x192.png"sizes="192x192"> <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" /> <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:type" content="article" />
<meta property="og:url" content="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.1.1/configure-backup-and-restore/" /> <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&#43;00:00"/><meta property="og:site_name" content="Jenkins Operator" /> <meta property="article:modified_time" content="2019-08-05T00:00:00&#43;00:00"/><meta property="og:site_name" content="Jenkins Operator" />
<meta itemprop="name" content="Configure backup and restore"> <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 itemprop="keywords" content="" />
<meta name="twitter:card" content="summary"/> <meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Configure backup and restore"/> <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"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
@ -455,7 +455,7 @@
<div class="td-content"> <div class="td-content">
<h1>Configure backup and restore</h1> <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> <p>Backup and restore is done by container sidecar.</p>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <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> <h5>
<a href="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.1.1/configure-backup-and-restore/">Configure backup and restore</a> <a href="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.1.1/configure-backup-and-restore/">Configure backup and restore</a>
</h5> </h5>
<p>Prevent job history loss <p>Prevent loss of job history
</p> </p>
</div> </div>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -21,7 +21,7 @@
<link rel="icon" type="image/png" href="/kubernetes-operator/favicons/android-192x192.png"sizes="192x192"> <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" /> <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:type" content="article" />
<meta property="og:url" content="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.2.0/configure-backup-and-restore/" /> <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&#43;00:00"/><meta property="og:site_name" content="Jenkins Operator" /> <meta property="article:modified_time" content="2019-08-05T00:00:00&#43;00:00"/><meta property="og:site_name" content="Jenkins Operator" />
<meta itemprop="name" content="Configure backup and restore"> <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 itemprop="keywords" content="" />
<meta name="twitter:card" content="summary"/> <meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Configure backup and restore"/> <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"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
@ -455,7 +455,7 @@
<div class="td-content"> <div class="td-content">
<h1>Configure backup and restore</h1> <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> <p>Backup and restore is done by container sidecar.</p>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <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> <h5>
<a href="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.2.0/configure-backup-and-restore/">Configure backup and restore</a> <a href="https://jenkinsci.github.io/kubernetes-operator/docs/getting-started/v0.2.0/configure-backup-and-restore/">Configure backup and restore</a>
</h5> </h5>
<p>Prevent job history loss <p>Prevent loss of job history
</p> </p>
</div> </div>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -70,7 +70,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -60,7 +60,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>
@ -453,7 +453,7 @@
<p>Install Jenkins Custom Resource Definition:</p> <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> <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> <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> <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>

View File

@ -63,7 +63,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -59,7 +59,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <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"> <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"> <div class="container text-center td-arrow-down">
<span class="h4 mb-0"> <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> </span>
</div> </div>
</section> </section>
@ -184,7 +184,7 @@
<i class="fas fa-file-archive"></i> <i class="fas fa-file-archive"></i>
</div> </div>
<h4 class="h3">Backup and restore for jobs history</h4> <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> </p>
</div> </div>

View File

@ -64,7 +64,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -23,13 +23,13 @@ make go-dependencies
## Build and run with a minikube ## Build and run with a minikube
Build and run **jenkins-operator** locally: Build and run **Jenkins Operator** locally:
```bash ```bash
make minikube-run EXTRA_ARGS='--minikube --local' 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 ```bash
kubectl apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml 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' 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 ```bash
kubectl --context remote-k8s --namespace default apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml 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 $ make indocker
``` ```
Build **jenkins-operator** inside container using: Build **Jenkins Operator** inside container using:
```bash ```bash
$ make build $ make build

View File

@ -1,6 +1,6 @@
# How it works # 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) 1. [Architecture and design](#architecture-and-design)
2. [Operator State](#operator-state) 2. [Operator State](#operator-state)
@ -9,7 +9,7 @@ This document describes a high level overview how **jenkins-operator** works.
## Architecture and design ## 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 - 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 - 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 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. If needed, the docker image can easily be changed in custom resource manifest as long as it supports standard Jenkins file system structure.

View File

@ -1,11 +1,11 @@
# Installation # 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) All container images can be found at [virtuslab/jenkins-operator](https://hub.docker.com/r/virtuslab/jenkins-operator)
## Requirements ## Requirements
To run **jenkins-operator**, you will need: To run **Jenkins Operator**, you will need:
- running Kubernetes cluster version 1.11+ - running Kubernetes cluster version 1.11+
- kubectl 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 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: 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 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 ```bash
kubectl get pods -w 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.

View File

@ -1,19 +1,19 @@
# Jenkins Security # 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 ## 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. 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). 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 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 ## 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 - 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 - enable CSRF - Cross Site Request Forgery Protection is enabled
- disable usage stats - Jenkins usage stats submitting is disabled - 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 ## 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 ## Kubernetes
@ -34,25 +34,25 @@ Kubernetes API permissions are limited by the following roles:
- [jenkins-operator role](../deploy/role.yaml) - [jenkins-operator role](../deploy/role.yaml)
- [Jenkins Master role](../pkg/controller/jenkins/configuration/base/resources/rbac.go) - [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). 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 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. 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 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. 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 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 ## 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 ```bash
$ kubectl create ns jenkins-operator $ kubectl create ns jenkins-operator
$ kubectl create ns jenkins $ kubectl create ns jenkins
``` ```
Next, apply the RBAC manifests for **jenkins-operator** namespace Next, apply the RBAC manifests for **Jenkins Operator** namespace
```bash ```bash
$ kubectl -n jenkins-operator apply -f deploy/service_account.yaml $ kubectl -n jenkins-operator apply -f deploy/service_account.yaml
$ kubectl -n jenkins-operator apply -f deploy/role_binding.yaml $ kubectl -n jenkins-operator apply -f deploy/role_binding.yaml

View File

@ -1,6 +1,6 @@
# Getting Started # 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) 1. [First Steps](#first-steps)
2. [Deploy Jenkins](#deploy-jenkins) 2. [Deploy Jenkins](#deploy-jenkins)
@ -15,7 +15,7 @@ This document describes a getting started guide for **jenkins-operator** and an
## First Steps ## First Steps
Prepare your Kubernetes cluster and set up access. 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 ## Deploy Jenkins
@ -213,7 +213,7 @@ spec:
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git 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. You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
@ -327,9 +327,9 @@ stringData:
## Jenkins Customisation ## Jenkins Customisation
Jenkins can be customized using groovy scripts or configuration as code plugin. All custom configuration is stored in 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 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}"`. Configuration as Plugin as `adminAddress: "${PASSWORD}"`.
@ -402,7 +402,7 @@ spec:
version: 0.5.1 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 ## Configure backup and restore
@ -520,7 +520,7 @@ data:
password: <base64-encoded-new-password> 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. credentials.
## Override default Jenkins container command ## Override default Jenkins container command
@ -549,7 +549,7 @@ command:
## Debugging ## Debugging
Turn on debug in **jenkins-operator** deployment: Turn on debug in **Jenkins Operator** deployment:
```bash ```bash
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml

View File

@ -1,6 +1,6 @@
# Getting Started # 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) 1. [First Steps](#first-steps)
2. [Deploy Jenkins](#deploy-jenkins) 2. [Deploy Jenkins](#deploy-jenkins)
@ -17,7 +17,7 @@ This document describes a getting started guide for **jenkins-operator** and an
## First Steps ## First Steps
Prepare your Kubernetes cluster and set up access. 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 ## Deploy Jenkins
@ -215,7 +215,7 @@ spec:
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git 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. You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
@ -456,7 +456,7 @@ data:
* *.groovy is Groovy script configuration * *.groovy is Groovy script configuration
* *.yaml is configuration as code * *.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. Jenkins will reconcile and apply new configuration.
### Using secrets inside Groovy script ### Using secrets inside Groovy script
@ -547,7 +547,7 @@ spec:
version: 0.5.1 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 ## Configure backup and restore
@ -665,7 +665,7 @@ data:
password: <base64-encoded-new-password> 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. credentials.
## Override default Jenkins container command ## Override default Jenkins container command
@ -694,7 +694,7 @@ command:
## Debugging ## Debugging
Turn on debug in **jenkins-operator** deployment: Turn on debug in **Jenkins Operator** deployment:
```bash ```bash
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml

View File

@ -24,7 +24,7 @@ linkTitle = "Jenkins Kubernetes Operator"
{{% /blocks/section %}} {{% /blocks/section %}}
{{% blocks/lead color="primary" %}} {{% 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/lead %}}
{{< blocks/section color="dark" >}} {{< blocks/section color="dark" >}}
@ -51,7 +51,7 @@ Improve user experience by informing what has been done
{{% /blocks/feature %}} {{% /blocks/feature %}}
{{% blocks/feature icon="fas fa-file-archive" title="Backup and restore for jobs history" %}} {{% 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 %}} {{% /blocks/feature %}}

View File

@ -9,7 +9,7 @@ menu:
{{% blocks/lead color="primary" %}} {{% blocks/lead color="primary" %}}
<div style="font-size: 110%;" class="col-12"> <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> </div>
{{% /blocks/lead %}} {{% /blocks/lead %}}

View File

@ -32,13 +32,13 @@ make go-dependencies
## Build and run with a minikube ## Build and run with a minikube
Build and run **jenkins-operator** locally: Build and run **Jenkins Operator** locally:
```bash ```bash
make minikube-run EXTRA_ARGS='--minikube --local' 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 ```bash
kubectl apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml 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' 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 ```bash
kubectl --context remote-k8s --namespace default apply -f deploy/crds/jenkins_v1alpha2_jenkins_cr.yaml 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 $ make indocker
``` ```
Build **jenkins-operator** inside container using: Build **Jenkins Operator** inside container using:
```bash ```bash

View File

@ -8,10 +8,10 @@ description: >
--- ---
{{% pageinfo %}} {{% pageinfo %}}
This document describes a getting started guide for **jenkins-operator** This document describes a getting started guide for **Jenkins Operator**
{{% /pageinfo %}} {{% /pageinfo %}}
## First Steps ## First Steps
Prepare your Kubernetes cluster and set up access. 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.

View File

@ -8,10 +8,10 @@ description: >
--- ---
{{% pageinfo %}} {{% 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 %}} {{% /pageinfo %}}
## First Steps ## First Steps
Prepare your Kubernetes cluster and set up access. 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.

View File

@ -118,7 +118,7 @@ spec:
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git 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. You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.
@ -247,7 +247,7 @@ data:
password: <base64-encoded-new-password> 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. credentials.
## Override default Jenkins container command ## Override default Jenkins container command

View File

@ -4,7 +4,7 @@ linkTitle: "Configure backup and restore"
weight: 10 weight: 10
date: 2019-08-05 date: 2019-08-05
description: > description: >
Prevent job history loss Prevent loss of job history
--- ---
Backup and restore is done by container sidecar. Backup and restore is done by container sidecar.

View File

@ -8,9 +8,9 @@ description: >
--- ---
Jenkins can be customized using groovy scripts or configuration as code plugin. All custom configuration is stored in 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 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}"`. Configuration as Plugin as `adminAddress: "${PASSWORD}"`.
@ -83,7 +83,7 @@ spec:
version: 0.5.1 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 ```yaml
apiVersion: jenkins.io/v1alpha2 apiVersion: jenkins.io/v1alpha2
@ -113,4 +113,4 @@ spec:
You can change version of them. 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.

View File

@ -8,7 +8,7 @@ description: >
--- ---
Turn on debug in **jenkins-operator** deployment: Turn on debug in **Jenkins Operator** deployment:
```bash ```bash
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml

View File

@ -8,10 +8,10 @@ description: >
--- ---
{{% pageinfo %}} {{% 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 %}} {{% /pageinfo %}}
## First Steps ## First Steps
Prepare your Kubernetes cluster and set up access. 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.

View File

@ -120,7 +120,7 @@ spec:
repositoryUrl: https://github.com/jenkinsci/kubernetes-operator.git 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. You can verify if deploy keys were successfully configured in Jenkins **Credentials** tab.

View File

@ -4,7 +4,7 @@ linkTitle: "Configure backup and restore"
weight: 10 weight: 10
date: 2019-08-05 date: 2019-08-05
description: > description: >
Prevent job history loss Prevent loss of job history
--- ---
Backup and restore is done by container sidecar. Backup and restore is done by container sidecar.

View File

@ -62,7 +62,7 @@ data:
* *.groovy is Groovy script configuration * *.groovy is Groovy script configuration
* *.yaml is configuration as code * *.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. Jenkins will reconcile and apply new configuration.
### Using secrets inside Groovy script ### Using secrets inside Groovy script
@ -153,7 +153,7 @@ spec:
version: 0.5.1 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 ```yaml
apiVersion: jenkins.io/v1alpha2 apiVersion: jenkins.io/v1alpha2
@ -183,4 +183,4 @@ spec:
You can change version of them. 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.

View File

@ -8,7 +8,7 @@ description: >
--- ---
Turn on debug in **jenkins-operator** deployment: Turn on debug in **Jenkins Operator** deployment:
```bash ```bash
sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml sed -i 's|\(args:\).*|\1\ ["--debug"\]|' deploy/operator.yaml

View File

@ -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 ### Apply Jenkins configuration via Groovy scripts instead of Jenkins jobs
We have removed hardcoded configuration by **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: If you want to use `v0.2.0` or newer you must simply write refer to old ConfigMap by modifying CR, for example:
```yaml ```yaml

View File

@ -7,7 +7,7 @@ description: >
Jenkins Operator fundamentals 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 - 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 - implements the main reconciliation loop which consists of two smaller reconciliation loops - base and user

View File

@ -7,5 +7,5 @@ description: >
Jenkins default image details 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. If needed, the docker image can easily be changed in custom resource manifest as long as it supports standard Jenkins file system structure.

View File

@ -13,7 +13,7 @@ This document describes installation procedure for jenkins-operator. All contain
## Requirements ## Requirements
To run **jenkins-operator**, you will need: To run **Jenkins Operator**, you will need:
- running Kubernetes cluster version 1.11+ - 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 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: 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 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 ```bash
kubectl get pods -w 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.

View File

@ -7,20 +7,20 @@ description: >
Jenkins security and hardening out of the box 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 ## 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. 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). 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 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 ## 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 - 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 - enable CSRF - Cross Site Request Forgery Protection is enabled
- disable usage stats - Jenkins usage stats submitting is disabled - 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 ## 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 ## Kubernetes
@ -41,25 +41,25 @@ Kubernetes API permissions are limited by the following roles:
- [jenkins-operator role](../deploy/role.yaml) - [jenkins-operator role](../deploy/role.yaml)
- [Jenkins Master role](../pkg/controller/jenkins/configuration/base/resources/rbac.go) - [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). 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 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. 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 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. 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 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 ## 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 ```bash
$ kubectl create ns jenkins-operator $ kubectl create ns jenkins-operator
$ kubectl create ns jenkins $ kubectl create ns jenkins
``` ```
Next, apply the RBAC manifests for **jenkins-operator** namespace Next, apply the RBAC manifests for **Jenkins Operator** namespace
```bash ```bash
$ kubectl -n jenkins-operator apply -f deploy/service_account.yaml $ kubectl -n jenkins-operator apply -f deploy/service_account.yaml
$ kubectl -n jenkins-operator apply -f deploy/role_binding.yaml $ kubectl -n jenkins-operator apply -f deploy/role_binding.yaml

View File

@ -6,7 +6,7 @@
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar"> <div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
<ul class="navbar-nav mt-2 mt-lg-0"> <ul class="navbar-nav mt-2 mt-lg-0">
<li class="nav-item mr-4 mb-2 mb-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>
<li class="nav-item mr-4 mb-2 mb-lg-0"> <li class="nav-item mr-4 mb-2 mb-lg-0">
<a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a> <a class="nav-link" href="/kubernetes-operator/docs"><span>Documentation</span></a>

View File

@ -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" %}} {{% 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 %}} {{% /blocks/feature %}}