Bug 1686155
| Summary: | Move v2v throttling capabilities to backend | |||
|---|---|---|---|---|
| Product: | Red Hat CloudForms Management Engine | Reporter: | Fabien Dupont <fdupont> | |
| Component: | V2V | Assignee: | James Wong <jwong> | |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Yadnyawalk Tale <ytale> | |
| Severity: | medium | Docs Contact: | Red Hat CloudForms Documentation <cloudforms-docs> | |
| Priority: | high | |||
| Version: | 5.10.1 | CC: | bthurber, simaishi | |
| Target Milestone: | GA | Keywords: | TestOnly, ZStream | |
| Target Release: | 5.11.0 | |||
| Hardware: | All | |||
| OS: | All | |||
| Whiteboard: | v2v | |||
| Fixed In Version: | 5.11.0.1 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1686877 (view as bug list) | Environment: | ||
| Last Closed: | 2019-12-13 15:00:32 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | V2V | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1683439, 1686877 | |||
In total 3 PRs are merged and they need to be back ported to hammer. https://github.com/ManageIQ/manageiq-content/pull/504 https://github.com/ManageIQ/manageiq/pull/18415 https://github.com/ManageIQ/manageiq/pull/18521 Verified, checked on 5.11.0.14.20190710225033_cb17ff0 |
Description of problem: Current implementation of throttling, based on Automate, and should be done in backend, because: - Automate sandbox execution of each step and so is expensive - Limited access to Automate model attributes - Current throttling mechanism is very clumsy - Have to ensure its singleton instance - Have to manage its life-cycle - Have to invoke the throttling logic in every state machine transitions and onEntry/onExit method - And only have chance to run when state changes - Automate isn’t intuitive in describing migration flow - The logic is littered across a bunch of various yaml and ruby files - Hard to understand the logic - Hard to maintain and enhance