
Reviewed-by: Daniel Barboza <danielhb@linux.vnet.ibm.com> Tested-by: Daniel Barboza <danielhb@linux.vnet.ibm.com> On 02/14/2014 03:26 PM, Aline Manera wrote:
From: Aline Manera <alinefm@br.ibm.com>
Hi all,
I helped Daniel to apply the suggestions made on reviews and I am resending his patches.
v6: - Addressed Royce's comments made on v5
------------------------------------------------------------------------------ This patch set implements host storage devices management. It implements full CDROM device add, remove and update functionality. It implements basic Disk functionalities.
Changelog:
v5: - Addressed Aline's comments from her review in v4
v4: - Imports fix, author fix, pep8 fixes - Cut off HDD support - lxml changes in model/vms.py - test_model.py changes - add, update and remove cdroms - existing device name verification in model/vms.py - changed the code to use the new exception model
V3: - Using lxml to parse the XML information in model/vms.py - Addressed comments/suggestions from the ML in other files
V2: - Add devices to mockmodel and add test cases to rest API - Assign name automatically to new devices, if not passed by user - Fix minor errors
To test this contribution:
- get info of all storages (cdrom and disks) of a VM
curl -u <user> -H "Content-Type: application/json" -H "Accept: application/json" http://localhost:8000/vms/<vm_name>/storages -X GET
- add a new cdrom to a VM
curl -u <user> -H "Content-Type: application/json" -H "Accept: application/json" http://localhost:8000/vms/<vm_name>/storages -X POST -d'{"type": "cdrom", "path": "<path_to_iso>"}'
- get specific info from cdrom device
curl -u <user> -H "Content-Type: application/json" -H "Accet: application/json" http://localhost:8000/vms/<vm_name>/storages/<dev_name> -X GET
- delete a cdrom device from a VM
curl -u <user> -H "Content-Type: application/json" -H "Accet: application/json" http://localhost:8000/vms/<vm_name>/storages/<dev_name> -X DELETE
- update a cdrom device from a VM
curl -u <user> -H "Content-Type: application/json" -H "Accet: application/json" http://localhost:8000/vms/<vm_name>/storages/<dev_name> -X PUT -d '{"path":<path_to_iso>}'
Daniel Henrique Barboza (2): CDROM Management: API.md and externalized error messages CDROM Management: changes in tests/test_model.py
Rodrigo Trujillo (3): CDROM Management: Update controller and API.json for guest storages CDROM Management: Devices management model implementation CDROM Management: Guest vm storage devices mockmodel and rest api test cases
docs/API.md | 21 ++++ po/en_US.po | 70 +++++++++++- po/kimchi.pot | 70 +++++++++++- po/pt_BR.po | 70 +++++++++++- po/zh_CN.po | 70 +++++++++++- src/kimchi/API.json | 37 +++++++ src/kimchi/control/vm/storages.py | 49 ++++++++ src/kimchi/i18n.py | 12 ++ src/kimchi/mockmodel.py | 70 +++++++++++- src/kimchi/model/vmstorages.py | 221 +++++++++++++++++++++++++++++++++++++ tests/test_model.py | 61 ++++++++++ tests/test_rest.py | 75 +++++++++++++ 12 files changed, 817 insertions(+), 9 deletions(-) create mode 100644 src/kimchi/control/vm/storages.py create mode 100644 src/kimchi/model/vmstorages.py