Fix: Add configurable timeout for VM deletion cleanup (#300)#346
Merged
ppc64le-cloud-bot merged 1 commit intoppc64le-cloud:mainfrom Mar 14, 2026
Merged
Conversation
Contributor
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mkumatag The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
- Add cleanup_timeout config option (default: 10m) - Implement timeout mechanism in Cleanup() method - Add ERROR state detection and retry logic - Provide graceful failure with clear error messages - Update documentation and auto-generated code - Backward compatible with existing configurations Fixes issue 300
3c61176 to
a87f4b0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Fixes #300
When IBM Cloud PowerVS instance deletion fails during cleanup (e.g., VM enters ERROR state), Packer's cleanup process enters an infinite loop, blocking execution indefinitely. This causes CI/CD pipelines to hang and requires manual intervention.
Solution
Added a configurable
cleanup_timeoutoption with intelligent ERROR state detection and graceful failure handling:cleanup_timeoutfield (default: "10m")pollUntil()helper for consistencyChanges
CleanupTimeoutconfiguration field toRunConfigStepCreateInstance.Cleanup()methodDefaultCleanupTimeout(10m),CleanupPollInterval(10s)Usage Example
Benefits
Testing
Files Modified
builder/powervs/common/run_config.go(+20 lines)builder/powervs/step_create_instance.go(+87 lines, -15 lines)builder/powervs/builder.go(+14 lines, -1 line)builder/powervs/builder.hcl2spec.go(+2 lines, auto-generated)docs-partials/builder/powervs/common/RunConfig-not-required.mdx(+7 lines, auto-generated)Total: +115 insertions, -15 deletions across 5 files