mirror of
https://gitlab.kitware.com/cmake/cmake.git
synced 2026-09-25 04:09:36 +03:00
Install `glab`, the GitLab CLI, and `glab-axi`, an agent-ergonomic wrapper around it, in the development container. Default `GITLAB_HOST` to `gitlab.kitware.com` so that both address our GitLab instance without further configuration, persist the `glab` configuration directory on a volume so that a credential need be created only once, and pass a `GITLAB_TOKEN` or `GITLAB_CLIENT_ID` from the host through to the container. Neither tool can authenticate on its own, so check for a working credential each time a tool attaches to the container and print what remains to be set up if there is none.
43 lines
1.0 KiB
JSON
43 lines
1.0 KiB
JSON
{
|
|
"name": "CMake",
|
|
"build": {
|
|
"dockerfile": "Dockerfile"
|
|
},
|
|
"remoteUser": "cmake-dev",
|
|
"containerEnv": {
|
|
"GITLAB_HOST": "gitlab.kitware.com"
|
|
},
|
|
"remoteEnv": {
|
|
"GITLAB_CLIENT_ID": "${localEnv:GITLAB_CLIENT_ID}",
|
|
"GITLAB_TOKEN": "${localEnv:GITLAB_TOKEN}"
|
|
},
|
|
"mounts": [
|
|
{
|
|
"type": "volume",
|
|
"source": "cmake-dev-ccache",
|
|
"target": "/home/cmake-dev/.cache/ccache"
|
|
},
|
|
{
|
|
"type": "volume",
|
|
"source": "cmake-dev-glab-cli",
|
|
"target": "/home/cmake-dev/.config/glab-cli"
|
|
}
|
|
],
|
|
"postAttachCommand": "${containerWorkspaceFolder}/.devcontainer/setup-status.sh",
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions": [
|
|
"EditorConfig.EditorConfig",
|
|
"ms-vscode.cmake-tools",
|
|
"ms-vscode.cpptools",
|
|
"lextudio.restructuredtext",
|
|
"llvm-vs-code-extensions.vscode-clangd"
|
|
],
|
|
"settings": {
|
|
"C_Cpp.clang_format_path": "/usr/bin/clang-format-18",
|
|
"cmake.configureOnOpen": false
|
|
}
|
|
}
|
|
}
|
|
}
|