tee8z / doppler

A tool for building out a local regtest environment
Creative Commons Zero v1.0 Universal
38 stars 6 forks source link

initial GitHub Release workflow #76

Open thinkmassive opened 4 months ago

thinkmassive commented 4 months ago

Fixes #57

Using cargo-dist turned out to be far less work and provides a lot more features...

Install with cargo install cargo-dist. This isn't required for CI, but you may want it installed to preview builds and/or modify settings. Excellent docs in the cargo-dist "book".

To create a release, simply push a tag with a version string. Here's a sample release of your latest master tagged as v0.1.0. You can also preview locally before committing to a public release, with cargo dist plan.


Original description below (branch was replaced, no longer applicable)

Runs cargo to build binaries for Linux (x86 w/glibc) and MacOS (x86 & ARM).

~Prepares a draft GitHub Release using softprops/action-gh-release, which contains an archive for each target platform, and a release description that can be edited then published with a button press. Each archive contains platform-specific binaries (doppler & parsetest), and common versions of LICENSE, README.md, and doppler_files.~

~Here's a sample release.~

~Let me know if you prefer a different arrangement of files for download, like putting the common (plaintext) files into their own archive and removing them from the platform-specific archives, or using different formats for certain archives, etc.~

While working on this, I came across cargo-dist that seems like it might be a better all-in-one solution for packaging and release generation. For an example workflow, see LNDK. If you're interested in that, let me know and I'll add it.

thinkmassive commented 2 months ago

Glad to help! I have another WIP branch for consolidating the scripts into a single file, which should also be included in the release tarball. Assuming that one looks good to you (I'll open a PR in the next couple days) I should have this one ready for final review by end of week.