A collection of reusable features for installing the tools the company needs in its development containers. Each feature includes its installer, options, and tests.
Add features to .devcontainer/devcontainer.json:
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/opendreamnet/devcontainer-features/tatr:1": {
"tatrVersion": "main",
"runTests": false
},
"ghcr.io/opendreamnet/devcontainer-features/git-cliff:1": {
"gitCliffVersion": "2.14.2"
},
"ghcr.io/opendreamnet/devcontainer-features/acs:1": {
"acsVersion": "0.1.0"
}
}
}This example requires the feature to be published and accessible on GHCR. Use :1 to track a major version or an exact version, such as :1.1.0, to pin the feature. The tool revision is configured separately; for tatr, use a full SHA in tatrVersion to pin the source code.
| Feature | Description | Options |
|---|---|---|
| tatr | Builds and installs tsoding's task tracker on Linux. | Metadata and defaults |
| upx | Installs UPX from verified upstream Linux releases. | Metadata and defaults |
| git-cliff | Installs git-cliff from SHA-512 verified Linux releases for generating changelogs. | Metadata and defaults |
| acs | Installs Agent Coding Standards CLI from SHA-256 verified upstream Linux releases. | Metadata and defaults |
src/<id>/:devcontainer-feature.json,install.sh, and any files needed to install the feature.test/<id>/:test.sh,scenarios.json, and one script per scenario..github/workflows/: publishing to GHCR and generating per-feature documentation..devcontainer/: the repository's development environment.
Requires a working Docker installation and the Dev Container CLI, which is installed automatically in the repository's devcontainer. Outside that environment:
npm install -g @devcontainers/cliFrom the repository root, run tests for one feature or the entire collection:
devcontainer features test --project-folder . --features tatr --skip-duplicated
devcontainer features test --project-folder . --skip-duplicatedSee AGENTS.md for instructions on adding features. The configured workflows run on pushes to main or manual dispatch; they do not currently run tests.
- Features specification.
- Official reference collection.
- The repository's MIT license; installed tools retain their own licenses.