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

Cloud Stack: More reliable retrying #1035

Merged
merged 1 commit into from
Sep 13, 2023

Conversation

julienduchesne
Copy link
Member

Closes #996
There have been reliability issues with stacks related to Terraform

Grafana.com has an asynchronous process that works well in the web but not so much in Terraform: While an API 500 in the web UI is not that annoying, since the stack shows up on the next refresh, it disrupts Terraform

In this PR, I make the stack creation process retry on pretty much every error
To test that everything works well, I added two test cases:

  • Tainting a stack to test that it can recreate right after deletion
  • Creating a stack in double, making sure we can't take-over a stack that already exists

Closes #996
There have been reliability issues with stacks related to Terraform
Grafana.com has a very asynchronous process that works well in the web but not so much in Terraform
While an API 500 in the web UI is not that annoying, since the stack shows up on the next refresh, it disrupts Terraform

In this PR, I make the stack creation process retry on pretty much every error
To test that everything works well, I added two test cases:
- Tainting a stack to test that it can recreate right after deletion
- Creating a stack in double, making sure we can't take-over a stack that already exists
@julienduchesne julienduchesne requested a review from a team as a code owner September 13, 2023 01:38
@github-actions
Copy link

In order to lower resource usage and have a faster runtime, PRs will not run Cloud tests automatically. To do so, a Grafana Labs employee must promote the Drone build.

For maintainers, it's better to run only the Cloud tests you need, rather than all of them. You can do so by setting the following parameter when promoting:

TESTARGS='-run=<testname>'

@julienduchesne julienduchesne merged commit bcbc194 into master Sep 13, 2023
4 checks passed
@julienduchesne julienduchesne deleted the julienduchesne/stack-support-taints branch September 13, 2023 13:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

409 Conflict sometimes when recreating tainted Cloud stacks
2 participants