Add advanced configuration for k8s plugin

This commit is contained in:
Serhii Shepel 2018-05-29 13:50:21 +03:00 committed by Nicolas De loof
parent 445275c92d
commit 4d659f4309
2 changed files with 105 additions and 0 deletions

View File

@ -23,3 +23,46 @@ jenkins:
name: kubernetes
containerCapStr: 100
```
## Advanced sample configuration
```yaml
jenkins:
location:
url: http://jenkins/
clouds:
- kubernetes:
name: "advanced-k8s-config"
serverUrl: "https://avanced-k8s-config:443"
skipTlsVerify: true
namespace: "default"
credentialsId: "advanced-k8s-credentials"
jenkinsUrl: "http://jenkins/"
connectTimeout: 0
readTimeout: 0
containerCapStr: 100
maxRequestsPerHostStr: 64
retentionTimeout: 5
templates:
- name: "k8s-slave"
namespace: "default"
label: "linux-x86_64"
nodeUsageMode: EXCLUSIVE
containers:
- name: "jnlp"
image: "jenkinsci/jnlp-slave:latest"
alwaysPullImage: true
workingDir: "/home/jenkins"
ttyEnabled: true
resourceRequestCpu: "500m"
resourceLimitCpu: "1000m"
resourceRequestMemory: "1Gi"
resourceLimitMemory: "2Gi"
volumes:
- emptyDirVolume:
inMemory: false
mountPath: "/tmp"
idleMinutes: "1"
activeDeadlineSeconds: "120"
slaveConnectTimeout: "1000"
```

View File

@ -0,0 +1,62 @@
# A Kubernetes ConfigMap providing the configuration-as-code
# default config for Kubernetes plugin and an example job
---
apiVersion: v1
kind: ConfigMap
metadata:
name: jenkins-configuration-as-code
data:
configuration-as-code.yaml: |
jenkins:
location:
url: http://jenkins/
clouds:
- kubernetes:
name: "advanced-k8s-config"
serverUrl: "https://avanced-k8s-config:443"
skipTlsVerify: true
namespace: "default"
credentialsId: "advanced-k8s-credentials"
jenkinsUrl: "http://jenkins/"
connectTimeout: 0
readTimeout: 0
containerCapStr: 100
maxRequestsPerHostStr: 64
retentionTimeout: 5
templates:
- name: "k8s-slave"
namespace: "default"
label: "linux-x86_64"
nodeUsageMode: EXCLUSIVE
containers:
- name: "jnlp"
image: "jenkinsci/jnlp-slave:latest"
alwaysPullImage: true
workingDir: "/home/jenkins"
ttyEnabled: true
resourceRequestCpu: "500m"
resourceLimitCpu: "1000m"
resourceRequestMemory: "1Gi"
resourceLimitMemory: "2Gi"
volumes:
- emptyDirVolume:
inMemory: false
mountPath: "/tmp"
idleMinutes: "1"
activeDeadlineSeconds: "120"
slaveConnectTimeout: "1000"
jobs:
- >
pipelineJob('configuration-as-code') {
definition {
cps {
sandbox()
script("""
node('linux-x86_64') {
sh "hostname"
}
""".stripIndent())
}
}
}