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

DaemonSet can succeed before rollout finishes #288

Closed
KnVerey opened this issue May 4, 2018 · 2 comments
Closed

DaemonSet can succeed before rollout finishes #288

KnVerey opened this issue May 4, 2018 · 2 comments
Assignees

Comments

@KnVerey
Copy link
Contributor

KnVerey commented May 4, 2018

Bug report

We've seen DaemonSet deploy succeed when the DS was actually only partially rolled out.

Our current success check looks like this:

    def deploy_succeeded?
      return false unless exists?
      rollout_data["desiredNumberScheduled"].to_i == rollout_data["currentNumberScheduled"].to_i &&
      rollout_data["desiredNumberScheduled"].to_i == rollout_data["numberReady"].to_i &&
      current_generation == observed_generation
    end

A you can see, it isn't looking at updatedNumberScheduled, so it will succeed the first time during the rollout that full availability is (temporarily) reached. Since DS can be configured to roll out in batches, this state can happen multiple times in the middle of the rollout.

@dturn @klautcomputing @mkobetic

@karanthukral
Copy link
Contributor

Merged

@mkobetic
Copy link
Contributor

Ironically, fixing this bug will probably make the short term cluster-services pain worse, but that needs to be fixed elsewhere.

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

No branches or pull requests

3 participants