https://github.com/vmvarela/devcontainer-features
A collection of Dev Container Features.
https://github.com/vmvarela/devcontainer-features
devcontainer devcontainer-features hashicorp
Last synced: 10 months ago
JSON representation
A collection of Dev Container Features.
- Host: GitHub
- URL: https://github.com/vmvarela/devcontainer-features
- Owner: vmvarela
- Created: 2024-09-21T09:40:24.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-24T09:38:51.000Z (over 1 year ago)
- Last Synced: 2024-10-25T07:24:18.016Z (over 1 year ago)
- Topics: devcontainer, devcontainer-features, hashicorp
- Language: Shell
- Homepage:
- Size: 20.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# devcontainer-features
Repository with features to use in devcontainers:
- [hashicorp-tools](./src/hashicorp-tools/README.md): Installs Hashicorp utilities (Terraform, Vault, Consul...)
- [terraform-docs](./src/terraform-docs/README.md): Installs terraform-docs
- [tflint](./src/tflint/README.md): Installs TFLint
## Usage
To use the features from this repository, add the desired features to `devcontainer.json`. To use the features from this repository, add the ones you need to `devcontainer.json`.
This sample installs Terraform and Vault into a devcontainer using [hashicorp-tools](./src/hashicorp-tools/README.md) feature.
```jsonc
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/vmvarela/devcontainer-features/hashicorp-tools:0": {
"terraform": "1.9.5",
"vault": "1.17.5"
}
}
}
```
## Repository and Features Structure
Based on the repository `devcontainers/features`, this repository has a `src` folder. Each feature has its own subfolder, with at least a `devcontainer-feature.json` and an installation script `install.sh`.
```
├── src
│ ├── hello
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
│ ├── color
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
| ├── ...
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
...
```