-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaction.yml
More file actions
121 lines (117 loc) · 4.14 KB
/
Copy pathaction.yml
File metadata and controls
121 lines (117 loc) · 4.14 KB
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
name: 'Agentic QA'
description: 'Run an Agentic QA check suite against a URL and fail the build when checks fail.'
author: 'test-io'
branding:
icon: 'check-circle'
color: 'purple'
inputs:
host:
description: 'Base URL of your Agentic QA installation, e.g. https://qa.example.com'
required: true
token:
description: 'API token. Create it under System Configuration -> API / MCP Config, then store it as a secret.'
required: true
project-id:
description: 'UUID of the project that owns the check suite.'
required: true
check-suite-id:
description: 'UUID of the check suite to run.'
required: true
url:
description: 'URL to test. Required unless environment-id is set.'
required: false
default: ''
environment-id:
description: 'Environment whose URL is used as the target. Ignored when url is set.'
required: false
default: ''
session-name:
description: 'Display name for the session. Defaults to the workflow name and short SHA.'
required: false
default: ''
workflow-type:
description: 'Which workflow to run: web, accessibility, or localization.'
required: false
default: 'web'
browser-type:
description: 'Browser engine, e.g. chrome. Defaults to the installation default.'
required: false
default: ''
viewport:
description: 'Viewport override, e.g. 1280x800.'
required: false
default: ''
use-replays:
description: 'Replay the latest recording per check instead of running fresh AI execution.'
required: false
default: 'false'
await-completion:
description: 'Wait for the session to finish. When false the action starts the run and exits.'
required: false
default: 'true'
continue-on-failure:
description: 'Report results but always exit 0.'
required: false
default: 'false'
fail-on-blocked:
description: 'Treat blocked checks as failures. Blocked usually means a technical problem, not a bug.'
required: false
default: 'true'
timeout-seconds:
description: 'How long to wait for the session to finish.'
required: false
default: '1800'
poll-interval-seconds:
description: 'Seconds between status polls.'
required: false
default: '15'
junit-path:
description: 'Write a JUnit XML report to this path. Empty disables it.'
required: false
default: ''
outputs:
session-id:
description: 'UUID of the created test session.'
value: ${{ steps.run.outputs.session-id }}
session-url:
description: 'Link to the session in the Agentic QA UI.'
value: ${{ steps.run.outputs.session-url }}
status:
description: 'Final session status: completed, failed, cancelled, or timed-out.'
value: ${{ steps.run.outputs.status }}
checks-total:
description: 'Number of check executions.'
value: ${{ steps.run.outputs.checks-total }}
checks-passed:
description: 'Number of checks that passed.'
value: ${{ steps.run.outputs.checks-passed }}
checks-failed:
description: 'Number of checks that failed.'
value: ${{ steps.run.outputs.checks-failed }}
checks-blocked:
description: 'Number of checks that were blocked.'
value: ${{ steps.run.outputs.checks-blocked }}
runs:
using: 'composite'
steps:
- id: run
shell: bash
run: ${{ github.action_path }}/scripts/run.sh
env:
AQ_HOST: ${{ inputs.host }}
AQ_TOKEN: ${{ inputs.token }}
AQ_PROJECT_ID: ${{ inputs.project-id }}
AQ_CHECK_SUITE_ID: ${{ inputs.check-suite-id }}
AQ_URL: ${{ inputs.url }}
AQ_ENVIRONMENT_ID: ${{ inputs.environment-id }}
AQ_SESSION_NAME: ${{ inputs.session-name }}
AQ_WORKFLOW_TYPE: ${{ inputs.workflow-type }}
AQ_BROWSER_TYPE: ${{ inputs.browser-type }}
AQ_VIEWPORT: ${{ inputs.viewport }}
AQ_USE_REPLAYS: ${{ inputs.use-replays }}
AQ_AWAIT_COMPLETION: ${{ inputs.await-completion }}
AQ_CONTINUE_ON_FAILURE: ${{ inputs.continue-on-failure }}
AQ_FAIL_ON_BLOCKED: ${{ inputs.fail-on-blocked }}
AQ_TIMEOUT_SECONDS: ${{ inputs.timeout-seconds }}
AQ_POLL_INTERVAL_SECONDS: ${{ inputs.poll-interval-seconds }}
AQ_JUNIT_PATH: ${{ inputs.junit-path }}