This post is the first post in a series dedicated to AppVeyor. AppVeyor is a powerful and flexible cloud base continuous delivery service for windows.

We started using AppVeyor for a continuous integration project a few days ago and the experience so far has been truly amazing! That project is currently using TeamCity but we are feeling that TeamCity is getting too bloated for us. We spend way too much time configuring builds in the backend and on top of that, constantly managing the servers, agents, and updates quickly became a pain.

With AppVeyor, you can describe the complete build process, including tests, packaging and publishing in a single YAML file that belongs with the code. That means that the configuration is easily accessible and maintainable. The concept is simple but extremely powerful and similar to what we use in the ruby community with TravisCI.

I will be describing in the series some of the many useful features and gotchas that I found during our migration to AppVeyor.


There is not much documentation on what the flag publish_nuget is actually doing so let me explain what I came up with:


  publish_nuget: true


The flag publish_nuget, when set to true in the appveyor.yml file does the following:

It’s important to understand that this flag WILL NOT package your project automatically if a corresponding .nuspec file cannot be found.

Hope that helps!