Skip to content

Commit 99531d1

Browse files
committed
fix(Jenkinsfile): use sleep infinity (no TTY) for nova-ci idle process
Build #32 reached the Build stage but nova-ci's first sh died with: process apparently never started in /home/jenkins/agent/workspace/nova-cicd@tmp/durable-d3168952 ERROR: script returned exit code -2 Pod ownership (fsGroup) was fixed in the previous commit, so this is a different failure: ttyEnabled=true + command='cat' is the well-known trigger for durable-task "process apparently never started" / exit -2. durable-task uses kubectl exec to attach a non-TTY wrapper script to a TTY-allocated container, and on this controller's plugin/runtime combo the wrapper fails to launch. Use the standard workaround: ttyEnabled: false command: 'sleep' args: 'infinity' Just dropping the TTY (keeping 'cat') was tried before on claude-broke-it and broke differently: cat exits on stdin EOF and Kubernetes terminates the sidecar during Get Token. sleep infinity is the canonical idle process for durable-task exec containers and is what the working configuration on claude-broke-it converged to. Signed-off-by: Edwin Peer <epeer@nvidia.com>
1 parent d71725b commit 99531d1

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

Jenkinsfile

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@
3737
// Without fsGroup that fails with "process apparently never started" / exit code -2 (build #31).
3838
// Only fsGroup is set at pod scope — runAs lives on the container — so PodTemplateUtils.combine()
3939
// has nothing to merge into pod securityContext and won't drop fsGroup.
40+
// - nova-ci must use ttyEnabled=false with command='sleep' args='infinity' (NOT the default
41+
// ttyEnabled=true + 'cat'). The TTY+cat pattern triggers durable-task "process apparently
42+
// never started" / exit -2 when kubectl-exec attaches a non-TTY wrapper script to a TTY-enabled
43+
// container (build #32 in nova-ci). ttyEnabled=false + 'cat' also breaks (cat exits on stdin
44+
// EOF and the sidecar terminates); sleep infinity is the canonical idle process.
4045

4146
@Library('blossom-github-lib@master')
4247
import ipp.blossom.*
@@ -106,8 +111,9 @@ spec:
106111
containerTemplate(
107112
name: 'nova-ci',
108113
image: ciImage,
109-
ttyEnabled: true,
110-
command: 'cat'
114+
ttyEnabled: false,
115+
command: 'sleep',
116+
args: 'infinity'
111117
)
112118
]
113119
) {

0 commit comments

Comments
 (0)