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

autoupdate: reconcile rollout status and add strategy interface #49735

Merged
merged 4 commits into from
Dec 6, 2024

Conversation

hugoShaka
Copy link
Contributor

@hugoShaka hugoShaka commented Dec 3, 2024

First PR implementing automatic update progress driven by the auth server.

The PR might look large but it only has ~250 lines of code, the rest of the diff is caused by large table tests and generated content.

To make review a bit easier I only added the rolloutStrategy interface in the PR. Two PRs will follow implementing the time-based and halt-on-error strategies.

I also added new fields to the rollout status groups in order to track the initial rollout config. Currently the rollout is created with a config and does not change, even if the user edits the schedules. I will address this in a subsequent PR, very likely by adding a rollout status reset call.

Also, the client will still reject versions using the regular schedule, I will life the restriction once we have a working regular schedule and both strategies implementations are merged.

Part of: RFD-184

Goal (internal): https://github.com/gravitational/cloud/issues/10289

@hugoShaka hugoShaka requested review from sclevine and vapopov December 3, 2024 22:59
@hugoShaka hugoShaka added the no-changelog Indicates that a PR does not require a changelog entry label Dec 4, 2024
// config_start_hour to initiate update
int32 config_start_hour = 7;
// config_wait_days after last group succeeds before this group can run. This can only be used when the strategy is "halt-on-failure".
int64 config_wait_days = 9;
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: int64 config_wait_days = 8;

@hugoShaka hugoShaka force-pushed the hugo/rollout-progress-common branch from 8c41768 to 06d909d Compare December 6, 2024 00:05
@hugoShaka hugoShaka force-pushed the hugo/rollout-progress-common branch from 06d909d to 296b736 Compare December 6, 2024 21:29
@hugoShaka hugoShaka enabled auto-merge December 6, 2024 21:29
@hugoShaka hugoShaka disabled auto-merge December 6, 2024 21:37
@hugoShaka hugoShaka enabled auto-merge December 6, 2024 21:40
@hugoShaka hugoShaka added this pull request to the merge queue Dec 6, 2024
Merged via the queue into master with commit 5845919 Dec 6, 2024
43 checks passed
@hugoShaka hugoShaka deleted the hugo/rollout-progress-common branch December 6, 2024 22:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-changelog Indicates that a PR does not require a changelog entry size/lg
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants