Following environments are set up to run app and/or tests.

Environment 1: Local Full Stack Debugging

Generates Telemetry: Yes, see Observability article for which Grafana Cloud account to use

Use VS Code compound launch configuration Frontend/Backend, defined in launch.json to run the whole stack in debug mode.

Just select from launch configurations dropdown it in Debug sidebar window (Ctrl + D), then whenever you upress F5, the configuration will launch.

Bear in mind that to stop debugging with this compound configuration, you will need to press Shift+F5 twice and not once.

The database this launch configuration uses is FlowmazonDB on a PostgreSQL database server running on the local machine.

Configuration

Environment Identifier in Grafana Cloud: vscode-fullstack

As described in this Dev.to post, values for required and some optional configuration keys in .vscode/flowmazonapi.env and .vscode/flowmazonfrontend.env and NOT the conventional sources of development-time secrets and config such as appSettings.json, .NET User Secrets Manager or Properties/launchSettings.json.

appSettings.Development.json in flowmazonapi does declare a required config key for flowmazonapi: ALLOWED_CORS_ORIGINS. This is a dummy value so that if we were to launch the API project on its own - this happens implicitly when we run a dotnet ef migrations commands but may be done manually to test the API in Postman for example - then a value for this required key would be available to the running project even though it wouldn't be used. In the launch configuration, this would be overwritten by the value for this key provided by flowmazonapi.env as environment variables are the highest precedence config source.

Local Continuous Testing Environments

Following test suites are run continuously in VS Code, each in a separate environment (i.e. each environment is defined and configured separately):