Skip to content

CDK construct library to deploy GitHub Actions self-hosted runner to AWS Fargate.

License

Notifications You must be signed in to change notification settings

cloudgardener/cdk-aws-fargate-github-actions-runner

Repository files navigation

cdk-aws-fargate-github-actions-runner

View on Construct Hub

CDK construct library to deploy GitHub Actions self-hosted runner to AWS Fargate.

This is continuation to cdk-github-actions-runner proof-of-concept.

Example

import { App, Stack, aws_ecs as ecs, aws_ssm as ssm } from "aws-cdk-lib";
import { GithubActionsRunner } from "@cloudgardener/cdk-aws-fargate-github-actions-runner";

const app = new App();
const stack = new Stack(app, "stack");

// Get GitHub token e.g. from SSM Parameter Store
const token = ecs.Secret.fromSsmParameter(
  ssm.StringParameter.fromSecureStringParameterAttributes(
    stack,
    "GitHubAccessToken",
    {
      parameterName: "GITHUB_ACCESS_TOKEN",
      version: 0,
    }
  )
);

// Assign runner to repository
const context = "https://github.com/cloudgardener/runner-demo";

// Runners can be also assigned to organization
// const context = "https://github.com/cloudgardener";

// Deploy the runner
new GithubActionsRunner(stack, "runner", {
  githubToken: token,
  runnerContext: context,
});