Hello, Thank you for your reply.
It says here (https://github.com/jenkinsci/kubernetes-plugin) that pod will be deleted after the set activeDeadlineSeconds is passed or am I totally reading it wrong? - podRetention Controls the behavior of keeping slave pods. Can be 'never()', 'onFailure()', 'always()', or 'default()' - if empty will default to deleting the pod after activeDeadlineSeconds has passed. - activeDeadlineSeconds If podRetention is set to 'never()' or 'onFailure()', pod is deleted after this deadline is passed. If this is totally wrong, can you recommend a right way to retain a pod even if the job is finished using this plugin? On Friday, October 18, 2019 at 6:17:06 PM UTC+9, Carlos Sanchez wrote: > > the plugin will delete the kubernetes pod after the jenkins job is > completed > > Also I don't think activeDeadlineSeconds is what you want > activeDeadlineSeconds: Optional duration in seconds the pod may be active > on the node relative to StartTime before the system will actively try to > mark it failed and kill associated containers. Value must be a positive > integer. > > > On Fri, Oct 18, 2019 at 11:11 AM drpm <[email protected] <javascript:>> > wrote: > >> Hello, >> >> For some reason, jenkins is not honoring *activeDeadlineSeconds* >> parameter when used in pipeline script. I'm using this kubernetes plugin >> for jenkins: https://wiki.jenkins.io/display/JENKINS/Kubernetes+Plugin >> >> *Sample Pipeline Script*: >> >> >> def label = "jenkins-test-build-${UUID.randomUUID().toString()}" >> >> podTemplate(label: label, yaml: """ >> >> apiVersion: v1 >> >> kind: Pod >> >> metadata: >> >> labels: >> >> slave: jenkins-slave-testing-build >> >> spec: >> >> activeDeadlineSeconds: 3600 >> >> containers: >> >> - name: slave >> >> image: '<ecr-repo>/jenkins-slave' >> >> tty: true >> >> command: >> >> - cat >> >> nodeSelector: >> >> xyz.com/app: cibuild >> >> tolerations: >> >> - effect: NoSchedule >> >> key: xyz.com/abc.xyz.com >> >> operator: Equal >> >> value: cibuild >> >> """ >> >> ){ >> >> node (label) { >> >> withEnv(['USER=jenkins']) { >> >> container('slave') { >> >> stage("test") { >> >> sh "echo test" >> >> } >> >> } >> >> } >> >> } >> >> } >> >> >> >> I also checked the FINER logs for org.csanchez.jenkins.plugins.kubernetes >> and it appears to be getting the settings: >> >> >> Combining pods, parent: Pod(apiVersion=v1, kind=Pod, >>> metadata=ObjectMeta(annotations=null, clusterName=null, >>> creationTimestamp=null, deletionGracePeriodSeconds=null, >>> deletionTimestamp=null, finalizers=[], generateName=null, generation=null, >>> labels={slave=jenkins-slave-testing-build}, managedFields=[], name=null, >>> namespace=null, ownerReferences=[], resourceVersion=null, selfLink=null, >>> uid=null, additionalProperties={}), spec=PodSpec( >>> *activeDeadlineSeconds=3600*, affinity=null, >>> automountServiceAccountToken=null, containers=[Container(args=[], >>> command=[cat], env=[], envFrom=[], image=<ecrrepo>/jenkins-slave, >>> imagePullPolicy=null, lifecycle=null, livenessProbe=null, name=slave, >>> ports=[], readinessProbe=null, resources=null, securityContext=null, >>> stdin=null, stdinOnce=null, terminationMessagePath=null, >>> terminationMessagePolicy=null, tty=true, volumeDevices=[], >>> volumeMounts=[VolumeMount(mountPath=null, mountPropagation=null, >>> name=docker-sock, readOnly=null, subPath=null, subPathExpr=null, >>> additionalProperties={})], workingDir=null, additionalProperties={})], >>> dnsConfig=null, dnsPolicy=null, enableServiceLinks=null, hostAliases=[], >>> hostIPC=null, hostNetwork=null, hostPID=null, hostname=null, >>> imagePullSecrets=[], initContainers=[], nodeName=null, nodeSelector={ >>> xyz.com/app=cibuild}, preemptionPolicy=null, priority=null, >>> priorityClassName=null, readinessGates=[], restartPolicy=null, >>> runtimeClassName=null, schedulerName=null, securityContext=null, >>> serviceAccount=null, serviceAccountName=null, shareProcessNamespace=null, >>> subdomain=null, terminationGracePeriodSeconds=null, >>> tolerations=[Toleration(effect=NoSchedule, key=xyz.com/abc.xyz.com, >>> operator=Equal, tolerationSeconds=null, value=cibuild, >>> additionalProperties={})], volumes=[Volume(awsElasticBlockStore=null, >>> azureDisk=null, azureFile=null, cephfs=null, cinder=null, configMap=null, >>> csi=null, downwardAPI=null, emptyDir=null, fc=null, flexVolume=null, >>> flocker=null, gcePersistentDisk=null, gitRepo=null, glusterfs=null, >>> hostPath=null, iscsi=null, name=null, nfs=null, persistentVolumeClaim=null, >>> photonPersistentDisk=null, portworxVolume=null, projected=null, >>> quobyte=null, rbd=null, scaleIO=null, secret=null, storageos=null, >>> vsphereVolume=null, additionalProperties={})], >>> additionalProperties={idleMinutes=null}), status=null, >>> additionalProperties={}) >> >> >> >> but it's not working as expected since the pod is terminated right after >> the job is finished instead of waiting 3600s. >> >> Oct 18, 2019 8:58:18 AM INFO >> org.csanchez.jenkins.plugins.kubernetes.pipeline.PodTemplateStepExecution$PodTemplateCallback >> >>> finished >>> Removing pod template >>> jenkins-test-build-87928862-54e0-44c3-9be4-c68d414d4427-w9jpl from cloud >>> kubernetes >>> Oct 18, 2019 8:58:18 AM INFO >>> org.csanchez.jenkins.plugins.kubernetes.pod.retention.Reaper >>> eventReceived >>> cibuild/jenkins-test-build-87928862-54e0-44c3-9be4-c68d414d44-d2878 was >>> just deleted, so removing corresponding Jenkins agent >>> Oct 18, 2019 8:58:18 AM INFO >>> org.csanchez.jenkins.plugins.kubernetes.KubernetesSlave >>> deleteSlavePod >>> Terminated Kubernetes instance for agent >>> cibuild/jenkins-mbx-test-build-87928862-54e0-44c3-9be4-c68d414d44-d2878 >>> Oct 18, 2019 8:58:18 AM INFO >>> org.csanchez.jenkins.plugins.kubernetes.KubernetesSlave >>> _terminate >>> Disconnected computer >>> jenkins-test-build-87928862-54e0-44c3-9be4-c68d414d44-d2878 >> >> >> >> Thank you in advance for your help. >> >> - drpm >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/fd798b7c-39cf-41f4-b99b-8ebd5067dd6e%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/fd798b7c-39cf-41f4-b99b-8ebd5067dd6e%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/691690fb-e9bf-446e-a55f-8883e47cde66%40googlegroups.com.
