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

CI workflow for Pull Requests #259

Merged
merged 1 commit into from
Sep 1, 2022
Merged

CI workflow for Pull Requests #259

merged 1 commit into from
Sep 1, 2022

Conversation

zharinov
Copy link
Contributor

This will enable branch-level tests that are performed under 5 minutes.

Included tests:

  • lein test
  • Uberjar test
  • Native binary test (linux-only)

I've selected these tests because they seem comprehensive enough to me, so that you can be 95% confident it's ready for the release.

The entire CI workflow can be quite a big, so let's implement it with the smaller steps. This is the first one.

Ref: #248

@kkinnear kkinnear merged commit f9031d6 into kkinnear:master Sep 1, 2022
@kkinnear
Copy link
Owner

kkinnear commented Sep 1, 2022

So, If I create a PR myself, and the tests fail, what's next? Do I cancel (drop or whatever) that PR and create a new PR from scratch with the better code, or do I edit the PR and then the tests automatically run again when the PR changes?

@zharinov
Copy link
Contributor Author

zharinov commented Sep 1, 2022

No, you just push code fix commits to the same branch and tests will re-run. It's very convenient to use "Squash and merge" method which will make single commit in the base branch with the commit message matching the PR title.

image

@kkinnear
Copy link
Owner

kkinnear commented Sep 5, 2022

Thanks for the info, I tried out the workflow with my own PR #260 and it seems to work great! Note that I also changed the default branch from master to main while I was at it. I have updated the workflow so it matches main.

@zharinov zharinov deleted the pull-request-ci branch September 7, 2022 12:38
@kkinnear
Copy link
Owner

This is really great work! I used it for the first time (other than the test I did above), and it worked out really well. I even managed to recover the zprintl-1.2.5 and bring it local and run some additional testing on it just to be sure, and it worked flawlessly! I may need to send the intermediate linux zprintl-1.2.5 to someone to fix a serious bug before I'm ready to release the whole thing.

It seems like if I just leave a PR open from the branch on which I'm working, then every time I push that branch to GitHub I'll gets tests, and when it is the "final" push, I'll accept the PR into main and then pull main back down to my local repo for some final work.

Anyway, this is already starting to change the way I work, and I want to thank you for all of the effort you put into make all of this happen. It is very impressive, and I'm not sure I would have ever taken the time to figure out how to do it all. Thank you so much!

@arichiardi
Copy link
Contributor

Wanted to add, thanks for doing this!

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.

None yet

3 participants