-
Bug
-
Resolution: Unresolved
-
Major
I had randomly occurring docker steps failing in my Jenkins pipeline jobs.
I instrumented the error messages to show the error code, stdout & stderr when the error is triggered.
I got the following on termination of the job:
Failed to kill container '48118b1b0a9c91345aa06c2b12a0680c13093a2a7b850e6d7fe7cd314409305c'. Error 143: '',''
On further research, "docker stop" sends a SIGTERM to the child processes, which may result in the docker image terminating with an exit code of 143 (SIGTERM). Some discussion here:
https://github.com/docker-library/tomcat/issues/57
https://github.com/neo4j/docker-neo4j/issues/30
I think that 143 should be allowed as a valid exit code.
Here is the relevant snippet invoking docker:
docker.image(dockerContainer).inside {
checkout scm
sh "cd linux && ARCH=powerpc make pseries_le_defconfig"
sh "cd linux && ARCH=powerpc make olddefconfig"
sh "cd linux && ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- make prepare"
sh "cd linux && ARCH=powerpc make headers_install"
sh "cppcheck --quiet --enable=all --xml-version=2 --std=c11 -j\$(nproc) $args \
-I linux/include -I linux/arch/powerpc/include -I linux/arch/powerpc/include/uapi \
-I linux/include/uapi -I linux/arch/powerpc/include/generated \
-D_KERNEL_ -U_ASSEMBLY_ \
$dir 2> $reportFile"
archiveArtifacts fingerprint: true, artifacts: reportFile
stash includes: reportFile, name: reportFile
cppcheckReports.push(reportFile)
}
[JENKINS-43458] Docker stop should allow 143 as a valid exit code
Description |
Original:
I had randomly occurring docker steps failing in my Jenkins pipeline jobs. I instrumented the error messages to show the error code, stdout & stderr when the error is triggered. I got the following on termination of the job: Failed to kill container '48118b1b0a9c91345aa06c2b12a0680c13093a2a7b850e6d7fe7cd314409305c'. Error 143: '','' On further research, "docker stop" sends a SIGTERM to the child processes, which may result in the docker image terminating with an exit code of 143 (SIGTERM). Sone discussion here: [https://github.com/docker-library/tomcat/issues/57] [https://github.com/neo4j/docker-neo4j/issues/30] I think that 143 should be allowed as a valid exit code. Here is the relevant snippet invoking docker: docker.image(dockerContainer).inside \{ checkout scm sh "cd linux && ARCH=powerpc make pseries_le_defconfig" sh "cd linux && ARCH=powerpc make olddefconfig" sh "cd linux && ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- make prepare" sh "cd linux && ARCH=powerpc make headers_install" sh "cppcheck --quiet --enable=all --xml-version=2 --std=c11 -j\$(nproc) $args \ -I linux/include -I linux/arch/powerpc/include -I linux/arch/powerpc/include/uapi \ -I linux/include/uapi -I linux/arch/powerpc/include/generated \ -D__KERNEL__ -U__ASSEMBLY__ \ $dir 2> $reportFile" archiveArtifacts fingerprint: true, artifacts: reportFile stash includes: reportFile, name: reportFile cppcheckReports.push(reportFile) } |
New:
I had randomly occurring docker steps failing in my Jenkins pipeline jobs. I instrumented the error messages to show the error code, stdout & stderr when the error is triggered. I got the following on termination of the job: Failed to kill container '48118b1b0a9c91345aa06c2b12a0680c13093a2a7b850e6d7fe7cd314409305c'. Error 143: '','' On further research, "docker stop" sends a SIGTERM to the child processes, which may result in the docker image terminating with an exit code of 143 (SIGTERM). Some discussion here: [https://github.com/docker-library/tomcat/issues/57] [https://github.com/neo4j/docker-neo4j/issues/30] I think that 143 should be allowed as a valid exit code. Here is the relevant snippet invoking docker: docker.image(dockerContainer).inside \{ checkout scm sh "cd linux && ARCH=powerpc make pseries_le_defconfig" sh "cd linux && ARCH=powerpc make olddefconfig" sh "cd linux && ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- make prepare" sh "cd linux && ARCH=powerpc make headers_install" sh "cppcheck --quiet --enable=all --xml-version=2 --std=c11 -j\$(nproc) $args \ -I linux/include -I linux/arch/powerpc/include -I linux/arch/powerpc/include/uapi \ -I linux/include/uapi -I linux/arch/powerpc/include/generated \ -D__KERNEL__ -U__ASSEMBLY__ \ $dir 2> $reportFile" archiveArtifacts fingerprint: true, artifacts: reportFile stash includes: reportFile, name: reportFile cppcheckReports.push(reportFile) } |
Assignee | New: Jesse Glick [ jglick ] |
Assignee | Original: Jesse Glick [ jglick ] |
Status | Original: Open [ 1 ] | New: In Progress [ 3 ] |
Status | Original: In Progress [ 3 ] | New: In Review [ 10005 ] |
Assignee | New: Alastair D'Silva [ evildeece ] |
Proposed fix here: https://github.com/jenkinsci/docker-workflow-plugin/pull/93