coder / coder/envbuilder

Allow generating/accessing a computed `devcontainer.json` inside an envbuilder workspace

Open
#211 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
300
Forks
64
Avg merge
20m
Merged PRs (30d)
1

Description

To fully support https://github.com/coder/envbuilder/issues/68, we need a way to access all the relevant devcontainer configuration inside a workspace.

This also ties into #128 because currently no devcontainer information is built into the final image. That means that starting a workspace from a cached image won't have any files present from devcontainer features.

There are two options:
1. Have envbuilder store a computed `devcontainer.json` in a well-known location
2. Allow `envbuilder read-configuration` (#210) to download features and inspect their configuration

Option 1 has merit as a simple way of informing coder modules where to look for the configuration. Stored as part of the final image, it would make the configuration immutable until the image is rebuilt.

Option 2 has merit as a drop-in replacement for `@devcontainer/cli` and the behavior can be tweaked by the user. However, this may not guarantee feature immutability.

Option 1 seems like the most straightforward option at this time.

Contributor guide

No contributing guide indexed for this repository

Research direction

Read the related envbuilder read-configuration issue (#210) and the context from #68 and #128 first. Compare the two proposed approaches, then define how the relevant devcontainer configuration will be accessed in a workspace and what must be present when starting from a cached image.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, go
Domain
devops, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.