Add Devcontainer support

Signed-off-by: Timothy Middelkoop <tmiddelkoop@internet2.edu>
This commit is contained in:
Timothy Middelkoop
2025-01-08 21:26:23 +00:00
parent bdaaf903be
commit 64084a471b
4 changed files with 31 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
{
"name": "Warewulf Development",
"image": "registry.docker.com/library/rockylinux:9",
"remoteUser": "vscode",
"onCreateCommand": "sudo dnf install -y dnf-utils && sudo dnf config-manager --set-enabled crb && sudo dnf install -y unzip cpio gpgme-devel python3-sphinx python3-sphinx_rtd_theme",
"features": {
"ghcr.io/devcontainers/features/common-utils:2": {},
"ghcr.io/devcontainers/features/git:1": {},
"ghcr.io/devcontainers/features/go:1": {
"version": "latest"
}
},
"customizations": {
"vscode": {
"extensions": [
"golang.go",
"ms-vscode.makefile-tools"
]
}
}
}

View File

@@ -36,6 +36,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Adds `wwctl container <exec|shell> --build=false` to prevent automatically (re)building the container. #1490, #1489 - Adds `wwctl container <exec|shell> --build=false` to prevent automatically (re)building the container. #1490, #1489
- Added resources as generic, arbitrary YAML data for nodes and profiles. #1568 - Added resources as generic, arbitrary YAML data for nodes and profiles. #1568
- New `fstab` resource configures mounts in fstab overlay, including NFS mounts. #515 - New `fstab` resource configures mounts in fstab overlay, including NFS mounts. #515
- Add Dev Container support #1653
### Changed ### Changed

View File

@@ -0,0 +1,8 @@
=============================
Development Environment (Dev Container/VSC)
=============================
Using a Dev Container for development
=====================================================
Visual Studio Code (VSC) can utilize a Dev Container for a self-contained environment that has all the necessary tools and dependencies to build and test Warewulf. The Dev Container is based on the Rocky 9 image and is built using the `devcontainer.json` file in the `.devcontainer` directory of the Warewulf repository. To use this working Docker/Podman and VSC installations are required. To use the Dev Container, click the "Open a Remote Window" button on the bottom left of the editor (`><` icon) and select "Reopen in Container". This will build the container and open a new VSC window with the container as the development environment.

View File

@@ -47,6 +47,7 @@ Welcome to the Warewulf User Guide!
Contributing <contributing/contributing> Contributing <contributing/contributing>
Debugging <contributing/debugging> Debugging <contributing/debugging>
Documentation <contributing/documentation> Documentation <contributing/documentation>
Development Environment (Dev Container/VSC) <contributing/development-environment-devcontainer>
Development Environment (Vagrant) <contributing/development-environment-vagrant> Development Environment (Vagrant) <contributing/development-environment-vagrant>
Development Environment (KVM) <contributing/development-environment-kvm> Development Environment (KVM) <contributing/development-environment-kvm>
Development Environment (VirtualBox) <contributing/development-environment-vbox> Development Environment (VirtualBox) <contributing/development-environment-vbox>