You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This [Terraform](https://www.terraform.io/) module creates the required infrastructure needed to host [GitHub Actions](https://github.com/features/actions) self hosted, auto scaling runners on [AWS spot instances](https://aws.amazon.com/ec2/spot/). It provides the required logic to handle the life cycle for scaling up and down using a set of AWS Lambda functions. Runners are scaled down to zero to avoid costs when no workflows are active.
7
6
8
7
-[Motivation](#motivation)
@@ -75,7 +74,7 @@ Examples are provided in [the example directory](examples/). Please ensure you h
75
74
- AWS cli (optional)
76
75
- Node and yarn (for lambda development).
77
76
78
-
The module supports two main scenarios for creating runners. On repository level a runner will be dedicated to only one repository, no other repository can use the runner. On organization level you can use the runner(s) for all the repositories within the organization. See https://help.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners for more information. Before starting the deployment you have to choose one option.
77
+
The module supports two main scenarios for creating runners. On repository level a runner will be dedicated to only one repository, no other repository can use the runner. On organization level you can use the runner(s) for all the repositories within the organization. See [GitHub instructions](https://help.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners) for more information. Before starting the deployment you have to choose one option.
79
78
80
79
GitHub workflows fail immediately if there is no action runner available for your builds. Since this module supports scaling down to zero, builds will fail in case there is no active runner available. We recommend to create an offline runner with matching labels to the configuration. Create this runner manually by following the [GitHub instructions](https://help.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners) for adding a new runner on your local machine. If you stop the process after the step of running the `config.sh` script the runner will remain offline. This offline runner ensures that builds will not fail immediately and stay queued until there is an EC2 runner to pick it up.
81
80
@@ -210,7 +209,7 @@ This is the default, no additional configuration is required.
210
209
211
210
You have to create an configure you KMS key. The module will use the context with key: `Environment` and value `var.environment` as encryption context.
212
211
213
-
```HCL
212
+
```hcl
214
213
resource "aws_kms_key" "github" {
215
214
is_enabled = true
216
215
}
@@ -244,7 +243,7 @@ idle_config = [{
244
243
245
244
Cron expressions are parsed by [cron-parser](https://github.com/harrisiirak/cron-parser#readme). The supported syntax.
246
245
247
-
```
246
+
```bash
248
247
******
249
248
┬ ┬ ┬ ┬ ┬ ┬
250
249
│ │ │ │ │ |
@@ -392,7 +391,7 @@ We welcome contribution, please checkout the [contribution guide](CONTRIBUTING.m
392
391
393
392
This module is part of the Philips Forest.
394
393
395
-
```
394
+
```bash
396
395
397
396
___ _
398
397
/ __\__ _ __ ___ ___||_
@@ -407,7 +406,3 @@ This module is part of the Philips Forest.
407
406
Talk to the forestkeepers in the `forest`-channel on Slack.
0 commit comments