You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks for coming up with a plan for this. I agree the number of jobs is high at the moment and there's some unnecessarily duplication.
I think your description of the current situation is entirely correct.
For the proposed changes, I worry that would create too much of a difference between PRs raised by us, and PRs raised from forks. I like your suggestion on some of the cases of push only for main and v1, and pull-request for all. I think that would be a good system to use for all workflows in fact.
Ideally sort the jobs in integration-testing from the more likely to fail to the less likely to fail, and make the latter conditional on the former.
I don't have any opinion on this except that won't this cause things to slow down by delaying the start of some jobs? Or does it start them all but then kill some jobs if others fail?
I don't have any opinion on this except that won't this cause things to slow down by delaying the start of some jobs? Or does it start them all but then kill some jobs if others fail?
I was thinking that it would delay them. I believe the total runtime would not change by much (maybe a few minutes), but it would ensure that we have enough capacity to run multiple workflows in parallel, thus allowing multiple people to get a fair share of the compute resource.
I know we can fail the jobs within a matrix build (strategy: fail-fast), but I would have to take a look for cross-job failure. I think there is no option across workflows.
I worry that would create too much of a difference between PRs raised by us, and PRs raised from forks.
This applies only to Change pr-checks.yml to be only on push (maybe rename to linting?), right? In all other cases we should be able to analyze the forks since we run on: pull-request.
As you say, maybe having consistent triggers for all workflows might be easier, as we keep it simple and consistent.
I was thinking that it would delay them. I believe the total runtime would not change by much (maybe a few minutes), but it would ensure that we have enough capacity to run multiple workflows in parallel, thus allowing multiple people to get a fair share of the compute resource.
I think let's try it and see what change it makes to the overall runtime.
I worry that would create too much of a difference between PRs raised by us, and PRs raised from forks.
This applies only to Change pr-checks.yml to be only on push (maybe rename to linting?), right? In all other cases we should be able to analyze the forks since we run on: pull-request.
As you say, maybe having consistent triggers for all workflows might be easier, as we keep it simple and consistent.
Yes, that comment was only applying to pr-checks.yml. I think having consistent triggers for all of them makes sense, for ease and because I think they all have the same requirements.
I would probably additionally copy these two jobs check-node-modules: and check-js as pre-condition for all the Integration Testing jobs. These are good sanity checks that, and if they fail, we cannot rely on the results of the integration testing.
Activity
robertbrignull commentedon Sep 11, 2020
Thanks for coming up with a plan for this. I agree the number of jobs is high at the moment and there's some unnecessarily duplication.
I think your description of the current situation is entirely correct.
For the proposed changes, I worry that would create too much of a difference between PRs raised by us, and PRs raised from forks. I like your suggestion on some of the cases of
pushonly formainandv1, andpull-requestfor all. I think that would be a good system to use for all workflows in fact.I don't have any opinion on this except that won't this cause things to slow down by delaying the start of some jobs? Or does it start them all but then kill some jobs if others fail?
marcogario commentedon Sep 15, 2020
I was thinking that it would delay them. I believe the total runtime would not change by much (maybe a few minutes), but it would ensure that we have enough capacity to run multiple workflows in parallel, thus allowing multiple people to get a fair share of the compute resource.
I know we can fail the jobs within a matrix build (
strategy: fail-fast), but I would have to take a look for cross-job failure. I think there is no option across workflows.This applies only to
Change pr-checks.yml to be only on push (maybe rename to linting?), right? In all other cases we should be able to analyze the forks since we runon: pull-request.As you say, maybe having consistent triggers for all workflows might be easier, as we keep it simple and consistent.
robertbrignull commentedon Sep 15, 2020
I think let's try it and see what change it makes to the overall runtime.
Yes, that comment was only applying to
pr-checks.yml. I think having consistent triggers for all of them makes sense, for ease and because I think they all have the same requirements.Reduce triggers in workflows
Reduce triggers in workflows
marcogario commentedon Sep 21, 2020
I would probably additionally copy these two jobs
check-node-modules:andcheck-jsas pre-condition for all theIntegration Testingjobs. These are good sanity checks that, and if they fail, we cannot rely on the results of the integration testing.