-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaction.yml
More file actions
74 lines (74 loc) · 2.76 KB
/
action.yml
File metadata and controls
74 lines (74 loc) · 2.76 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
name: lambda-gha
description: GitHub Action for creating a self-hosted runner on Lambda Labs GPU cloud.
runs:
using: "docker"
image: "Dockerfile"
inputs:
action_ref:
description: "lambda-gha Git ref (branch/tag/SHA) to use for fetching scripts"
required: false
default: "main"
debug:
description: "Debug mode: false=off, true/trace=set -x only, number=set -x + sleep N minutes before shutdown"
required: false
extra_gh_labels:
description: "Extra GitHub labels for the runner (comma-separated, no spaces)"
required: false
instance_count:
description: "Number of instances to create (default: 1)"
required: false
default: "1"
check_availability:
description: "Pre-check capacity before attempting launches (default: auto, enabled when multiple types/regions)"
required: false
instance_type:
description: "Lambda instance type(s), comma-separated for fallback (e.g., gpu_1x_a10,gpu_1x_a100)"
required: false
lambda_api_key:
description: "Lambda Labs API key (falls back to secrets.LAMBDA_API_KEY)"
required: false
max_instance_lifetime:
description: "Maximum instance lifetime in minutes before shutdown (default: 360)"
required: false
region:
description: "Lambda region(s), comma-separated for fallback (e.g., us-east-1,us-west-1)"
required: false
retry_count:
description: "Number of retries per instance type/region combination (default: 1)"
required: false
default: "1"
retry_delay:
description: "Initial delay between retries in seconds, uses exponential backoff (default: 5)"
required: false
default: "5"
repo:
description: "GitHub repo to register runner with (default: current repo)"
required: false
runner_grace_period:
description: "Seconds before terminating after last job completes (default: 60)"
required: false
runner_initial_grace_period:
description: "Seconds before terminating if no jobs start (default: 180)"
required: false
runner_poll_interval:
description: "Seconds between termination condition checks (default: 10)"
required: false
runner_registration_timeout:
description: "Max seconds to wait for runner registration (default: 300)"
required: false
ssh_key_names:
description: "SSH key names registered in Lambda Labs (comma-separated)"
required: false
ssh_private_key:
description: "SSH private key for connecting to Lambda instances"
required: false
userdata:
description: "Additional script to run before runner setup"
required: false
outputs:
mtx:
description: "JSON array for matrix strategies: [{idx, id (label), instance_id}, ...]"
label:
description: "Runner label (for single instance use)"
instance-id:
description: "Lambda instance ID (for single instance use)"