12 Release and deployment

 

This chapter covers

  • Getting the web API ready for release
  • Adopting a security by design approach
  • Setting up a content-delivery network (CDN)
  • Creating a Windows Server virtual machine (VM) in Microsoft Azure
  • Installing and configuring Internet Information Services (IIS)
  • Deploying the web API to Windows Server with Visual Studio

We’re close to the end of our journey. Our ASP.NET Core web API project is mature enough to be classified as a potentially shippable product (PSP), a definition used by most Agile methodologies to indicate that the application, although still incomplete, has reached a level of maturity solid enough to be shown to product owners, beta testers, and/or end users.

It’s important to understand that this status doesn’t mean the app is ready to be delivered to customers. Potentially shippable is a state of confidence from a development perspective; actual shipping is a business decision that should take other data into account.

In this chapter, we’ll suppose that the IT project manager assigned to our development team, after carefully reviewing the results of our work, has decided that our web API is ready for its first release. To comply with this decision, we need to publish it somewhere to enable the interested parties—ideally, product owners and testers—to access and evaluate it.

12.1 Prepublishing tasks

12.1.1 Considering security

12.1.2 Choosing a domain name

12.1.3 Setting up a CDN

12.1.4 Fine-tuning our APP

12.1.5 Understanding the .NET publishing modes

12.2 Creating a Windows VM server

12.2.1 Accessing Azure

12.2.2 Creating and setting up the Windows VM

12.2.3 Working with the VM public IP address