Uninstall Guide
Learn how to uninstall RunsOn.
How you uninstall RunsOn depends on how the stack was deployed.
CloudFormation
- Go to the CloudFormation console ↗.
- Select the stack (name should be
runs-onunless you overrode the default value). - Click on the
Deletebutton. - Confirm the deletion by clicking on the
Delete stackbutton.
The only retained resources should be the two S3 buckets — one for the cache (which also holds runner configuration under the runners/ prefix) and one for S3 access logs — which you can then delete manually.
If you enabled EFS (EnableEfs) or the ephemeral ECR registry (EnableEphemeralRegistry), the EFS file system and/or ECR repository are also retained on stack deletion and must be deleted manually. Both are disabled by default.
Terraform / OpenTofu
If you deployed RunsOn with the Terraform / OpenTofu guide, remove it from the same root module and state that created it.
- From the Terraform/OpenTofu root module that contains RunsOn, run
terraform plan -destroyortofu plan -destroyand review the resources that will be removed. - Run
terraform destroyortofu destroy. - If your configuration intentionally keeps shared resources outside the RunsOn module, such as an existing VPC, subnets, or externally managed IAM policies, delete only the RunsOn-owned resources.
- Delete any retained RunsOn S3 buckets manually if they were kept for configuration, logs, or cache data.
terraform destroy will fail on non-empty cache buckets unless force_destroy_buckets = true. If prevent_destroy_optional_resources = true, the EFS file system has a prevent_destroy lifecycle that blocks destroy — remove that protection or delete EFS manually first. ECR ephemeral images are force-deleted by default.
Do not delete Terraform-managed resources manually in the AWS console unless you also clean up the Terraform/OpenTofu state. Keep the state as the source of truth.
Delete the GitHub private app
After the AWS resources are removed, delete the GitHub App that was registered for that RunsOn stack:
- Go to the GitHub settings for your organization.
- Click on
GitHub Apps. - Click on the
RunsOnapp. - Click on the
Uninstallbutton. - Confirm the deletion by clicking on the
Deletebutton.