Externalise podSecurityContext.runAsUser and
This commit is contained in:
		
							parent
							
								
									9285e294dd
								
							
						
					
					
						commit
						f17a4c5dce
					
				|  | @ -4,9 +4,14 @@ metadata: | |||
|   name: example | ||||
| spec: | ||||
|   master: | ||||
|     securityContext: | ||||
|       runAsUser: 1001 | ||||
|     containers: | ||||
|     - name: jenkins-master | ||||
|       image: jenkins/jenkins:lts | ||||
|       command: | ||||
|       - bash | ||||
|       - "/var/jenkins/scripts/init.sh" | ||||
|       imagePullPolicy: Always | ||||
|       livenessProbe: | ||||
|         failureThreshold: 12 | ||||
|  |  | |||
|  | @ -155,6 +155,14 @@ type JenkinsMaster struct { | |||
| 	// +optional
 | ||||
| 	NodeSelector map[string]string `json:"nodeSelector,omitempty"` | ||||
| 
 | ||||
| 
 | ||||
| 	// SecurityContext that applies to all the containers of the Jenkins 
 | ||||
| 	// Master. As per kubernetes specification, it can be overidden
 | ||||
| 	// for each container individually.
 | ||||
| 	// +optional
 | ||||
| 	// Defaults to: nil
 | ||||
|         SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"` | ||||
| 
 | ||||
| 	// List of containers belonging to the pod.
 | ||||
| 	// Containers cannot currently be added or removed.
 | ||||
| 	// There must be at least one container in a Pod.
 | ||||
|  |  | |||
|  | @ -202,12 +202,9 @@ func NewJenkinsMasterContainer(jenkins *v1alpha2.Jenkins) corev1.Container { | |||
| 		Name:            JenkinsMasterContainerName, | ||||
| 		Image:           jenkinsContainer.Image, | ||||
| 		ImagePullPolicy: jenkinsContainer.ImagePullPolicy, | ||||
| 		/*Command: []string{ | ||||
| 			"bash", | ||||
| 			fmt.Sprintf("%s/%s", jenkinsScriptsVolumePath, initScriptName), | ||||
| 		},*/ | ||||
| 		LivenessProbe:  jenkinsContainer.LivenessProbe, | ||||
| 		ReadinessProbe: jenkinsContainer.ReadinessProbe, | ||||
| 		Command:         jenkinsContainer.Command, | ||||
| 		LivenessProbe:   jenkinsContainer.LivenessProbe, | ||||
| 		ReadinessProbe:  jenkinsContainer.ReadinessProbe, | ||||
| 		Ports: []corev1.ContainerPort{ | ||||
| 			{ | ||||
| 				Name:          httpPortName, | ||||
|  | @ -264,7 +261,6 @@ func GetJenkinsMasterPodName(jenkins v1alpha2.Jenkins) string { | |||
| 
 | ||||
| // NewJenkinsMasterPod builds Jenkins Master Kubernetes Pod resource
 | ||||
| func NewJenkinsMasterPod(objectMeta metav1.ObjectMeta, jenkins *v1alpha2.Jenkins) *corev1.Pod { | ||||
| 	runAsUser := jenkinsUserUID | ||||
| 
 | ||||
| 	serviceAccountName := objectMeta.Name | ||||
| 	objectMeta.Annotations = jenkins.Spec.Master.Annotations | ||||
|  | @ -276,10 +272,7 @@ func NewJenkinsMasterPod(objectMeta metav1.ObjectMeta, jenkins *v1alpha2.Jenkins | |||
| 		Spec: corev1.PodSpec{ | ||||
| 			ServiceAccountName: serviceAccountName, | ||||
| 			RestartPolicy:      corev1.RestartPolicyNever, | ||||
| 			SecurityContext: &corev1.PodSecurityContext{ | ||||
| 				RunAsUser:  &runAsUser, | ||||
| 				RunAsGroup: &runAsUser, | ||||
| 			}, | ||||
| 			SecurityContext: jenkins.Spec.Master.SecurityContext, | ||||
| 			NodeSelector: jenkins.Spec.Master.NodeSelector, | ||||
| 			Containers:   newContainers(jenkins), | ||||
| 			Volumes:      append(GetJenkinsMasterPodBaseVolumes(jenkins), jenkins.Spec.Master.Volumes...), | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue