Create and deploy releases from CI#275
Conversation
|
A small question toward that, why not use Github Action? |
either would work, but we went with appveyor, see the discussion here #35 (comment) |
4739da1 to
15ffe59
Compare
|
this should be ready for review yeah? @JohnTheGr8 Do we need to pin artifact published on master branch? does this also solve plugin nuget release if no changes made? |
Well, not exactly. I have yet to finalize the deployment conditions, as you have noticed. I wanted to have PRs to master create and update draft releases... but screw that, let's keep it simple. I'm pushing the last changes in a moment.
Not sure what you mean here, can you elaborate?
This was actually a non-issue. You can see that in any of the tag builds in appveyor, publishing to nuget is simply skipped without failing. Example here, scroll to the output end. |
plus some clean-up in post_build.ps1
88d2522 to
407d8f0
Compare
|
rebased to resolve merge conflicts, @jjw24 have a look |
|
LGTM 👍 Can we create a separate issue for this:
|
I tried to do it with appveyor's environment variables with no luck, and I'd rather not waste more time on this... I think just pulling the exe from appveyor artifacts is good enough. So, let's not. It also makes it possible to update the current stable release when opening a new release PR to master without a version bump (like we had with #260 until recently) |
This is the continuation of the work done in #35 back in May.
Changes
The
post_build.ps1script has been repurposed to be called fromAppVeyorto create a self-contained version of the project. Squirrel artifacts are deployed to Github as a draft release, which means the only manual work for a release is to edit the draft release with release notes and pressPublish.Note that I have removed
post_build.ps1as a post-build script of the main project because the script callsdotnet publishwhich has to build the main project again, and that would result in a build loop. I have also bumpedPropertyChanged.Fodyto3.3.1(which made this entire PR possible, see #248) and addedSatelliteResourceLanguagesto some plugin projects to reduce the output files.Objective
Todo
I open this PR as a draft with my own Github API credentials so that you guys can see/test that it works as expected and give your feedback. You can see that
AppVeyorhas produced all the expected artifacts and that they have been deployed to a Github release on my fork (which I manually released).Before we can merge this, @jjw24 I will need a Github token with thepublic_reposcope, encrypted by AppVeyor to replace my own. I will also need to add the conditional to only deploy to Github from the master branch.