Skip to content
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

Add CI #12

Merged
merged 13 commits into from
Sep 20, 2024
Merged

Add CI #12

merged 13 commits into from
Sep 20, 2024

Conversation

zephraph
Copy link
Owner

@zephraph zephraph commented Sep 19, 2024

This PR aims to add a build process for the rust binary part of this library. It'll upload that binary to the artifact store after its build. When a PR is merged into master a GitHub release will be generated for all the platform binaries.

I went through a lot of iterations of caching strategies. Here's how it works:

  • There's a Check job that runs cargo check, but only after checking if there's been any changes to rust files and configuration. If there hasn't been, once check is done the individual jobs run. If there has been then the individual platform builds are skipped.

In the individual platform builds, where possible I cached their dependency installs (e.g. cargo-xwin).

I only use two platforms: ubuntu-latest and macos-latest. Windows is cross compiled on ubuntu-latest via cargo-xwin and aarch64 is cross compiled on the (presumably) x86 mac server.

@zephraph zephraph force-pushed the add-ci branch 6 times, most recently from e80f92d to afcd954 Compare September 19, 2024 19:35
Includes cross compliation and a release process
Ran into an issue where one OS build was missing a dep and caused all the other ones to be canceled. I want to be able to see which succeed/fail individually in development, but consolidate them all in main.
I hate that GitHub won't let you just end a test with success without this unfortunate hack.
@zephraph zephraph force-pushed the add-ci branch 2 times, most recently from 2e57ca6 to 86edfa4 Compare September 19, 2024 23:46
@zephraph zephraph marked this pull request as ready for review September 20, 2024 00:17
@zephraph zephraph merged commit 9b590d9 into main Sep 20, 2024
5 checks passed
@zephraph zephraph deleted the add-ci branch September 20, 2024 00:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant