Merge branch '16265-security-updates' into dependabot/bundler/apps/workbench/loofah...
[arvados.git] / sdk / cwl / tests / federation / arvbox-make-federation.cwl
1 # Copyright (C) The Arvados Authors. All rights reserved.
2 #
3 # SPDX-License-Identifier: Apache-2.0
4
5 cwlVersion: v1.0
6 class: Workflow
7 $namespaces:
8   arv: "http://arvados.org/cwl#"
9   cwltool: "http://commonwl.org/cwltool#"
10 requirements:
11   ScatterFeatureRequirement: {}
12   StepInputExpressionRequirement: {}
13   cwltool:LoadListingRequirement:
14     loadListing: no_listing
15   InlineJavascriptRequirement: {}
16 inputs:
17   containers:
18     type: string[]
19     default: [fedbox1, fedbox2, fedbox3]
20   arvbox_base: Directory
21   in_acr: string?
22   insecure:
23     type: boolean
24     default: true
25   arvbox:
26     type: File
27     default:
28       class: File
29       location: ../../../../tools/arvbox/bin/arvbox
30   branch:
31     type: string
32     default: master
33   logincluster:
34     type: boolean
35     default: false
36 outputs:
37   arvados_api_token:
38     type: string
39     outputSource: setup-user/test_user_token
40   arvados_api_hosts:
41     type: string[]
42     outputSource: start/container_host
43   arvados_cluster_ids:
44     type: string[]
45     outputSource: start/cluster_id
46   superuser_tokens:
47     type: string[]
48     outputSource: start/superuser_token
49   acr:
50     type: string?
51     outputSource: in_acr
52   arvado_api_host_insecure:
53     type: boolean
54     outputSource: insecure
55   arvbox_containers:
56     type: string[]
57     outputSource: containers
58   arvbox_bin:
59     type: File
60     outputSource: arvbox
61 steps:
62   mkdir:
63     in:
64       containers: containers
65       arvbox_base: arvbox_base
66     out: [arvbox_data]
67     run: arvbox/mkdir.cwl
68   start:
69     in:
70       container_name: containers
71       arvbox_data: mkdir/arvbox_data
72       arvbox_bin: arvbox
73       branch: branch
74     out: [cluster_id, container_host, arvbox_data_out, superuser_token]
75     scatter: [container_name, arvbox_data]
76     scatterMethod: dotproduct
77     run: arvbox/start.cwl
78   fed-config:
79     in:
80       container_name: containers
81       this_cluster_id: start/cluster_id
82       cluster_ids: start/cluster_id
83       cluster_hosts: start/container_host
84       arvbox_data: start/arvbox_data_out
85       arvbox_bin: arvbox
86       logincluster: logincluster
87     out: []
88     scatter: [container_name, this_cluster_id, arvbox_data]
89     scatterMethod: dotproduct
90     run: arvbox/fed-config.cwl
91   setup-user:
92     in:
93       container_host: {source: start/container_host, valueFrom: "$(self[0])"}
94       superuser_token: {source: start/superuser_token, valueFrom: "$(self[0])"}
95     out: [test_user_uuid, test_user_token]
96     run: arvbox/setup-user.cwl