Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Terraform Resources for Dev Containers

Offen
#1,237 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
terraform
Bereich
infrastructure

Rechercherichtung

Beginne damit, die Ressource coder_devcontainer und ihre Interaktion mit coder_app, coder_script, coder_env und coder_ai_task nachzuverfolgen; überprüfe anschließend die Anpassungen customizations.coder.modules in devcontainer.json und den coder/preview-Pfad von coderd. Der Issue beschreibt zwei Phasen. Bestätige daher vor der Implementierung den vorgesehenen Umfang und die Akzeptanzkriterien; als abgeschlossen gilt die Umsetzung der angegebenen Ressourcenverknüpfungen und des Verhaltens bei der Modulbereitstellung.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

epic

Epic: Terraform Resources for Dev Containers

Summary

Enable template authors to attach Terraform resources (coder_app, coder_script, coder_env, coder_ai_task) to coder_devcontainer resources, eliminating the need to choose between Dev Containers and our collection of Terraform modules.

Problem Statement

Opting in to Dev Containers requires opting out of our collection of Terraform modules as there is no way of associating terraform resources to the coder_devcontainer resource.

Agents used for Dev Containers are created dynamically after workspace provisioning. Since the sub-agent doesn't exist at Terraform plan/apply time, there is no way to reference it in Terraform.

Solution Overview

Phase 1: Terraform-defined Resources

Introduce a computed subagent_id field on the coder_devcontainer resource that can be referenced by other Terraform resources. This ID is pre-computed at plan time and used when the sub-agent is created at runtime.

resource "coder_devcontainer" "main" {
  agent_id         = coder_agent.main.id
  workspace_folder = "/workspaces/project"
}

resource "coder_app" "code_server" {
  agent_id     = coder_devcontainer.main.subagent_id
  slug         = "code-server"
  display_name = "VS Code"
  url          = "http://localhost:8080"
}
Phase 2: devcontainer.json-defined Resources

Enable Terraform modules to be defined directly in devcontainer.json via customizations.coder.modules, allowing developers to attach modules to their dev container without modifying Terraform templates. The modules are provisioned by coderd using coder/preview.

{
  "customizations": {
    "coder": {
      "modules": {
        "registry.coder.com/coder/code-server/coder:1.0.0": {},
        "registry.coder.com/coder/zed/coder:1": {
          "folder": "/home/coder/coder"
        }
      }
    }
  }
}

The key format is <registry link>:<version> and the value is an object of key-value mappings where each key is translated into a Terraform variable.

Vorherrschende Sprache
Keine Sprachdaten
Sterne
3
Forks
0
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus coder/internal

Alle Issues in coder/internal

Ähnliche Issues

Weitere Issues zu DevOps

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.