-
Notifications
You must be signed in to change notification settings - Fork 3
/
action.yml
119 lines (100 loc) · 3.72 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
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
name: Starts a self-hosted EC2 runner on demand
description: Starts a self-hosted EC2 runner on demand
author: Rogi Solorzano
inputs:
github-token:
required: true
description: >-
GitHub Personal Access Token with the 'repo' scope.
subnet-id:
required: false
description: >-
The subnet ID that the EC2 instance will be created in.
This subnet and security group should be in the same VPC.
security-group-id:
required: false
description: >-
EC2 Security Group Id.
This subnet and security group should be in the same VPC.
The runner itself just needs to be able to make an outbound HTTPS connection.
No inbound traffic is needed.
launch-template:
required: false
description: >-
Set 'true' to use the launch template, set 'false' to use image id and explicit configuration parameters. Defaults to false.
launch-template-id:
required: false
description: >-
Launch template id from the EC2 console. Set only if using the launch template approach.
Either a template ID or template name is required, but both can't be used at the same time.
launch-template-name:
required: false
description: >-
Launch template name from the EC2 console. Set only if using the launch template approach.
Either a template ID or template name is required, but both can't be used at the same time.
launch-template-version:
required: false
description: >-
Launch template version to use. Set only if using the launch template approach.
image-id:
required: false
description: >-
The AMI ID to use.
runner-directory:
required: true
description: >-
The directory in which the runner was installed in. This is the directory where
the startup commands will run.
region:
required: false
description: >-
The AWS region. Defaults to us-east-1.
instance-type:
required: false
description: >-
EC2 Instance Type. Defaults to t2.micro.
iam-role-name:
required: false
description: >-
IAM Role Name to attach to the created EC2 instance.
Note that this requires additional AWS permissions.
key-name:
required: false
description: >-
The keypair name to attach to the instance. Useful for SSHing into your instance.
retry-delay:
required: false
description: >-
The amount of seconds to wait before re-checking if the instance is registered as a runner yet.
The default is to try every 5 seconds, up to 12 times. So we wait 60 seconds in total.
retry-amount:
required: false
description: >-
The number of times to re-check if the instance is registered as a runner yet.
The default is to try every 5 seconds, up to 12 times. So we wait 60 seconds in total.
startup-commands:
required: false
description: >-
A list of commands to run on startup. This replaces the default startup commands.
You can use these tokens in your commands and they will be replaced:
{repoUrl} - The URL of the repo.
{name} - The random instance name.
{token} - The github runner token.
{label} - The random label for the runner.
ec2-tags:
required: false
description: >-
The tags to attach to the EC2 instance.
Note that this requires additional AWS permissions.
outputs:
runner-label:
description: >-
The unique label that was assigned to the runner. This is used to reference
the runner when running a job on it, and also when removing it from Github.
instance-id:
description: >-
EC2 Instance Id of the created runner.
The id is used to terminate the EC2 instance when the runner is not needed anymore.
runs:
using: node16
main: dist/index.js