awkward icon indicating copy to clipboard operation
awkward copied to clipboard

CI: use GHA for buildtest :hammer:

Open agoose77 opened this issue 3 years ago • 11 comments

This PR moves the buildtest CI to GitHub Actions.

My motivation for tackling this is that I am also moving the docs to GHA in a separate PR.

I've not used Azure before, and so this might not 100% match on the trigger logic. The exclusion logic looks as though it should never run, but clearly it does in main, so I must be missing something.

This PR sets the action to run on PR, like the tests.

agoose77 avatar Jul 16 '22 20:07 agoose77

Codecov Report

Merging #1550 (b0f834f) into main (9e17f29) will decrease coverage by 0.02%. The diff coverage is 62.09%.

Impacted Files Coverage Δ
src/awkward/_v2/_connect/cuda/__init__.py 0.00% <0.00%> (ø)
src/awkward/_v2/_connect/numexpr.py 88.40% <0.00%> (ø)
src/awkward/_v2/_connect/pyarrow.py 88.46% <0.00%> (ø)
src/awkward/_v2/numba.py 93.47% <0.00%> (ø)
src/awkward/_v2/operations/ak_from_avro_file.py 66.66% <0.00%> (ø)
src/awkward/_v2/operations/ak_local_index.py 100.00% <ø> (ø)
src/awkward/_v2/operations/ak_type.py 53.84% <0.00%> (ø)
src/awkward/_v2/operations/ak_transform.py 8.62% <8.62%> (ø)
src/awkward/_v2/contents/unionarray.py 86.16% <50.00%> (-0.11%) :arrow_down:
src/awkward/_v2/contents/bitmaskedarray.py 71.53% <53.84%> (+5.11%) :arrow_up:
... and 26 more

codecov[bot] avatar Jul 16 '22 20:07 codecov[bot]

@jpivarski not sure who else to tag on this. Thought perhaps Henry, but I see he's marked himself as "busy".

agoose77 avatar Jul 18 '22 14:07 agoose77

Does this entirely switch from Azure to GitHub Actions? I had thought there were some blockers preventing us from doing that, but it looks like all of the tests are running here. I'll need to change the required tests in main's branch protection before we can merge it, and the other active PRs should adopt this before they merge, so this will take a little time.

As such, let's ask @henryiii to review this. He's busy this week with Snowmass, but maybe he'll get a chance to look at it next week. Meanwhile, I'll spread the word that this switchover is happening and to be ready for it. This would be a good reason for Awkward Array project meetings (or just "Awkward Meetings"?), for us all to keep in touch with what everyone else is doing. We might have a regular time for that by the end of August.

jpivarski avatar Jul 18 '22 15:07 jpivarski

I'll look at it later, but pretty sure there weren't blockers, it was just work that had never been done. Azure is just a earlier design of GHA.

henryiii avatar Jul 18 '22 15:07 henryiii

Does this entirely switch from Azure to GitHub Actions?

Only buildtest, but the doctest will also be moved in a separate docs PR

agoose77 avatar Jul 18 '22 17:07 agoose77

I think I'll need to revisit this in the near future, once the docs are being built on GHA too. However, I think at that point we can look at whether an optimisation pass is necessary; right now, we will build one architecture 3X: once for docs, once for tests, and once for the wheel build test. Maybe that is OK, but regardless, a future problem!

agoose77 avatar Jul 19 '22 09:07 agoose77

I believe this is nearly ready to go. Just needs some input as to the triggers - do we want to run this on every PR push? Right now, that is what's happening on Azure, though I'm not sure if it is intentional

agoose77 avatar Jul 19 '22 13:07 agoose77

This is great, but let's actually merge it on an off-week. At the same time that it is merged, we'll have to switch the main branch protection to expect these tests, rather than the Azure ones, so everyone will need to merge this PR to get passing tests.

The first week of August (1‒5) is an off-week because several of us will be at CoDaS-HEP.

People with open PRs are you, me, @ianna, @ManasviGoyal, @aryan26roy (though he'll be done by August), and @martindurant.

jpivarski avatar Jul 19 '22 15:07 jpivarski

Mine can be merged, and I can iterate, right?

martindurant avatar Jul 19 '22 16:07 martindurant

Mine can be merged, and I can iterate, right?

Okay, I didn't know it was declared ready. I'll try merging it with main to run the tests again, and I'll give it another scan, then merge it.

jpivarski avatar Jul 19 '22 16:07 jpivarski

I just brought this up to date because it will be merged next week, probably right after our first group meeting. That would be a good way to warn everybody.

jpivarski avatar Aug 10 '22 00:08 jpivarski

@agoose77 Actually, I should be able to remove the azure-doctest-awkward.yml from this also (i.e. no more .ci directory and no Azure tests at all). The documentation tests are minimal compare with what you're doing in the docs branch, and that's where all the new development is going.

Any reason why you kept it? If you're leaving it up to me, I'll delete it and we'll go entirely onto GitHub Actions (good for simplicity).

jpivarski avatar Aug 17 '22 16:08 jpivarski

I removed the doctest CI in the docs branch, but I was leaving it here for now. I don't mind if you want to remove it here too!

agoose77 avatar Aug 17 '22 17:08 agoose77

I forgot about this; I'll have to do it on the weekend.

jpivarski avatar Aug 19 '22 21:08 jpivarski