diff --git a/workflow/main.nf b/workflow/main.nf index 93b24b0b9463baaf171de15346229847b0c15415..472e226f67ca2fdc9f625251cdbfd9f19311cc5b 100755 --- a/workflow/main.nf +++ b/workflow/main.nf @@ -99,31 +99,32 @@ process trackStart { """ } -workflow.onError{ - errorScript = """singularity run 'docker://bicf/awscli:1.1' \ - aws dynamodb update-item \ - --table-name pipeline.tracking \ - --key '{ \ - "sessionId": {"S": "${workflow.sessionId}"}, \ - "projectDir": {"S": "${workflow.projectDir}"}}' \ - --update-expression 'SET #status = :status' \ - --expression-attribute-names '{"#status": "status"}' \ - --expression-attribute-values '{":status": {"S":"error"}}' +errorScript = """singularity run 'docker://bicf/awscli:1.1' \ + aws dynamodb update-item \ + --table-name pipeline.tracking \ + --key '{ \ + "sessionId": {"S": "${workflow.sessionId}"}, \ + "projectDir": {"S": "${workflow.projectDir}"}}' \ + --update-expression 'SET #status = :status' \ + --expression-attribute-names '{"#status": "status"}' \ + --expression-attribute-values '{":status": {"S":"error"}}' """ +completeScript = """singularity run 'docker://bicf/awscli:1.1' \ + aws dynamodb update-item \ + --table-name pipeline.tracking \ + --key '{ \ + "sessionId": {"S": "${workflow.sessionId}"}, \ + "projectDir": {"S": "${workflow.projectDir}"}}' \ + --update-expression 'SET #status = :status' \ + --expression-attribute-names '{"#status": "status"}' \ + --expression-attribute-values '{":status": {"S":"complete"}}' +""" + +workflow.onError { errorResult = errorScript.execute().text } -workflow.onComplete{ - completeScript = """singularity run 'docker://bicf/awscli:1.1' \ - aws dynamodb update-item \ - --table-name pipeline.tracking \ - --key '{ \ - "sessionId": {"S": "${workflow.sessionId}"}, \ - "projectDir": {"S": "${workflow.projectDir}"}}' \ - --update-expression 'SET #status = :status' \ - --expression-attribute-names '{"#status": "status"}' \ - --expression-attribute-values '{":status": {"S":"complete"}}' - """ +workflow.onComplete { completeResult = completeScript.execute().text }