Deployment is hard. There are too many manual steps. Let's at least enumerate them so everyone is on the same page.
Assuming all changes for the new release are commited, tests have been run and are passing, and you're happy with the state of things...
- Create a branch named
release
- Update
ReleaseNotes.md
, following the existing format - Bump the version number in
Directory.build.props
andappveyor.yml
- Create the NuGet packages (in the local solution root) for the new version:
dotnet pack --output .
- Test the NuGet packages! How to install NuGet package locally
- Push the
release
branch to GitHub and create a pull request - If the build succeeds, accept the pull request
- Create and push a tag from the new HEAD
git tag v#.#.#
andgit push --tags
- Create a new release using the tag
you just created and pasting in the release notes you just wrote up. Attach a copy of the latest
.nupkg
files generated above. - Push the new packages up to NuGet
dotnet nuget push