GabrielBrascher opened a new pull request #5101:
URL: https://github.com/apache/cloudstack/pull/5101


   ### Description
   
   Over the past years, I have seen some confusion regarding which command to 
use when changing a VM's offering. Users tend to choose always the API command 
`changeServiceForVirtualMachine` and are not aware of `scaleVirtualMachine`. On 
the best case, the user knows that both commands exist but is not sure about 
which one to choose.
   
   This PR proposes some enhancements on the documentation of API commands 
`changeServiceForVirtualMachine` and `scaleVirtualMachine`. One of the major 
differences of both is that `scaleVirtualMachine` takes into account disk 
offerings, and also resizes the volume if necessary while 
`changeServiceForVirtualMachine` focuses only on updating the "compute" 
offering. 
   
   This leads to issues and inconsistencies where a client expects the root 
volume to have its disk offering updated matching the new Service offering; 
however, it is not changed and it gets to a point where VM has an offering and 
the volume another.
   
   #### 1. changeServiceForVirtualMachine
   From:
   ~~~
   Changes the service offering for a virtual machine.
   The virtual machine must be in a "Stopped" state for this command to take 
effect.
   ~~~
   
   To:
   ~~~
   Changes the service offering for a virtual machine.
   The virtual machine must be in a "Stopped" state for this command to take 
effect.
   Note that it only changes the VM's compute offering and it does not update 
the root volume offering.
   If the Service Offering has a root disk size the volume will be resized only 
if using API command 'scaleVirtualMachine'.
   ~~~
   
   
   
   #### 2. Scale Virtual Machine documentation
   From:
   ~~~
   Scales the virtual machine to a new service offering.
   ~~~
   
   To:
   ~~~
   Scales the virtual machine to a new service offering.
   This command also takes into account the Volume and it may resize the root 
disk size according to the service offering.
   ~~~
   
   ### Types of changes
   
   - [ ] Breaking change (fix or feature that would cause existing 
functionality to change)
   - [ ] New feature (non-breaking change which adds functionality)
   - [ ] Bug fix (non-breaking change which fixes an issue)
   - [X] Enhancement (improves an existing feature and functionality)
   - [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
   
   ### Feature/Enhancement Scale or Bug Severity
   
   #### Feature/Enhancement Scale
   
   - [ ] Major
   - [X] Minor
   
   #### Bug Severity
   
   - [ ] BLOCKER
   - [ ] Critical
   - [ ] Major
   - [ ] Minor
   - [ ] Trivial
   
   
   ### Screenshots (if appropriate):
   N/A
   
   ### How Has This Been Tested?
   <!-- Please describe in detail how you tested your changes. -->
   <!-- Include details of your testing environment, and the tests you ran to 
-->
   <!-- see how your change affects other areas of the code, etc. -->
   N/A
   
   <!-- Please read the 
[CONTRIBUTING](https://github.com/apache/cloudstack/blob/main/CONTRIBUTING.md) 
document -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to