build: add recommended config files for VSCode remote development (#30450)
Add some recommended config files to use (as is or as basis) for setting up [remote development using docker containers][1] with VSCode. This is an opt-in feature. See `.devcontainer/README.md` for more info. The configuration can be further tweaked/improved, but is a good starting point. [1]: https://code.visualstudio.com/docs/remote/containers PR Close #30450
This commit is contained in:
parent
6454f76cf6
commit
f78bda9ff0
|
@ -0,0 +1,22 @@
|
||||||
|
# Image metadata and config.
|
||||||
|
FROM circleci/node:10-browsers
|
||||||
|
|
||||||
|
LABEL name="Angular dev environment" \
|
||||||
|
description="This image can be used to create a dev environment for building Angular." \
|
||||||
|
vendor="angular" \
|
||||||
|
version="1.0"
|
||||||
|
|
||||||
|
EXPOSE 4000 4200 4433 5000 8080 9876
|
||||||
|
|
||||||
|
|
||||||
|
# Switch to `root` (CircleCI images use `circleci` as the user).
|
||||||
|
USER root
|
||||||
|
|
||||||
|
|
||||||
|
# Configure `Node.js`/`npm` and install utilities.
|
||||||
|
RUN npm config --global set user root
|
||||||
|
RUN npm install --global yarn@1.13.0 # This needs to be in sync with what we use on CI.
|
||||||
|
|
||||||
|
|
||||||
|
# Go! (And keep going.)
|
||||||
|
CMD ["tail", "--follow", "/dev/null"]
|
|
@ -0,0 +1,16 @@
|
||||||
|
// Reference: https://code.visualstudio.com/docs/remote/containers#_devcontainerjson-reference
|
||||||
|
{
|
||||||
|
"name": "Angular dev container",
|
||||||
|
"dockerFile": "Dockerfile",
|
||||||
|
"appPort": [4000, 4200, 4433, 5000, 8080, 9876],
|
||||||
|
"postCreateCommand": "yarn install",
|
||||||
|
"extensions": [
|
||||||
|
"devondcarew.bazel-code",
|
||||||
|
"gkalpak.aio-docs-utils",
|
||||||
|
"ms-vscode.vscode-typescript-tslint-plugin",
|
||||||
|
"xaver.clang-format",
|
||||||
|
// The following extensions are useful when working on angular.io (i.e. inside the `aio/` directory).
|
||||||
|
//"angular.ng-template",
|
||||||
|
//"dbaeumer.vscode-eslint",
|
||||||
|
],
|
||||||
|
}
|
|
@ -855,6 +855,7 @@ testing/** @angular/fw-test
|
||||||
/.buildkite/** @angular/fw-dev-infra
|
/.buildkite/** @angular/fw-dev-infra
|
||||||
/.circleci/** @angular/fw-dev-infra
|
/.circleci/** @angular/fw-dev-infra
|
||||||
/.codefresh/** @angular/fw-dev-infra
|
/.codefresh/** @angular/fw-dev-infra
|
||||||
|
/.devcontainer/** @angular/fw-dev-infra
|
||||||
/.github/** @angular/fw-dev-infra
|
/.github/** @angular/fw-dev-infra
|
||||||
/.vscode/** @angular/fw-dev-infra
|
/.vscode/** @angular/fw-dev-infra
|
||||||
/docs/BAZEL.md @angular/fw-dev-infra
|
/docs/BAZEL.md @angular/fw-dev-infra
|
||||||
|
|
|
@ -11,7 +11,9 @@ tools/gulp-tasks/cldr/cldr-data/
|
||||||
pubspec.lock
|
pubspec.lock
|
||||||
.c9
|
.c9
|
||||||
.idea/
|
.idea/
|
||||||
.devcontainer
|
.devcontainer/*
|
||||||
|
!.devcontainer/recommended-devcontainer.json
|
||||||
|
!.devcontainer/recommended-Dockerfile
|
||||||
.settings/
|
.settings/
|
||||||
.vscode/launch.json
|
.vscode/launch.json
|
||||||
.vscode/settings.json
|
.vscode/settings.json
|
||||||
|
|
|
@ -8,5 +8,8 @@
|
||||||
"gkalpak.aio-docs-utils",
|
"gkalpak.aio-docs-utils",
|
||||||
"ms-vscode.vscode-typescript-tslint-plugin",
|
"ms-vscode.vscode-typescript-tslint-plugin",
|
||||||
"xaver.clang-format",
|
"xaver.clang-format",
|
||||||
|
// The following extensions are useful when working on angular.io (i.e. inside the `aio/` directory).
|
||||||
|
//"angular.ng-template",
|
||||||
|
//"dbaeumer.vscode-eslint",
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue