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: add some kind of error/failure-handling ability to promotion processes #3228

Closed
krancour opened this issue Jan 8, 2025 Discussed in #3227 · 4 comments
Closed

feat: add some kind of error/failure-handling ability to promotion processes #3228

krancour opened this issue Jan 8, 2025 Discussed in #3227 · 4 comments

Comments

@krancour
Copy link
Member

krancour commented Jan 8, 2025

Discussed in #3227

@dbason
Copy link

dbason commented Jan 16, 2025

The steps in the discussion seem reasonable. One additional ask would be the ability to run steps if an analysisTemplate fails, or have that also result in the promotion failure steps being run. The usecase for this would be setting up automated rollbacks in the event of a promotion or analysisRun failure.

Useful information to include the ctx for the promotion would be the step it failed on and the freight prior to promotion.

@krancour
Copy link
Member Author

@dbason #2972 might be closer to what you're looking for.

@dbason
Copy link

dbason commented Jan 30, 2025

Yup that works for the automated rollback. Would still like the ability to run a separate step on failure to trigger a slack webhook notification.

@jessesuen
Copy link
Member

Copying over @krancour's proposal from the discussion from which this issue was created

Promotions stop on the first failure, so you wouldn't reach your http step, but I think your use case seems perfectly valid. I think we'd first need to introduce one or more of the following:
A step-level option that indicates the Promotion may continue even if the step fails. (Although I think most processes would then encounter additional failures on subsequent steps, this might not be as useful as it sounds at first.)
Something like "catch" to define a separate sequence of steps for when the main process fails.
Something like "finally" to define a separate sequence of steps that runs no matter what.

After some more discussion, we favor something more like GitHub Action's status check functions, which is what is being proposed in #3639.

Closing in favor of that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants