{"id":17821871,"url":"https://github.com/github/terraform-github-runner-vnet","last_synced_at":"2025-03-18T11:30:43.211Z","repository":{"id":257970426,"uuid":"842626907","full_name":"github/terraform-github-runner-vnet","owner":"github","description":"Terraform modules that configure private networking for GitHub-hosted Action Runners.","archived":false,"fork":false,"pushed_at":"2024-09-05T19:39:21.000Z","size":131,"stargazers_count":3,"open_issues_count":1,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-02-28T09:15:40.535Z","etag":null,"topics":["action-runners","terraform-module"],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/github.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-14T18:25:23.000Z","updated_at":"2025-02-25T08:56:52.000Z","dependencies_parsed_at":"2024-10-17T17:07:08.207Z","dependency_job_id":null,"html_url":"https://github.com/github/terraform-github-runner-vnet","commit_stats":null,"previous_names":["github/terraform-github-runner-vnet"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fterraform-github-runner-vnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fterraform-github-runner-vnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fterraform-github-runner-vnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fterraform-github-runner-vnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/github","download_url":"https://codeload.github.com/github/terraform-github-runner-vnet/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243925492,"owners_count":20369906,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["action-runners","terraform-module"],"created_at":"2024-10-27T17:26:55.530Z","updated_at":"2025-03-18T11:30:43.196Z","avatar_url":"https://github.com/github.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# github-runner-vnet\n\nTerraform modules that configure and maintain the infrastructure needed to run GitHub-Hosted Action Runners in a [private network](https://docs.github.com/en/enterprise-cloud@latest/admin/configuration/configuring-private-networking-for-hosted-compute-products/configuring-private-networking-for-github-hosted-runners).\n\n## Quick Start\n\n1. Before running, review [pre-requisites](https://docs.github.com/en/enterprise-cloud@latest/admin/configuration/configuring-private-networking-for-hosted-compute-products/configuring-private-networking-for-github-hosted-runners#prerequisites) from the documentation to ensure your environment is properly configured.\n1. The [Azure CLI](https://learn.microsoft.com/en-us/cli/azure/) must be installed and on the system path, logged in with the identity that you want these resources created under, and Azure Subscription configured.\n1. The `GitHub.Network` resource provider must be registered in the Azure Subscription. The Terraform modules contain HCL to register this provider, but it is commented out since you may not want this managed by Terraform. See the above GitHub documentation for a sample AZ CLI command to register the provider.\n\nThis repo contains two Terraform modules:\n\n- [nsg](./modules/nsg/) module: Uses a [Network Security Group (NSG)](https://learn.microsoft.com/en-us/azure/virtual-network/network-security-groups-overview) to manage the network security of the VNet.\n\n```hcl\nmodule \"github_runner_vnet\" {\n  # Use the nsg version\n  source = \"github.com/github/terraform-github-runner-vnet/nsg\"\n\n  # The resources use this base_name as a name prefix, e.g. ${base_name}-rg for the resource group\n  base_name = \"vnet-test\"\n\n  # Retrieve through the GitHub API (see GitHub docs for instructions)\n  github_enterprise_id = \"12345\"\n}\n```\n\n- [firewall](./modules/firewall/) module: Uses an [Azure Firewall](https://learn.microsoft.com/en-us/azure/firewall/overview) to manage the network security of the VNet.\n\n\u003cdetails\u003e\u003csummary\u003eTerraform config for the firewall\u003c/summary\u003e\n\nProvision and configure the infrastructure in Terraform by calling this module:\n\n```hcl\nmodule \"github_runner_vnet\" {\n  # Use the firewall version\n  source = \"github.com/github/terraform-github-runner-vnet/firewall\"\n\n  # The resources use this base_name as a name prefix, e.g. ${base_name}-rg for the resource group\n  base_name = \"vnet-test\"\n\n  # Retrieve through the GitHub API (see GitHub docs for instructions)\n  github_enterprise_id = \"12345\"\n}\n```\n\n\u003c/details\u003e\n\nThe output of these modules is the Resource ID for the `GitHub.Network/networkSettings` resource. Paste this ID into the github.com UI for configuring the Azure Virtual Network.\n\n![GitHub UI](./images/github-az-network-settings.jpg)\n\n## License\n\nThis project is licensed under the terms of the MIT open source license. Please refer to [MIT](./LICENSE) for the full terms.\n\n## Maintainers\n\nPlease refer to [CODEOWNERS](./CODEOWNERS) for a list of maintainers.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithub%2Fterraform-github-runner-vnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgithub%2Fterraform-github-runner-vnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithub%2Fterraform-github-runner-vnet/lists"}