-
Notifications
You must be signed in to change notification settings - Fork 1
/
action.yml
85 lines (85 loc) · 3.07 KB
/
action.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
name: WDL CI
description: Test new/updated WDL tasks in a workflow repository by submitting to DNAstack Workbench
inputs:
config-file:
description: Config file
required: false
default: 'wdl-ci.config.json'
wallet-url:
description: Wallet URL
required: true
wallet-client-id:
description: Wallet Client ID
required: true
wallet-client-secret:
description: Wallet Client Secret
required: true
workbench-namespace:
description: Workbench Namespace
required: true
workbench-ewes-url:
description: Workbench EWES URL
required: true
workbench-workflow-service-url:
description: Workbench Workflow Service URL
required: true
workbench-ewes-refresh-token:
description: Workbench EWES Refresh Token
required: true
workbench-workflow-service-refresh-token:
description: Workbench Workflow Service Refresh Token
required: true
wdl-ci-custom-test-wdl-dir:
description: Directory to find custom test WDLs in
required: false
suppress-lint-errors:
description: Continue upon encountering a linting warning or error
default: false
runs:
using: 'composite'
steps:
- name: set-env
shell: bash
run: |
echo "WALLET_URL=${{ inputs.wallet-url }}" >> $GITHUB_ENV
echo "WALLET_CLIENT_ID=${{ inputs.wallet-client-id }}" >> $GITHUB_ENV
echo "WALLET_CLIENT_SECRET=${{ inputs.wallet-client-secret }}" >> $GITHUB_ENV
echo "WORKBENCH_NAMESPACE=${{ inputs.workbench-namespace }}" >> $GITHUB_ENV
echo "WORKBENCH_EWES_URL=${{ inputs.workbench-ewes-url }}" >> $GITHUB_ENV
echo "WORKBENCH_WORKFLOW_SERVICE_URL=${{ inputs.workbench-workflow-service-url }}" >> $GITHUB_ENV
echo "WORKBENCH_EWES_REFRESH_TOKEN=${{ inputs.workbench-ewes-refresh-token }}" >> $GITHUB_ENV
echo "WORKBENCH_WORKFLOW_SERVICE_REFRESH_TOKEN=${{ inputs.workbench-workflow-service-refresh-token }}" >> $GITHUB_ENV
if [[ -n "${{ inputs.wdl-ci-custom-test-wdl-dir }}" ]]; then
echo "WDL_CI_CUSTOM_TEST_WDL_DIR"=${{ inputs.wdl-ci-custom-test-wdl-dir }} >> $GITHUB_ENV
fi
- name: lint
uses: docker://dnastack/wdl-ci:v2.0.3
with:
args: lint ${{ inputs.suppress-lint-errors && '--suppress-lint-errors' || '' }}
- name: detect-changes
uses: docker://dnastack/wdl-ci:v2.0.3
with:
args: detect-changes
- name: submit
uses: docker://dnastack/wdl-ci:v2.0.3
with:
args: submit
- name: monitor
uses: docker://dnastack/wdl-ci:v2.0.3
with:
args: monitor --update-digests
# If a test fails, still update task digests for any tests that succeeded
# This allows fixing broken tests without rerunning successful runs
- name: update-config
if: always()
uses: EndBug/add-and-commit@v9
with:
add: ${{ inputs.config-file }}
message: "update wdl-ci config file after successful tests"
default_author: github_actions
fetch: false
- name: cleanup
if: always()
uses: docker://dnastack/wdl-ci:v2.0.3
with:
args: cleanup