-
Notifications
You must be signed in to change notification settings - Fork 837
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
DataSourceAzure: fix bug where reported ready marker file is being written before report ready in preprovisioning #590
DataSourceAzure: fix bug where reported ready marker file is being written before report ready in preprovisioning #590
Conversation
…github.com:johnsonshi/cloud-init into azure-report-diagnostic-event-refactor-and-cleanup
…ropagation and clean up
…ing false and not propagating exc
…o after successful report ready
@anhvoms for awareness |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good, thanks! A few style/logging Qs inline.
…o azure-fix-bug-reported-ready-marker-file
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks Johnson, this looks good to me. I particularly appreciate the clear and complete testing code, it made it much easier to determine whether or not you had modified behaviour intentionally!
Proposed Commit Message
DataSourceAzure: Write reported ready marker file after report ready in preprovisioning
DataSourceAzure previously writes the preprovisioning
reported ready marker file before it goes through the
report ready workflow. On certain VM instances, the
marker file is successfully written but then reporting
ready fails.
Upon rare VM reboots by the platform, cloud-init sees
that the report ready marker file already exists.
The existence of this marker file tells cloud-init
not to report ready again (because it mistakenly
assumes that it already reported ready in
preprovisioning).
In this scenario, cloud-init instead erroneously
takes the reprovisioning workflow instead of
reporting ready again.
Additional Context
Additional context is already in the proposed commit message.
Test Steps
Checklist: