The Manual Workspace Bottleneck

▶ Watch (03:00)

After migrating state from Azure storage accounts to Terraform Cloud in 2022 and removing Terragrunt, 84.51 had a solid IaC foundation. Then teams started opening tickets: “Can you create us a Databricks catalog? A Databricks schema?” Each request meant manually creating a workspace, setting variables, and configuring variable sets in Terraform Cloud. Python scripts, Waypoint, and no-code modules all fell short. Backstage required a dedicated team, JavaScript skills, and either hosting cost or a vendor contract, too much overhead for a forms layer.

GitHub Issue Templates as a Self-Service Layer

▶ Watch (07:28)

GitHub issue templates are YAML files that render as structured forms in the Issues tab. Every IDP needs intake, storage, backend code, and a pipeline. GitHub has all four. A label ties each template to one Actions workflow, so submitting a “schema request” triggers only the schema pipeline. A second label, “approved,” kicks off phase two. Admins control who can add labels, so users cannot self-approve their own requests.

“GitHub is like the elephant graveyard of code um where code goes to die.” Connor Ryan

SendGrid sends the team a link to the open issue on submission. After approval, the requester gets a confirmation email when the workspace deploys.

Live Demo: Form to Deployed Workspace

▶ Watch (13:40)

Connor walked through the catalog request live demo (13:40) live. He submitted a GitHub issue for a Databricks catalog, selected data classification and a dev lifecycle, and watched an Actions workflow fire. It checked out the repo, converted the issue body to a text file, parsed inputs in Python, and sent a notification email via SendGrid with a link back to the open issue.

He added the “approved” label as repo admin. Phase two called the Terraform Cloud API, created the workspace, ran a plan and apply, then emailed both parties. Form to applied workspace: under two minutes.

Choosing the Right Tool for Your Stage

▶ Watch (21:35)

This pattern works for a team of one or a team of a hundred. Every team can own its own forms repo, control who approves requests, and keep a closed-issue audit trail, all without spending anything beyond what GitHub already costs.

“It’s cheap, easy, fun.” Connor Ryan

Build the IaC foundation first. Add self-service once you need it. GitHub issue templates get you there without Backstage, without Waypoint, and without pausing other work.

Notable Quotes

GitHub is like the elephant graveyard of code um where code goes to die. Connor Ryan · ▶ 8:07

I really hope this works. Connor Ryan · ▶ 15:45

It’s cheap, easy, fun. Connor Ryan · ▶ 22:21

Key Takeaways

  • GitHub issue templates replace a dedicated IDP form layer with no additional tooling cost.
  • Labels route each request type to its own Actions pipeline and restrict who can approve.
  • The Terraform Cloud API creates workspaces on approval, then emails both team and requester automatically.