Skip to content

Conversation

@tiennou
Copy link
Contributor

@tiennou tiennou commented May 27, 2021

This moves all our CI infrastructure over to Github Actions and removes Travis from the equation, with a matrix of Ubuntu/macOS vs. Ruby 2.4/2.5/2.6/head.

Note that I cherrypicked one commit from #56 to handle Ruby 3/head, and that I've run the actions while pushing to my fork's master branch — see here for the runs.

Loosely inspired from #47 (had an issue with finding libclang on Linux).


name: Ruby ${{ matrix.ruby }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
continue-on-error: ${{ endsWith(matrix.ruby, 'head') || matrix.ruby == 'debug' }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is "debug" left over from some other testing? Is the endsWith necessary? Wouldn't matrix.ruby match head exactly?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a verbatim copy-paste from the documentation, where there's much more than MRI Ruby handled. I'm tempted to keep it as-is for future-proofing, but I'll gladly defer to your preference.

@tiennou
Copy link
Contributor Author

tiennou commented May 28, 2021

Updated to have builds against multiple LLVM versions. I've moved the macOS build out of the matrix so we don't end up with 40+ jobs as well.

Looks like the PR picked up the workflow already 👍.

@carlosmn
Copy link
Member

carlosmn commented Jun 3, 2021

It looks like Ruby 2.6 sometimes fails to grab all the groups, but somewhat inconsistently. I wonder what's up with that and whether it's something we need to/can fix.

@carlosmn carlosmn merged commit 1e4ce9b into libgit2:master Jun 3, 2021
@tiennou tiennou deleted the ci/gh-actions branch June 3, 2021 07:35
@tiennou
Copy link
Contributor Author

tiennou commented Jun 3, 2021

Yeah, I suspect it's spotty because of stuff like /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/HEAD-20210603-2774-1tb1dgk/types.h:36:1: error: unknown type name 'GIT_BEGIN_DECL', causing whatever "group" header was currently being processed to be entirely missing. I still haven't pinpointed if it's a clang bug that causes it to read an include as a 0-length file, or a clobbering issue on our side, but I know I've seen utterly nonsensical stuff, like unknown type name 'ypere'.

I have a patch that implements a retry loop around that to alleviate this issue, and I might upstream it separately.

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.

2 participants