Understanding the GitHub Provider for Terraform
summary
Covers using the GitHub Terraform provider to manage orgs, teams, memberships and ~500 repositories across half a dozen orgs, requiring Terraform 0.12+ and provider version pinning; authorization uses a personal access token (treat as secret, prefer Vault) and avoid granting no delete_repo scope so terraform won’t accidentally destroy repos; demonstrates repo creation with a single name attribute, branch protection including require signed commits, team repo permissions, and the rename workflow that uses terraform state rm / import because renaming triggers delete-and-recreate.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 0:22Who am I
- 1:56What is a provider
- 3:55Setup
- 7:37GitHub Organization Identifier
- 9:39Adding a Member
- 11:15Creating a Team
- 12:04Adding Users
- 13:18Managing Team Structure
- 18:13Renaming Resources
- 21:28GitHub Team Repository
related talks
36mTerraform & CI/CD
26mEverything as Code with Terraform
29mUsing GitHub Actions and HashiCorp Terraform
05mUsing Terraform Safely
06mIGNITE: Terraform Practice to Enable Infrastructure Scaling
31mTerraform Practices to Enable Infrastructure Scaling
15mTerraform Practices: The Good, the Bad, and the Ugly
23mWhen Infrastructure as Code Ends: Creating Terraform Providers
