-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaction.yml
More file actions
105 lines (101 loc) · 3.7 KB
/
action.yml
File metadata and controls
105 lines (101 loc) · 3.7 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
name: "BrowserBox"
description: "Launch a live BrowserBox remote browser on a GitHub Actions runner"
author: "BrowserBox"
branding:
icon: "monitor"
color: "blue"
inputs:
license-key:
description: "BrowserBox license key from https://browserbox.io"
required: true
tunnel:
description: "Exposure mode: none, cloudflare, or tor"
required: false
default: "cloudflare"
port:
description: "Main BrowserBox service port"
required: false
default: "8080"
service-mode:
description: "Service cluster mode: minimal runs bb-main only, full runs all BrowserBox services"
required: false
default: "minimal"
hostname:
description: "Hostname for local BrowserBox setup when tunnel=none"
required: false
default: "localhost"
email:
description: "Email used for BrowserBox setup when needed"
required: false
default: "actions@browserbox.io"
install-url:
description: "BrowserBox installer URL"
required: false
default: "https://browserbox.io/install.sh"
status-mode:
description: "Optional BrowserBox STATUS_MODE override"
required: false
default: ""
install-doc-viewer:
description: "Whether BrowserBox should install document viewer dependencies"
required: false
default: "false"
create-summary:
description: "Whether to write a GitHub step summary with the resulting URLs"
required: false
default: "true"
timeout:
description: "Maximum run time in minutes (default 30, max 150)"
required: false
default: "30"
broadcast-issue-number:
description: "Optional GitHub issue number to receive the live BrowserBox login link"
required: false
default: ""
broadcast-issue-repo:
description: "Repository for broadcast-issue-number, in owner/name form; defaults to the workflow repository"
required: false
default: ""
outputs:
login-link:
description: "BrowserBox login link"
value: ${{ steps.launch.outputs.login-link }}
base-url:
description: "BrowserBox base URL"
value: ${{ steps.launch.outputs.base-url }}
tunnel:
description: "Selected tunnel mode"
value: ${{ steps.launch.outputs.tunnel }}
service-mode:
description: "Selected BrowserBox service mode"
value: ${{ steps.launch.outputs.service-mode }}
runs:
using: "composite"
steps:
- name: Install BrowserBox
shell: bash
env:
BROWSERBOX_ACTION_LICENSE_KEY: ${{ inputs.license-key }}
BROWSERBOX_ACTION_INSTALL_URL: ${{ inputs.install-url }}
BROWSERBOX_ACTION_HOSTNAME: ${{ inputs.hostname }}
BROWSERBOX_ACTION_EMAIL: ${{ inputs.email }}
BROWSERBOX_ACTION_INSTALL_DOC_VIEWER: ${{ inputs.install-doc-viewer }}
BROWSERBOX_ACTION_STATUS_MODE: ${{ inputs.status-mode }}
run: ${{ github.action_path }}/scripts/install-browserbox.sh
- name: Launch BrowserBox
id: launch
shell: bash
env:
BROWSERBOX_ACTION_LICENSE_KEY: ${{ inputs.license-key }}
BROWSERBOX_ACTION_TUNNEL: ${{ inputs.tunnel }}
BROWSERBOX_ACTION_PORT: ${{ inputs.port }}
BROWSERBOX_ACTION_SERVICE_MODE: ${{ inputs.service-mode }}
BROWSERBOX_ACTION_HOSTNAME: ${{ inputs.hostname }}
BROWSERBOX_ACTION_EMAIL: ${{ inputs.email }}
BROWSERBOX_ACTION_INSTALL_DOC_VIEWER: ${{ inputs.install-doc-viewer }}
BROWSERBOX_ACTION_STATUS_MODE: ${{ inputs.status-mode }}
BROWSERBOX_ACTION_CREATE_SUMMARY: ${{ inputs.create-summary }}
BROWSERBOX_ACTION_TIMEOUT: ${{ inputs.timeout }}
BROWSERBOX_ACTION_BROADCAST_ISSUE_NUMBER: ${{ inputs.broadcast-issue-number }}
BROWSERBOX_ACTION_BROADCAST_ISSUE_REPO: ${{ inputs.broadcast-issue-repo }}
run: ${{ github.action_path }}/scripts/run-browserbox.sh