-
Notifications
You must be signed in to change notification settings - Fork 697
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
attempt to use local actions #10503
base: master
Are you sure you want to change the base?
attempt to use local actions #10503
Conversation
8565a7c
to
501bde6
Compare
e7c86c8
to
ec5cf51
Compare
First cut at overnight prerelease jobs now done. They also bring back Intel Macs, still without validate though (that awaits the tier-2 job). I also dropped |
ec5cf51
to
14e9a3c
Compare
Interestingly, it looks like i386 jobs are runnable in a container, although I'm not sure what limitations exist. Which means I can at least attempt to do them in Tier 2 as well. |
93e14b7
to
70663f8
Compare
Extremely experimental, and with all the limitations and restrictions I keep finding in GitHub Actions it'll probably fail in the messiest way it can. At present this is incomplete but sufficient to see if this has any chance of working to begin with. If it somehow does, I'll look into abstracting out the other sub-jobs, then making an overnight validate for Tier 2 platforms and probably a prerelease job (which would fix the recently revealed problem where if there is no need to rebase on merge, no prerelease is made).
70663f8
to
496b732
Compare
First cut at overnight Tier 2 validation added: Intel Macs, the validation we haven't been doing on Alpine, and i386 (Debian 11, the oldest version I could find on Docker Hub). No FreeBSD as yet, I still haven't dug into what it will take to get all this stuff into a Cirrus CI job (probably writing a script to do it all). I also need to wedge the i386 job into the prerelease jobs, I think. Probably the same way Tier 2 works: generalize the Alpine job into a containers job. |
I'm pushing forward on this first cut because of the prerelease workflows. Refinement, including likely debugging of scheduled workflows, can come later. I'm also trying to figure out if there's some hacky way around GitHub only sending notifications about scheduled workflows to the last user who edited the schedule. |
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.
Amazing, thanks!
But in a follow-up, we really need to sweep the less-relevant comments (like |
They're not entirely pointless: they mark the (IMO unnecessary except that GHA is stupid) duplications. |
well, it's too subtle. I'd appreciate something less playful and more direct. E.g. for the matrix, |
At this point I do not recommend merging this unless you have someone, preferably several someones, who understand it; otherwise your bus factor situation is looking pretty dire. If necessary I can expand the prerelease jobs out to full form and submit those separately, as they're the most urgent part of this and I don't want to leave you in a bad situation. |
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.
Let's put this PR away for the moment
Ehhh, GitHub Actions stuff is kinda always like that. It's usually not too miserable to make small tweaks to, but changes in design goals require rearchitecting, as I think you're running into with this! I haven't read over this with eagle eyes but it looks largely fine to me. A couple notes:
|
Extremely experimental, and with all the limitations and restrictions I keep finding in GitHub Actions it'll probably fail in the messiest way it can.
At present this is incomplete but sufficient to see if this has any chance of working to begin with. If it somehow does, I'll look into abstracting out the other sub-jobs, then making an overnight validate for Tier 2 platforms and probably a prerelease job (which would fix the recently revealed problem where if there is no need to rebase on merge, no prerelease is made).
Template B: This PR does not modify behaviour or interface
E.g. the PR only touches documentation or tests, does refactorings, etc.
Include the following checklist in your PR:
Is this a PR that fixes CI? If so, it will need to be backported to older cabal release branches (ask maintainers for directions).(No point in backporting, as even the LTS prerelease part has to live onmaster
.)