.devcontainer/devcontainer.json: Add devcontainer file

Tianocore maintains container images in the tianocore/containers repo
and stores container images within the GitHub container registry.

https://github.com/tianocore/containers

This change adds a devcontainer.json file to the edk2 repo. This
file's metadata and settings to configurate a development container
for a given well-defined tool and runtime stack.

More information about the devcontainer.json file is available here:
https://containers.dev/implementors/json_reference/

This file is recognized by popular tools such as GitHub Codespaces
and VS Code. In VS Code in particular, it makes it much easier for
a user to be aware a dev container exists (via UI notifications)
and to load the container.

A minimal number of VS Code extensions are specified that are useful
for edk2 development or to assist in complying with CI checks in
place in edk2.

Cc: Andrew Fish <afish@apple.com>
Cc: Chris Fernald <chris.fernald@outlook.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Oliver Steffen <osteffen@redhat.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
This commit is contained in:
Michael Kubacki 2023-01-20 12:07:22 -05:00 committed by mergify[bot]
parent b3f321f2d7
commit 540522fec0
2 changed files with 21 additions and 0 deletions

View File

@ -0,0 +1,16 @@
{
"image": "ghcr.io/tianocore/containers/fedora-35-dev:latest",
"postCreateCommand": "git config --global --add safe.directory * && pip install --upgrade -r pip-requirements.txt",
"customizations": {
"vscode": {
"extensions": [
"DavidAnson.vscode-markdownlint",
"ms-azuretools.vscode-docker",
"ms-vscode-remote.remote-containers",
"ms-vscode.cpptools",
"walonli.edk2-vscode",
"zachflower.uncrustify"
]
}
}
}

View File

@ -117,6 +117,11 @@ M: Michael Kubacki <mikuback@linux.microsoft.com> [makubacki]
R: Michael D Kinney <michael.d.kinney@intel.com> [mdkinney]
R: Liming Gao <gaoliming@byosoft.com.cn> [lgao4]
.devcontainer/
F: .devcontainer/
M: Michael Kubacki <mikuback@linux.microsoft.com> [makubacki]
R: Chris Fernald <chris.fernald@outlook.com> [cfernald]
.github/
F: .github/
M: Sean Brogan <sean.brogan@microsoft.com> [spbrogan]