1#!/usr/bin/env cwl-runner
2### Runs an SQL Test Script, presumably generated by DBT Utility
3# Copyright (c) 2021. Harvard University
4#
5# Developed by Research Software Engineering,
6# Faculty of Arts and Sciences, Research Computing (FAS RC)
7# Author: Michael A Bouzinier
8#
9# Licensed under the Apache License, Version 2.0 (the "License");
10# you may not use this file except in compliance with the License.
11# You may obtain a copy of the License at
12#
13# http://www.apache.org/licenses/LICENSE-2.0
14#
15# Unless required by applicable law or agreed to in writing, software
16# distributed under the License is distributed on an "AS IS" BASIS,
17# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18# See the License for the specific language governing permissions and
19# limitations under the License.
20#
21
22cwlVersion: v1.2
23class: CommandLineTool
24baseCommand: [python, -m, dorieh.platform.dbt.dbt_runner]
25requirements:
26 InlineJavascriptRequirement: {}
27 NetworkAccess:
28 networkAccess: True
29
30doc: |
31 Executes a test script from a given SQL file.
32 The test is presumed to have been generated by DBT Utility
33
34
35inputs:
36 database:
37 type: File
38 doc: Path to database connection file, usually database.ini
39 inputBinding:
40 prefix: --db
41 connection_name:
42 type: string
43 doc: The name of the section in the database.ini file
44 inputBinding:
45 prefix: --connection
46 script:
47 type:
48 - File
49 - File[]
50 inputBinding:
51 prefix: --script
52 depends_on:
53 type: Any?
54 doc: a special field used to enforce dependencies and execution order
55
56
57outputs:
58 log:
59 type: File
60 outputBinding:
61 glob: "*.log"
62 errors:
63 type: stderr
64
65stderr: $("test-" + inputs.script.nameroot + ".err")