Open JamieSinn opened 2 years ago
@JamieSinn, I could probably help with this. It's been a while since I've touched anything .NET, so if you could outline the build process, I could put together a github actions for it
That'd be awesome - currently there's just a build for CI tests to ensure that we don't break functionality: https://github.com/JamieSinn/CSA-USB-Tool/blob/master/.github/workflows/dotnet.yml
Ideally the build process would work like this:
I'm debating using Innosetup - but because this is designed to run in portable mode too - I don't want to make it a requirement. TBD on that.
Well, I know some of those words.... (as I said, been out of the .net world for most of the last decade).
Having said that, triggering on push is incredibly easy (and limiting it to a specific commit message should be easy enough). Zipping up the output should be easy enough. Pushing a release with artifacts can be done with https://github.com/softprops/action-gh-release), though getting the latest release and auto-incrementing the release number is a bit more complicated (I haven't found a pre-built action to do it.. yet).
Would you be open to manually pushing the tag (via git or the Github UI) and having that trigger the action to build and attach the zip?
I'm not familiar with Innosetup. How would it change things?
If you want to chat about it more synchronously, feel free to ping me on the CSA slack
It'd be nice to have GitHub actions to handle the release process, where on a new tag being pushed - it'll run a build and publish the CSAUSBTool.Base to GH Packages/NuGet, along with final output binary being built into an installer.