🌐 US-Proxy
class="logged-out env-production page-responsive" style="word-wrap: break-word;" >
Skip to content

feat: add base templates for all major cloud providers - #26634

Merged
jeremyruppel merged 2 commits into
mainfrom
jeremy/devex-515-base-templates
Jun 30, 2026
Merged

feat: add base templates for all major cloud providers#26634
jeremyruppel merged 2 commits into
mainfrom
jeremy/devex-515-base-templates

Conversation

@jeremyruppel

@jeremyruppel jeremyruppel commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Add 6 new base templates to the template builder, covering all major cloud providers and platforms:

  • scratch: Minimal starter template with only coder_agent and metadata
  • aws-windows: AWS EC2 Windows instances with PowerShell user_data
  • azure-linux: Azure VMs with cloud-init and managed disk persistence
  • gcp-linux: Google Compute Engine Linux instances with persistent disk
  • gcp-windows: Google Compute Engine Windows instances
  • digitalocean-linux: DigitalOcean Linux droplets with persistent volumes

Each base includes base.json, main.tf.tmpl, README.md (with prerequisite markers), and any static files (cloud-init configs). Tests verify all 9 bases load, render without error, and produce valid single-agent declarations.

azure-windows is deferred; it needs to be registered in the examples package first.

Depends on #26633

Note

This PR was authored by Coder Agents on behalf of @jeremyruppel.


NB: This is very much an agent-generated PR and draws completely from base templates that exist in examples/templates/. The base.json files are new, so review those, but don't spend any brain tokens on the correctness of the terraform and supporting files: any issues there are issues with the upstream example template

@linear-code

linear-code Bot commented Jun 23, 2026

Copy link
Copy Markdown

DEVEX-515

@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-infrastructure branch from 5a2307b to 329443f Compare June 23, 2026 17:31
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from 99a1a9a to 5cfe6fb Compare June 23, 2026 17:31
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-infrastructure branch from 329443f to 57750bf Compare June 23, 2026 17:36
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from 5cfe6fb to d103c17 Compare June 23, 2026 17:37
@jeremyruppel
jeremyruppel marked this pull request as ready for review June 23, 2026 17:50
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from d103c17 to f23b749 Compare June 23, 2026 19:21
@github-actions

Copy link
Copy Markdown

Docs preview

📖 View docs preview for docs/reference/cli/templates_init.md

@jeremyruppel jeremyruppel changed the title feat(coderd/templatebuilder): add base templates for all major cloud providers feat: add base templates for all major cloud providers Jun 23, 2026
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch 2 times, most recently from f489536 to 6e0d67e Compare June 23, 2026 20:00

jeremyruppel commented Jun 24, 2026

Copy link
Copy Markdown
Contributor Author

@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-infrastructure branch from 57750bf to 9d5497c Compare June 24, 2026 19:23
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from 6e0d67e to 38795e9 Compare June 24, 2026 19:23
@jeremyruppel
jeremyruppel requested a review from jakehwll June 24, 2026 20:03
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from 38795e9 to 5ca0705 Compare June 30, 2026 19:29
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-infrastructure branch from 9d5497c to 5b98335 Compare June 30, 2026 19:29
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from 5ca0705 to a8c63d6 Compare June 30, 2026 21:53

@code-asher code-asher left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like the golden files are always the same as the original file, is that just coincidence for now? Have not had a chance to see what rendering entails. (I only spot checked two though.)

@@ -0,0 +1,6 @@
{
"id": "scratch",
"display_name": "Scratch",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should it say Scratch (Linux) to match the others?

Or actually, do we need to specify the OS in the display name? I imagine the UI could just add a badge or something based on os.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmmmmMMMMmmmm an os badge would be sick actually. I'm going to ask in the template builder channel

Base automatically changed from jeremy/devex-515-infrastructure to main June 30, 2026 22:08
…providers

Add 7 new base templates to the template builder:
- scratch: minimal starter template (coder_agent only)
- aws-windows: AWS EC2 Windows instances
- azure-linux: Azure VMs with cloud-init and managed disk
- azure-windows: Azure Windows VMs with RDP support
- gcp-linux: Google Compute Engine Linux instances
- gcp-windows: Google Compute Engine Windows instances
- digitalocean-linux: DigitalOcean Linux droplets

Each base includes a manifest (base.json), Go template (main.tf.tmpl),
README with prerequisite markers, and any static files (cloud-init
configs, PowerShell scripts). Tests verify all bases load, render, and
produce valid coder_agent declarations.
@jeremyruppel
jeremyruppel force-pushed the jeremy/devex-515-base-templates branch from 516a437 to 825db41 Compare June 30, 2026 22:09
@jeremyruppel

Copy link
Copy Markdown
Contributor Author

It looks like the golden files are always the same as the original file

oh that's just because these bases don't have any configuration. the k8s base is an example of one that has templating in the tf and config in the base.json

@code-asher

Copy link
Copy Markdown
Member

Ahh kk that makes sense

@jeremyruppel
jeremyruppel merged commit c40b3b9 into main Jun 30, 2026
29 of 30 checks passed
@jeremyruppel
jeremyruppel deleted the jeremy/devex-515-base-templates branch June 30, 2026 22:26
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 30, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants