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

feat(ci): Collector jobs should fail on dependent job failure #33784

Merged
merged 4 commits into from
Apr 21, 2022

Conversation

armenzg
Copy link
Member

@armenzg armenzg commented Apr 20, 2022

In an attempt to reduce required checks (#33408), we merged jobs into less workflows and used collector jobs that would be marked as required (#33455).

Unfortunately, if one of the jobs we depend on fails, the collector job would be marked as Skipped which satisfies the Github required check. This allowed for the introduction of a regression on a PR earlier on the week (see https://github.com/getsentry/sentry/runs/6064646921?check_suite_focus=true).

This change makes each required check have a step which verifies the result of all dependent jobs. If any of them fails, the collector job fails as well.

In an attempt to reduce required checks (#33408), we merged jobs into less workflows and used collector jobs that would be marked as required (#33455).

Unfortunately, if one of the jobs we depend on fails, the collector job would be marked as Skipped which satisfies the Github required check. This allowed for the introduction of a regression on a PR earlier on the week (see https://github.com/getsentry/sentry/runs/6064646921?check_suite_focus=true).

This change makes each required check have a step which verifies the result of all dependent jobs. If any of them fails, the collector job fails as well.
@armenzg armenzg self-assigned this Apr 20, 2022
@armenzg
Copy link
Member Author

armenzg commented Apr 20, 2022

It seems that this also works for timed out jobs:
image

@armenzg armenzg added the Component: CI Continuous Integration pipeline (GitHub Actions) label Apr 20, 2022
@armenzg armenzg marked this pull request as ready for review April 20, 2022 16:39
@armenzg armenzg requested a review from a team as a code owner April 20, 2022 16:39
@armenzg armenzg enabled auto-merge (squash) April 20, 2022 17:12
@armenzg armenzg requested a review from asottile-sentry April 21, 2022 12:55
Copy link
Member

@asottile-sentry asottile-sentry left a comment

Choose a reason for hiding this comment

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

@armenzg armenzg merged commit 0213000 into master Apr 21, 2022
@armenzg armenzg deleted the armenzg/ci/collecting-jobs-to-fail branch April 21, 2022 13:15
armenzg added a commit that referenced this pull request Apr 27, 2022
Until now we have used skipping of steps in a job as a way of reducing CI usage when certain jobs should not be triggered depending on the files being touched.

Now that #33455 & #33784 have been merged, we now have collector jobs (backend/frontend jobs) that represent all the other jobs in them.

This change will make a variable number of jobs be skipped depending on the files being touched.
@github-actions github-actions bot locked and limited conversation to collaborators May 7, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Component: CI Continuous Integration pipeline (GitHub Actions)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants