Hey y'all. I did a talk at Microsoft's .NET Conf 2017 yesterday. The video will be up on Channel 9 soon at this link.
DevOps with ASP.NET Core, EF Core, & TFS2017
DevOps is all about software delivery. Create an automated, streamlined path from development to testing to deployment - that's basically DevOps. Great. So how do you do it with ASP.NET Core and Entity Framework Core? How do you deploy the SQL Server schema? How do you deal with EF Core schema migrations? What about unit testing? How do you handle database connection strings? What about deployments to Azure? Don't worry. We've got ya covered. In this talk, Ben will walk you through creating an automated DevOps flow using Team Foundation Server 2017 (TFS2017) or Visual Studio Team Services that will allow you to build, test, and deploy your ASP.NET Core & EF Core application.
Here's a link to download the slides. Here's the link to download the code.
Here's the link to my TFS extension that I was using to edit connection strings in appsettings.json and do deployments of EF Core migrations.
Here's a quick description of the files in the source code zip: - Benday.DotNetConf folder This contains the source code for the sample including the git repo.
- create-aspnetcore-20-solution-with-efcore.bat This is the batch file that I use to create my solution/project structure including project references and NuGet package references. It takes one argument which is the name of the solution / namespace you want to create. For example, to create the source code, I called "create-aspnetcore-20-solution-with-efcore.bat Benday.DotNetConf".
- DotnetUtil.exe This is a utility that I wrote that knows how to add a NuGet package as a DotNetCliToolReference. This gets called by the batch script in order to set up the "dotnet ef" CLI.
- default-build.json This is the raw json of the TFS build definition. This is mostly just here for your reference. Good luck trying to get it imported into TFS. (LOL)
- default-release.json This is the raw json of the TFS release definition. This can be imported into TFS2017 through the web interface. Go to Releases and look for Import. It's pretty easy to get this into TFS.
Enjoy. Tweet at me if you get stuck.
-Ben
-- Looking for help with DevOps and Team Foundation Server 2017? Trying to get your head around the right software architecture for Entity Framework Core? Want some assistance getting your Agile / Scrum / Kanban life in order? We can help. Drop us a line at info@benday.com.