-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
Our AppVeyor CI build has been flaky for a while now, which causes unnecessary complication to making changes, and with different permissions to the GitHub repository makes being able to do things like retry a build difficult to achieve despite write access to the repo.
As a stop-gap measure, I added a Windows CI using GitHub Actions in #979 to give an alternative view of whether the project is building successfully.
The question is, what should we do to push forward and get CI stable again so that contributors can be confident in changes they submit?
Two possible approaches include:
- Fix the AppVeyor CI and update the permissions so those with write access to the repo can do things like retry builds.
- Move away from AppVeyor, and use GitHub Actions instead.
Cards on the table, I'm in favour of item 2 because I use Actions exclusively for my own open source projects and at work, and I'm a big fan of having one CI/CD system, rather than multiples. It also has the benefit of allowing us to build and test on Linux, macOS and Windows in a single CI/CD system.
I am however happy to go with the majority position if that is to keep the status quo of AppVeyor.
If we decided to move to GitHub Actions, the following things are missing from the basic one I've set up already:
- The build doesn't yet work for macOS and Linux;
- The created NuGet packages are missing the appropriate SemVer;
- The build isn't currently triggered by tags (and doesn't do any tagging either).
- Something like GitHubActionsTestLogger needs adding to show test results in the build logs.
- NuGet packages aren't published anywhere.