-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathaction.yml
More file actions
135 lines (133 loc) · 6.14 KB
/
action.yml
File metadata and controls
135 lines (133 loc) · 6.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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
name: 'Device Cloud Action'
author: 'devicecloud.dev'
description: 'Uses devicecloud.dev to execute Maestro mobile tests'
inputs:
api-key:
description: 'API key for devicecloud.dev (find this in the console UI). You can also set the DEVICE_CLOUD_API_KEY environment variable.'
required: true
api-url:
description: 'API URL for devicecloud.dev'
required: false
app-file:
description: 'App binary to run your flows against'
required: false
app-binary-id:
description: 'The ID of the app binary previously uploaded to devicecloud.dev'
required: false
additional-app-files:
description: 'Additional app binary(s) to install before execution'
required: false
additional-app-binary-ids:
description: 'The ID of the additional app binary(s) previously uploaded to devicecloud.dev to install before execution'
required: false
android-api-level:
description: '[Android only] Android API level to run your flow against <options: 29|30|31|32|33|34|35|36>'
required: false
android-device:
description: '[Android only] Android device to run your flow against <options: pixel-6|pixel-6-pro|pixel-7|pixel-7-pro|generic-tablet>'
required: false
async:
description: 'Immediately return (exit code 0) from the command without waiting for the results of the run (useful for saving CI minutes)'
required: false
device-locale:
description: 'Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. "de_DE" for Germany'
required: false
download-artifacts:
description: 'Download a zip containing the logs, screenshots and videos for each result in this run. You will debited a $0.01 egress fee for each result. Use FAILED for failures only or ALL for every result. <options: ALL|FAILED>'
required: false
env:
description: 'One or more environment variables to inject into your flows'
required: false
json-file:
description: 'Write JSON output to a file with name <run_name>_dcd.json or <upload_id>_dcd.json if no name is provided'
required: false
exclude-flows:
description: 'Sub directories to ignore when building the flow file list'
required: false
exclude-tags:
description: 'Flows which have these tags will be excluded from the run'
required: false
flows:
description: 'The path to the flow file or folder containing your flows'
required: false
google-play:
description: '[Android only] Run your flow against Google Play devices'
required: false
ignore-sha-check:
description: 'Ignore the sha hash check and upload the binary regardless of whether it already exists (not recommended)'
required: false
include-tags:
description: 'Only flows which have these tags will be included in the run'
required: false
ios-device:
description: '[iOS only] iOS device to run your flow against <options: iphone-14|iphone-14-pro|iphone-15|iphone-15-pro|iphone-16|iphone-16-plus|iphone-16-pro|iphone-16-pro-max|ipad-pro-6th-gen>'
required: false
ios-version:
description: '[iOS only] iOS version to run your flow against <options: 16|17|18|26>'
required: false
maestro-version:
description: 'Maestro version to run your flow against'
required: false
moropo-v1-api-key:
description: 'API key for Moropo v1 integration'
required: false
name:
description: 'A custom name for your upload (useful for tagging commits etc)'
required: false
orientation:
description: '[Android only] The orientation of the device to run your flow against in degrees <options: 0|90|180|270>'
required: false
quiet:
description: 'Quieter console output that wont provide progress updates'
required: false
report:
description: 'Runs Maestro with the --format flag, this will generate a report in the specified format <options: junit|html|html-detailed>'
required: false
retry:
description: 'Number of times to retry the run if it fails (same as pressing retry in the UI, this is free)'
required: false
workspace:
description: 'The path to the workspace folder containing your flows'
required: false
default: './.maestro/'
config:
description: 'Specific path to your maestro config file'
required: false
runner-type:
description: '[experimental] The type of runner to use <options: m1|m4> - note: anything other than default will incur premium pricing tiers. See https://docs.devicecloud.dev/reference/runner-type for more information'
required: false
default: 'default'
debug:
description: 'Enable debug mode for more verbose output'
required: false
use-beta:
description: 'Use the beta version of the DCD CLI instead of the latest stable version'
required: false
maestro-chrome-onboarding:
description: '[Android only] Force Maestro-based Chrome onboarding - note: this will slow your tests but can fix browser related crashes. See https://docs.devicecloud.dev/reference/chrome-onboarding for more information.'
required: false
android-no-snapshot:
description: '[Android only] Force cold boot instead of using snapshot boot. This is automatically enabled for API 35+ but can be used to force cold boot on older API levels.'
required: false
disable-animations:
description: 'Disable device animations during test execution. On Android, disables system animation scales. On iOS, enables Reduce Motion. Reduces CPU load and may improve test reliability.'
required: false
include-github-context:
description: 'Automatically attach GitHub/PR context (branch, SHA, PR number, PR URL, run ID, repo) to the test run as metadata. Set to "false" to opt out.'
required: false
default: 'true'
outputs:
DEVICE_CLOUD_CONSOLE_URL:
description: 'URL to view the test results in the Device Cloud console'
DEVICE_CLOUD_FLOW_RESULTS:
description: 'JSON array containing results for each flow, including name, status, and any errors'
DEVICE_CLOUD_UPLOAD_STATUS:
description: 'Status of the test run (PENDING, RUNNING, PASSED, FAILED, CANCELLED)'
DEVICE_CLOUD_APP_BINARY_ID:
description: 'ID of the uploaded app binary in Device Cloud'
runs:
using: 'node24'
main: 'dist/index.js'
branding:
icon: 'check'
color: 'blue'