This repository contains following features:
- google-cloud-cli: Install Google Cloud CLI tools
- opa: Install Open Policy Agent (opa)
- conftest: Install conftest
- tfsec: Install tfsec
- trivy: Install trivy
- act: Install act
- k9s: Install k9s
- flyctl: Install flyctl
- aztfy: Install aztfy
- terraformer: Install terraformer
- terraform-docs: Install terraform-docs
- k6: Install k6
- hadolint: Install hadolint
- mizu: Install mizu
- oras: Install oras
- stern: Install stern
To use the features from this repository, add the desired features to devcontainer.json.
This example use google-cloud-cli feature on devcontainer.
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/dhoeric/features/google-cloud-cli:1": {
"version": "latest"
}
}
}
Similar to the devcontainers/features
repo, this repository has a src
folder. Each feature has its own sub-folder, containing at least a devcontainer-feature.json
and an entrypoint script install.sh
.
├── src
│ ├── hello
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
│ ├── color
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
| ├── ...
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
...
An implementing tool will composite the documented dev container properties from the feature's devcontainer-feature.json
file, and execute in the install.sh
entrypoint script in the container during build time. Implementing tools are also free to process attributes under the customizations
property as desired.