-
-
Notifications
You must be signed in to change notification settings - Fork 445
Create and deploy releases from CI #275
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
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.ps1
script has been repurposed to be called fromAppVeyor
to 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.ps1
as a post-build script of the main project because the script callsdotnet publish
which has to build the main project again, and that would result in a build loop. I have also bumpedPropertyChanged.Fody
to3.3.1
(which made this entire PR possible, see #248) and addedSatelliteResourceLanguages
to 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
AppVeyor
has 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_repo
scope, encrypted by AppVeyor to replace my own. I will also need to add the conditional to only deploy to Github from the master branch.