Bump version to v0.1.0
This commit is contained in:
parent
4ac661a6ef
commit
a5db6e9126
|
|
@ -1,6 +1,6 @@
|
|||
# Jenkins Operator
|
||||
|
||||
[](https://github.com/jenkinsci/kubernetes-operator/releases/tag/v0.0.12)
|
||||
[](https://github.com/jenkinsci/kubernetes-operator/releases/tag/v0.1.0)
|
||||
[](https://travis-ci.org/jenkinsci/kubernetes-operator)
|
||||
[](https://goreportcard.com/report/github.com/jenkinsci/kubernetes-operator)
|
||||
[](https://hub.docker.com/r/virtuslab/jenkins-operator/tags)
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
v0.0.12
|
||||
v0.1.0
|
||||
|
|
|
|||
|
|
@ -0,0 +1,143 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: jenkins-operator
|
||||
---
|
||||
kind: Role
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
name: jenkins-operator
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services
|
||||
- configmaps
|
||||
- secrets
|
||||
verbs:
|
||||
- get
|
||||
- create
|
||||
- update
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- deployments
|
||||
- daemonsets
|
||||
- replicasets
|
||||
- statefulsets
|
||||
verbs:
|
||||
- '*'
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- serviceaccounts
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- rbac.authorization.k8s.io
|
||||
resources:
|
||||
- roles
|
||||
- rolebindings
|
||||
verbs:
|
||||
- create
|
||||
- update
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods/portforward
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods/log
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods
|
||||
- pods/exec
|
||||
verbs:
|
||||
- "*"
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- list
|
||||
- create
|
||||
- patch
|
||||
- apiGroups:
|
||||
- apps
|
||||
resourceNames:
|
||||
- jenkins-operator
|
||||
resources:
|
||||
- deployments/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- jenkins.io
|
||||
resources:
|
||||
- '*'
|
||||
verbs:
|
||||
- '*'
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- persistentvolumeclaims
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
---
|
||||
kind: RoleBinding
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
name: jenkins-operator
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: jenkins-operator
|
||||
roleRef:
|
||||
kind: Role
|
||||
name: jenkins-operator
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: jenkins-operator
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
name: jenkins-operator
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: jenkins-operator
|
||||
spec:
|
||||
serviceAccountName: jenkins-operator
|
||||
containers:
|
||||
- name: jenkins-operator
|
||||
image: virtuslab/jenkins-operator:v0.0.12
|
||||
command:
|
||||
- jenkins-operator
|
||||
args: []
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: WATCH_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: OPERATOR_NAME
|
||||
value: "jenkins-operator"
|
||||
|
|
@ -16,7 +16,7 @@ spec:
|
|||
serviceAccountName: jenkins-operator
|
||||
containers:
|
||||
- name: jenkins-operator
|
||||
image: virtuslab/jenkins-operator:v0.0.12
|
||||
image: virtuslab/jenkins-operator:v0.1.0
|
||||
command:
|
||||
- jenkins-operator
|
||||
args: []
|
||||
|
|
|
|||
|
|
@ -0,0 +1,272 @@
|
|||
# Migration guide from v1alpha1 to v1alpha2
|
||||
|
||||
## Stop jenkins-operator pod
|
||||
|
||||
Run command:
|
||||
```bash
|
||||
$ kubectl -n <namespace> scale deployment.apps/jenkins-operator --replicas=0
|
||||
deployment.apps/jenkins-operator scaled
|
||||
```
|
||||
|
||||
Desired state:
|
||||
```bash
|
||||
$ kubectl -n <namespace> get po
|
||||
No resources found.
|
||||
```
|
||||
|
||||
## Stop Jenkins master pod
|
||||
|
||||
Run command:
|
||||
```bash
|
||||
$ kubectl -n <namespace> get po
|
||||
NAME READY STATUS RESTARTS AGE
|
||||
jenkins-operator-<cr_name> 2/2 Running 0 3m35s
|
||||
$ kubectl -n <namespace> get delete po jenkins-operator-<cr_name>
|
||||
pod "jenkins-operator-<cr_name>" deleted
|
||||
```
|
||||
|
||||
Desired state:
|
||||
```bash
|
||||
$ kubectl -n <namespace> get po
|
||||
No resources found.
|
||||
```
|
||||
|
||||
## Save Jenkins CR to jenkins.yaml file
|
||||
|
||||
Run command:
|
||||
```bash
|
||||
$ kubectl -n <namespace> get jenkins <cr_name> -o yaml > jenkins.yaml
|
||||
```
|
||||
|
||||
## Modify jenkins.yaml file
|
||||
|
||||
Old format:
|
||||
```yaml
|
||||
apiVersion: jenkins.io/v1alpha1
|
||||
kind: Jenkins
|
||||
metadata:
|
||||
name: <cr_name>
|
||||
namespace: <namespace>
|
||||
spec:
|
||||
master:
|
||||
basePlugins:
|
||||
configuration-as-code:1.17:
|
||||
- configuration-as-code-support:1.17
|
||||
git:3.10.0:
|
||||
- apache-httpcomponents-client-4-api:4.5.5-3.0
|
||||
- credentials:2.1.19
|
||||
- display-url-api:2.3.1
|
||||
- git-client:2.7.7
|
||||
- jsch:0.1.55
|
||||
- junit:1.28
|
||||
- mailer:1.23
|
||||
- matrix-project:1.14
|
||||
- scm-api:2.4.1
|
||||
- script-security:1.59
|
||||
- ssh-credentials:1.16
|
||||
- structs:1.19
|
||||
- workflow-api:2.34
|
||||
- workflow-scm-step:2.7
|
||||
- workflow-step-api:2.19
|
||||
job-dsl:1.74:
|
||||
- script-security:1.59
|
||||
- structs:1.19
|
||||
kubernetes-credentials-provider:0.12.1:
|
||||
- credentials:2.1.19
|
||||
- structs:1.19
|
||||
- variant:1.2
|
||||
kubernetes:1.15.5:
|
||||
- apache-httpcomponents-client-4-api:4.5.5-3.0
|
||||
- cloudbees-folder:6.8
|
||||
- credentials:2.1.19
|
||||
- durable-task:1.29
|
||||
- jackson2-api:2.9.9
|
||||
- kubernetes-credentials:0.4.0
|
||||
- plain-credentials:1.5
|
||||
- structs:1.19
|
||||
- variant:1.2
|
||||
- workflow-step-api:2.19
|
||||
workflow-aggregator:2.6:
|
||||
- ace-editor:1.1
|
||||
- apache-httpcomponents-client-4-api:4.5.5-3.0
|
||||
- authentication-tokens:1.3
|
||||
- branch-api:2.5.2
|
||||
- cloudbees-folder:6.8
|
||||
- credentials-binding:1.18
|
||||
- credentials:2.1.19
|
||||
- display-url-api:2.3.1
|
||||
- docker-commons:1.15
|
||||
- docker-workflow:1.18
|
||||
- durable-task:1.29
|
||||
- git-client:2.7.7
|
||||
- git-server:1.7
|
||||
- handlebars:1.1.1
|
||||
- jackson2-api:2.9.9
|
||||
- jquery-detached:1.2.1
|
||||
- jsch:0.1.55
|
||||
- junit:1.28
|
||||
- lockable-resources:2.5
|
||||
- mailer:1.23
|
||||
- matrix-project:1.14
|
||||
- momentjs:1.1.1
|
||||
- pipeline-build-step:2.9
|
||||
- pipeline-graph-analysis:1.10
|
||||
- pipeline-input-step:2.10
|
||||
- pipeline-milestone-step:1.3.1
|
||||
- pipeline-model-api:1.3.8
|
||||
- pipeline-model-declarative-agent:1.1.1
|
||||
- pipeline-model-definition:1.3.8
|
||||
- pipeline-model-extensions:1.3.8
|
||||
- pipeline-rest-api:2.11
|
||||
- pipeline-stage-step:2.3
|
||||
- pipeline-stage-tags-metadata:1.3.8
|
||||
- pipeline-stage-view:2.11
|
||||
- plain-credentials:1.5
|
||||
- scm-api:2.4.1
|
||||
- script-security:1.59
|
||||
- ssh-credentials:1.16
|
||||
- structs:1.19
|
||||
- workflow-api:2.34
|
||||
- workflow-basic-steps:2.16
|
||||
- workflow-cps-global-lib:2.13
|
||||
- workflow-cps:2.69
|
||||
- workflow-durable-task-step:2.30
|
||||
- workflow-job:2.32
|
||||
- workflow-multibranch:2.21
|
||||
- workflow-scm-step:2.7
|
||||
- workflow-step-api:2.19
|
||||
- workflow-support:3.3
|
||||
workflow-job:2.32:
|
||||
- scm-api:2.4.1
|
||||
- script-security:1.59
|
||||
- structs:1.19
|
||||
- workflow-api:2.34
|
||||
- workflow-step-api:2.19
|
||||
- workflow-support:3.3
|
||||
image: jenkins/jenkins:lts
|
||||
imagePullPolicy: Always
|
||||
livenessProbe:
|
||||
failureThreshold: 12
|
||||
httpGet:
|
||||
path: /login
|
||||
port: 8080
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 5
|
||||
plugins:
|
||||
simple-theme-plugin:0.5.1: []
|
||||
slack:2.24:
|
||||
- workflow-step-api:2.19
|
||||
- credentials:2.1.19
|
||||
- display-url-api:2.3.1
|
||||
- junit:1.28
|
||||
- plain-credentials:1.5
|
||||
- script-security:1.59
|
||||
- structs:1.19
|
||||
- token-macro:2.8
|
||||
readinessProbe:
|
||||
failureThreshold: 12
|
||||
httpGet:
|
||||
path: /login
|
||||
port: 8080
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 5
|
||||
resources:
|
||||
limits:
|
||||
cpu: 1500m
|
||||
memory: 3Gi
|
||||
requests:
|
||||
cpu: "1"
|
||||
memory: 500Mi
|
||||
```
|
||||
|
||||
New format:
|
||||
```yaml
|
||||
apiVersion: jenkins.io/v1alpha2
|
||||
kind: Jenkins
|
||||
metadata:
|
||||
name: <cr_name>
|
||||
namespace: <namespace>
|
||||
spec:
|
||||
master:
|
||||
basePlugins:
|
||||
- name: kubernetes
|
||||
version: 1.15.7
|
||||
- name: workflow-job
|
||||
version: "2.32"
|
||||
- name: workflow-aggregator
|
||||
version: "2.6"
|
||||
- name: git
|
||||
version: 3.10.0
|
||||
- name: job-dsl
|
||||
version: "1.74"
|
||||
- name: configuration-as-code
|
||||
version: "1.19"
|
||||
- name: configuration-as-code-support
|
||||
version: "1.19"
|
||||
- name: kubernetes-credentials-provider
|
||||
version: 0.12.1
|
||||
containers:
|
||||
- image: jenkins/jenkins:lts
|
||||
imagePullPolicy: Always
|
||||
livenessProbe:
|
||||
failureThreshold: 12
|
||||
httpGet:
|
||||
path: /login
|
||||
port: http
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 5
|
||||
name: jenkins-master
|
||||
readinessProbe:
|
||||
failureThreshold: 3
|
||||
httpGet:
|
||||
path: /login
|
||||
port: http
|
||||
scheme: HTTP
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 1
|
||||
resources:
|
||||
limits:
|
||||
cpu: 1500m
|
||||
memory: 3Gi
|
||||
requests:
|
||||
cpu: "1"
|
||||
memory: 500Mi
|
||||
plugins:
|
||||
- name: simple-theme-plugin
|
||||
version: 0.5.1
|
||||
- name: slack
|
||||
version: 2.24
|
||||
```
|
||||
|
||||
Change apiVersion to `apiVersion: jenkins.io/v1alpha2`
|
||||
|
||||
New plugin format without dependent plugins:
|
||||
- spec.master.basePlugins
|
||||
- spec.master.plugins
|
||||
|
||||
Move Jenkins master container properties to spec.master.containers[jenkins-master]
|
||||
- spec.master.image
|
||||
- spec.master.imagePullPolicy
|
||||
- spec.master.livenessProbe
|
||||
- spec.master.readinessProbe
|
||||
- spec.master.resources
|
||||
|
||||
## Deploy new Kubernetes manifests
|
||||
|
||||
Run commands:
|
||||
```bash
|
||||
$ kubectl -n <namespace> apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/crds/jenkins_v1alpha2_jenkins_crd.yaml
|
||||
$ kubectl -n <namespace> apply -f jenkins.yaml
|
||||
$ kubectl -n <namespace> apply -f https://raw.githubusercontent.com/jenkinsci/kubernetes-operator/master/deploy/all-in-one-v1alpha2.yaml
|
||||
```
|
||||
Loading…
Reference in New Issue