Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 2 additions & 12 deletions plugins/nf-k8s/src/main/nextflow/k8s/K8sTaskHandler.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -438,7 +438,7 @@ class K8sTaskHandler extends TaskHandler implements FusionAwareTask {
task.stderr = errorFile
}
status = TaskStatus.COMPLETED
savePodLogOnError(task)
savePodLog(task)
deletePodIfSuccessful(task)
updateTimestamps(state.terminated as Map)
determineNode()
Expand All @@ -448,17 +448,7 @@ class K8sTaskHandler extends TaskHandler implements FusionAwareTask {
return false
}

protected void savePodLogOnError(TaskRun task) {
if( task.isSuccess() )
return

if( errorFile && !errorFile.empty() )
return

final session = executor.getSession()
if( session.isAborted() || session.isCancelled() || session.isTerminated() )
return

protected void savePodLog(TaskRun task) {
try {
final stream = useJobResource()
? client.jobLog(podName)
Expand Down
17 changes: 3 additions & 14 deletions plugins/nf-k8s/src/test/nextflow/k8s/K8sTaskHandlerTest.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ class K8sTaskHandlerTest extends Specification {
1 * handler.updateTimestamps(termState)
1 * handler.readExitFile() >> EXIT_STATUS
1 * handler.deletePodIfSuccessful(task) >> null
1 * handler.savePodLogOnError(task) >> null
1 * handler.savePodLog(task) >> null
handler.task.exitStatus == EXIT_STATUS
handler.task.@stdout == OUT_FILE
handler.task.@stderr == ERR_FILE
Expand Down Expand Up @@ -529,7 +529,7 @@ class K8sTaskHandlerTest extends Specification {
1 * handler.updateTimestamps(termState)
0 * handler.readExitFile()
1 * handler.deletePodIfSuccessful(task) >> null
1 * handler.savePodLogOnError(task) >> null
1 * handler.savePodLog(task) >> null
handler.task.exitStatus == 137
handler.status == TaskStatus.COMPLETED
result == true
Expand Down Expand Up @@ -803,20 +803,9 @@ class K8sTaskHandlerTest extends Specification {
def handler = Spy(new K8sTaskHandler(executor: executor, client: client, podName: POD_NAME))

when:
handler.savePodLogOnError(task)
handler.savePodLog(task)
then:
task.isSuccess() >> true
0 * client.podLog(_)

when:
handler.savePodLogOnError(task)
then:
task.isSuccess() >> false
task.getWorkDir() >> folder
executor.getSession() >> session
session.isTerminated() >> false
session.isCancelled() >> false
session.isAborted() >> false
1 * client.podLog(POD_NAME) >> POD_LOG

folder.resolve( TaskRun.CMD_LOG ).text == POD_MESSAGE
Expand Down