Adds a default configuration that comes with all the dependencies preinstalled, but not prebuilt. This reduces confusion if you don't use the "New with options..." dropdown when creating the Codespace since you'd just get a standard Ubuntu container then.
Also install a specific version of dotnet-serve.
* Split libraries and wasm devcontainers
Codespaces allows for monorepo support now. So we can have different pre-builds for different dev environments.
Creating a "libraries" pre-build and a "wasm" pre-build devcontainer.
* Move devcontainer files into separate folders
* Path up a directory to the Dockerfile
* Split the Dockerfile so it can be customized per devcontainer
* Update Codespaces docs
* Respond to PR feedback
* Use the new open devcontainers path.
* Use the GH CLI feature instead of installing it ourselves
* Set hostRequirements for Codespaces
Developing in dotnet/runtime with a 2-core / 4GB ram machine doesn't work very well. Add a minimum of 4-core machine to the devcontainer spec.
Fix#75680
With these changes, running the following in the Codespace will open the local browser to a page served from the codespace hosting the WASM sample:
```console
cd src/mono/sample/wasm/browser
make
make run-browser
```
* Set EMSDK_PATH in .devcontainer.json
We provision Emscripten as part of the devcontainer prebuild.
Set EMSDK_PATH to allow rebuilding the wasm runtime to work without any additional ceremony
* Install dotnet-serve into .dotnet-tools-global
* [wasm] Don't try to open browser if running in Codespaces
* .devcontainer: add global tools dir to PATH
* .devcontainer: forward port 8000
This enables running the mono wasm samples in the local browser:
* [wasm] samples: also check for dotnet-serve on the path
On Codespaces we install dotnet-serve on the PATH but not where `dotnet tool list` can see it
* remove onAutoForward: notify - it's the default
* Adjust the path of v8 depends if running in a dev container
* Check if we're running in any Docker container, not just Codespaces
Co-authored-by: Fan Yang <52458914+fanyang-mono@users.noreply.github.com>
* Add instructions for using Codespaces
* Automate resetting the HEAD to the same commit ID used to build the pre-built container
* - Add notes about testing changes.
- Add 4-core machines
* Revert 4-core change since prebuild doesn't support multiple sku_names.