One of the great features of Visual Studio Code is its extensibility. In this series, we will learn how to orchestrate your development environment by leveraging the built in extension points of the IDE.

Prerequisites

Visual Studio Code: https://code.visualstudio.com

DotNet Core SDK: https://www.microsoft.com/net/download

Docker: https://www.docker.com

Sections

The series is broken down into several sections:

We start by learning how to leverage tasks to build docker containers, push NuGet packages, run unit and integration tests, and more. Configure launchers to debug your code locally and remotely within docker.

Everything needed to remotely debug your microservices from within the docker environment.

Learn to configure multiple runtime settings to allow combinations of local and container debugging.

Executing unit tests using VSCode tasks.

Leverage coverlet and LCOV to generate html test-coverage reports.

Deploy nuget packages with VSCode tasks.

Create a CI build using everything we've learned using TravisCI.

Windows Users

All script samples in this series are written in bash for OSX and Linux. PowerShell equivalent scripts are provided in the source repository to allow identical functionality under Windows. In fact, all of the provided VS Code tasks will automatically point to the PowerShell scripts when running on a Windows OS.

Code Samples

A fully-functional project is provided for the series. Each part is contained in its own branch. Be sure to select the appropriate branch for each part of the series.

The full source code can be found at: https://github.com/christophla/blog-orchestrating-vscode

Next Post : Tasks and Launchers

In the next post we will learn how to leverage tasks and launchers to orchestrate building and debugging our application.