Skip to content

Conversation

JohnTheGr8
Copy link
Member

@JohnTheGr8 JohnTheGr8 commented Jan 5, 2021

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 from AppVeyor 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 press Publish.

Note that I have removed post_build.ps1 as a post-build script of the main project because the script calls dotnet publish which has to build the main project again, and that would result in a build loop. I have also bumped PropertyChanged.Fody to 3.3.1 (which made this entire PR possible, see #248) and added SatelliteResourceLanguages to some plugin projects to reduce the output files.

Objective

  • merging into master will create a draft release that we can sanity-check and add release notes before publishing
  • publishing the release will create the tag and cause a new build that will update the release assets on github. We could skip this step, but I think it's better to have release assets that match those built from the release tag.

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 the public_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.

@JohnTheGr8 JohnTheGr8 added the enhancement New feature or request label Jan 5, 2021
@JohnTheGr8 JohnTheGr8 requested a review from jjw24 January 5, 2021 02:00
@JohnTheGr8 JohnTheGr8 self-assigned this Jan 5, 2021
@taooceros
Copy link
Member

A small question toward that, why not use Github Action?

@JohnTheGr8
Copy link
Member Author

A small question toward that, why not use Github Action?

either would work, but we went with appveyor, see the discussion here #35 (comment)

@jjw24
Copy link
Member

jjw24 commented Jan 6, 2021

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?

@jjw24 jjw24 marked this pull request as ready for review January 6, 2021 02:59
@jjw24 jjw24 linked an issue Jan 6, 2021 that may be closed by this pull request
@JohnTheGr8
Copy link
Member Author

this should be ready for review yeah? @JohnTheGr8

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.

Do we need to pin artifact published on master branch?

Not sure what you mean here, can you elaborate?

does this also solve plugin nuget release if no changes made?

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.

@JohnTheGr8 JohnTheGr8 requested a review from jjw24 January 6, 2021 22:44
@JohnTheGr8
Copy link
Member Author

rebased to resolve merge conflicts, @jjw24 have a look

@jjw24
Copy link
Member

jjw24 commented Jan 7, 2021

LGTM 👍

Can we create a separate issue for this:

I wanted to have PRs to master create and update draft releases

@jjw24 jjw24 merged commit 2b8c4c3 into Flow-Launcher:dev Jan 7, 2021
@JohnTheGr8
Copy link
Member Author

LGTM 👍

Can we create a separate issue for this:

I wanted to have PRs to master create and update draft releases

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)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fody block building

3 participants