-
Notifications
You must be signed in to change notification settings - Fork 141
Rudimentary continuous integration #942
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
base: master
Are you sure you want to change the base?
Conversation
7936826
to
6d411ee
Compare
Oh also I'll go on the record that YAML is way harder than Rust. 😵💫 |
Is it possible to check this before merge? |
I'm not sure. I don't know much about CI/CD pipelines (they're harder than they look 😭 ). This PR is the result of going through GitHub's pages on pipelines and this page from the Rust book. I tested it with Act, an open source program for running GitHub Actions locally. Linux works, but I couldn't test macOS and Windows because I only have Linux. I wrote the macOS pipeline based on research that mentioned that Homebrew can be used to install dependencies. My hunch is that the Linux pipeline will still work fine if committed, but macOS and Windows will require some more work. Luckily, if macOS and Windows fail, there will be logs from GitHub showing what needs to be fixed. That's how I figured out to disable those tests (except I used Act). |
Related to pop-os#921 COSMIC Files is cross platform but patches may inadvertently break non-Linux systems. Usually, these issues are easy to fix. This PR adds a simple CI pipeline so that contributors can use it as a guide to fix build failures. Co-authored-by: Horu <[email protected]>
5cbb8ee
to
ce3d4ab
Compare
|
||
jobs: | ||
build: | ||
runs-on: ${{ matrix.os }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would probably be easier to understand if you put the strategy part first, and this line just before the line steps
.
@joshuamegnauth54 this workflow seems to have some part in common with |
Related to #921
I tested this locally with nektos/act. Linux builds and passes tests. macOS needs work due to #921, which I'll try to fix soon. Windows doesn't build yet since I have to figure out how dependencies work for it.
This pipeline is definitely imperfect, but hopefully it's a good first step for ensuring platform specific code doesn't break.