This blog was motivated by a great question on our support forum: "Can I use Shippable with a C# project?". My knee-jerk reaction was to tell him to wait for our imminent support for Windows containers. However, in my previous startup, we had built a cross-platform Xamarin.Forms based mobile app in C# and sheer curiosity provoked me to look at the latest state of Mono.
Mono is an open source implementation of Microsoft's .NET Framework. I was thrilled to discover that Ubuntu was in the list of supported Linux distributions. I immediately posted a response on the support issue asking the customer to use a custom image based off Ubuntu with the Mono runtime in it. That's when a kind customer, Kyle Dodson, Co-Founder, CTO at @ZapicInc posted an even better response that he had this scenario working on Shippable and he laid out his approach succintly. You can find his excellent response here. That eventually led to a discussion between Kyle and me about partnering for a blog with the intention of helping other customers jumpstart their C# CI efforts and the rest is history. I would like to thank Kyle for contributing to the sample and his deep technical know-how.
This blog is first in a series of articles and is basically a tutorial on how to do CI of a C# application using Shippable powered by Linux containers. In the next post, we will cover CI/CD of an ASP.NET application running in a Linux container on a K8s cluster on AKS.
Read the full blog, Tutorial: CI of .NET Framework apps in Linux Containers