Skip to content

Amazon Linux ARM64

This module shows how to create GitHub action runners using AWS Graviton instances which have ARM64 architecture. Lambda release will be downloaded from GitHub.

Usages

Steps for the full setup, such as creating a GitHub app can be found in the root module's README. First download the Lambda releases from GitHub. Alternatively you can build the lambdas locally with Node or Docker, there is a simple build script in <root>/.ci/build.sh. In the main.tf you can simply remove the location of the lambda zip files, the default location will work in this case.

Ensure you have set the version in lambdas-download/main.tf for running the example. The version needs to be set to a GitHub release version, see https://github.com/philips-labs/terraform-aws-github-runner/releases

cd ../lambdas-download
terraform init
terraform apply -var=module_version=<VERSION>
cd -

Before running Terraform, ensure the GitHub app is configured. See the configuration details for more details.

terraform init
terraform apply

The example will try to update the webhook of your GitHub. In case the update fails the apply will not fail. You can receive the webhook details by running:

terraform output -raw webhook_secret

Requirements

Name Version
terraform >= 1.3.0
aws ~> 5.27
local ~> 2.0
random ~> 3.0

Providers

Name Version
random 3.6.0

Modules

Name Source Version
base ../base n/a
runners ../../ n/a
webhook_github_app ../../modules/webhook-github-app n/a

Resources

Name Type
random_id.random resource

Inputs

Name Description Type Default Required
github_app GitHub App for API usages.
object({
id = string
key_base64 = string
})
n/a yes

Outputs

Name Description
runners n/a
webhook_endpoint n/a
webhook_secret n/a