github-runners

cloudandthings/github-runners/aws

Terraform Module HCL AWS

Deploy GitHub Action runners in your AWS Account. Uses AWS CodeBuild to manage ephemeral runners, so you don't have to.

Install
module "github-runners" {
source = "cloudandthings/github-runners/aws"
version = "3.9.0"
}
⭐ Source on GitHub 📦 Registry page
README

terraform-aws-github-runners Deploy GitHub Action runners in your AWS Account using serverless AWS CodeBuild. --- ![Maintenance](https://github.com/cloudandthings/terraform-aws-github-runners/graphs/commit-activity) !Terraform Version ![pre-commit](https://github.com/pre-commit/pre-commit) ![Pre-commit](https://github.com/cloudandthings/terraform-aws-github-runners/actions/workflows/pre-commit-and-tests.yml) ![Trivy Security Scan](https://github.com/cloudandthings/terraform-aws-github-runners/actions/workflows/trivy-scan.yml) Overview This Terraform module simplifies deployment of self-hosted GitHub Action runners using AWS CodeBuild. Unlike traditional approaches that require managing EC2 instances, this solution is serverless. Key Benefits - Simple - Quick setup with minimal configuratio

Inputs (36)
NameTypeDescriptionDefault
namestringCreated resources will be named with this. required
source_locationstringYour source code repo location, for example https://github.com/my/repo.git, or ` required
source_organizationstringYour GitHub organization name for organization-level webhook creation.null
cloudwatch_logs_group_namestringName of the log group used by the CodeBuild project. If not specified then a defnull
s3_logs_bucket_namestringName of the S3 bucket to store logs in. If not specified then logging to S3 willnull
vpc_idstringThe VPC ID for AWS CodeBuild to launch ephemeral instances in.null
ingress_with_cidr_blockslist(object({ from_port List of ingress rules to add to the default security group with CIDR blocks[]
iam_role_namestringName of the IAM role to be used. If not specified then a role will be creatednull
environment_compute_typestring Information about the compute resources the build project will use. Valid value"BUILD_GENERAL1_SMALL"
cloudwatch_log_group_retention_in_daysnumberNumber of days to retain log events14
s3_logs_bucket_prefixstringPrefix to use for the logs in the S3 bucket""
security_group_idslist(string)The list of Security Group IDs for AWS CodeBuild to launch ephemeral EC2 instanc[]
iam_role_permissions_boundarystringARN of the policy that is used to set the permissions boundary for the IAM servinull
ecr_repository_namestringName of the ECR repository to create or use. If not specified and `create_ecr_renull
privileged_modeboolWhether to enable running the Docker daemon inside a Docker container. Set to trfalse
tagsmap(string)A map of tags to assign to the resources created by this module. If configured w{}
subnet_idslist(string)The list of Subnet IDs for AWS CodeBuild to launch ephemeral EC2 instances in.[]
security_group_namestringName to use on created Security Group. Defaults to `name`null
kms_key_idstringThe AWS KMS key to be usednull
build_timeoutnumberNumber of minutes, from 5 to 2160 (36 hours), for AWS CodeBuild to wait until ti5
iam_role_tagsmap(string)A map of tags to assign specifically to the IAM role. These tags will be merged {}
github_secretsmanager_secret_arnstringThe Secret ARN containing the credentials to use for the region-wide CodeBuild Snull
Outputs (7)
codebuild_role_name — Name of the CodeBuild role, to be used when running GitHub Actions
ecr_repository_name — Name of the ECR repository, to be used when to push custom docker images for the CodeBuild project
aws_security_group_id — ID of the security group created for the CodeBuild project
environment_image — Docker image used for this CodeBuild project
cloudwatch_log_group_name — Name of the CloudWatch log group for the CodeBuild project
codebuild_project_name — Name of the CodeBuild project, to be used when running GitHub Actions
codebuild_project_arn — ARN of the CodeBuild project, to be used when running GitHub Actions
Resources (13)
aws_cloudwatch_log_groupaws_codebuild_projectaws_codebuild_source_credentialaws_codebuild_webhookaws_ecr_lifecycle_policyaws_ecr_repositoryaws_iam_roleaws_iam_role_policyaws_iam_role_policy_attachmentaws_security_groupaws_security_group_ruleaws_vpc_security_group_egress_ruleaws_vpc_security_group_ingress_rule
Topics & Tags
hacktoberfest
Details
FrameworkTerraform Module
LanguageHCL
Version3.9.0
Cloud AWS
★ Stars26
Forks7
Total downloads9.8k
Inputs36
Outputs7
Resources13
Examples5
LicenseMIT
Namespacecloudandthings
Updated