bldc
bldc copied to clipboard
CI
Adds continuous integration via GitHub Actions to build firmware for different versions. The build_all
results are uploaded as artifacts. Right now I have it run on every push. Based on the release strategy, you could change it to PRs, etc. I am hoping this makes it easier for folks to test the 5.x branch without having to install an ARM build chain locally.
As a side note, I can also have it automatic upload release binaries to the GitHub release page after you tag a release. That way you could have 5.0.0-rc1
, 5.0.0-rc2
, etc.
This should be re-targeted to the dev_fw_5_03 branch.
@vedderb, is there any reason you don't want CI on vesc-fw/vesc-tool? There are open pull requests on both to add this.
Also, as there have been some issues with newer versions on the arm toolchain, this doesn't look like it currently locks that down. See https://github.com/vedderb/bldc/issues/210.
I would love automatic release candidates though. Especially for vesc tool.
CI would be great! It seems like a low-risk, high-reward upgrade. The results can always be ignored if the build server is broken, so there's not a strong downside which I see.
The upside is that PRs become more robust, and the chances of accidentally merging in broken code goes down, esp. if this is tied to unit tests. This is very valuable for when people would like to contribute small fixes, but don't have the hardware to test that their fixes do no harm.
@vedderb what are your thoughts on this PR?