File tree Expand file tree Collapse file tree 3 files changed +43
-1
lines changed
modules/nextflow/src/main/groovy/nextflow
checks/workflow-oncomplete-error.nf Expand file tree Collapse file tree 3 files changed +43
-1
lines changed Original file line number Diff line number Diff line change @@ -811,8 +811,10 @@ class Session implements ISession {
811
811
// dump threads status
812
812
if ( log. isTraceEnabled() )
813
813
log. trace(SysHelper . dumpThreads())
814
- // force termination
814
+ // invoke shutdown callbacks
815
+ shutdown0()
815
816
notifyError(null )
817
+ // force termination
816
818
ansiLogObserver?. forceTermination()
817
819
executorFactory?. signalExecutors()
818
820
processesBarrier. forceTermination()
Original file line number Diff line number Diff line change
1
+ set -e
2
+
3
+ echo ''
4
+ $NXF_RUN > stdout || true
5
+
6
+ [[ `grep -c 'workflow onComplete: false' stdout` == 1 ]] || false
7
+ [[ `grep -c 'workflow onError: Not enough values!' stdout` == 1 ]] || false
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env nextflow
2
+ /*
3
+ * Copyright 2013-2024, Seqera Labs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ workflow {
19
+ channel. of(1 , 2 , 3 )
20
+ .collect()
21
+ .subscribe { values ->
22
+ if ( values. size() < 10 )
23
+ error ' Not enough values!'
24
+ }
25
+
26
+ workflow. onComplete = {
27
+ println " workflow onComplete: ${ workflow.success} "
28
+ }
29
+
30
+ workflow. onError = {
31
+ println " workflow onError: ${ workflow.errorMessage} "
32
+ }
33
+ }
You can’t perform that action at this time.
0 commit comments