Reviewed: https://review.openstack.org/272508 Committed: https://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=6791a8be69529cc9557761183ea8cb00d253fe51 Submitter: Jenkins Branch: master
commit 6791a8be69529cc9557761183ea8cb00d253fe51 Author: jichenjc <[email protected]> Date: Sat Jan 23 22:06:48 2016 +0800 Allow restore command with name param when we try to restore an instance, it's already deleted state, so we need to add 'delete=True' as default to restore command, otherwise, the search function can't find the instance whose state is deleted with the given name Change-Id: I81cdc46897d76333452069a691824264ad504518 Closes-Bug: 1534644 ** Changed in: python-novaclient Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1534644 Title: 'Nova restore <server>' accepts only ID of server, not its name Status in OpenStack Compute (nova): Invalid Status in python-novaclient: Fix Released Bug description: For softly-deleted instance 'nova restore <server>' command returns: root@node-7:~# nova restore vm1 ERROR (CommandError): No server with a name or ID of 'vm1' exists. Steps to reproduce: 1. On every controller and compute add the reclaim_instance_interval=86400 line to [DEFAULT] section of /etc/nova/nova.conf 2. Restart nova-api service on controllers and nova-compute service on computes 3. Create net01: net01__subnet, 192.168.1.0/24: neutron net-create net01 neutron subnet-create net01 192.168.1.0/24 --enable-dhcp --name net01__subnet 4. Boot instance vm1 in net01: NET_ID=$(neutron net-list | grep 'net01' | awk '{print $2}') nova boot --flavor m1.micro --image TestVM --nic net-id=$NET_ID --security-groups default vm1 5. Create a volume and attach it to an instance vm1: cinder create 10 --display-name test-volume --availability-zone nova VM_ID=$(nova show vm1 | grep '| id ' | awk '{print $4}') VOL_ID=$(cinder list | grep 'test-volume'| awk '{print $2}') nova volume-attach $VM_ID $VOL_ID /dev/vdb 6. Delete instance vm1: nova delete vm1 7. Check that instance vm1 is really in SOFT-DELETE state: root@node-7:~# curl -s -H "X-Auth-Token: $TOKEN" $NOVA_ENDPOINT/servers/395ae0d7-59d9-4475-876d-3da1d0acc430 {"server": {"status": "SOFT_DELETED", "updated": "2016-01-15T14:57:10Z", "hostId": "4ab2af2839510dd4a32c0c0225646b8ce4d865161930fd9d0d075c68", "OS-EXT-SRV-ATTR:host": "node-9.test.domain.local", "addresses": {"net01": [{"OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:b6:98:bc", "version": 4, "addr": "192.168.1.43", "OS-EXT-IPS:type": "fixed"}]}, "links": [{"href": "http://10.109.13.3:8774/v2/65d0c9e644ac4c518e76bc9922ef47ee/servers/395ae0d7-59d9-4475-876d-3da1d0acc430", "rel": "self"}, {"href": "http://10.109.13.3:8774/65d0c9e644ac4c518e76bc9922ef47ee/servers/395ae0d7-59d9-4475-876d-3da1d0acc430", "rel": "bookmark"}], "key_name": null, "image": {"id": "06c7e85d-5023-43ef-a738-8f9aef71fd7a", "links": [{"href": "http://10.109.13.3:8774/65d0c9e644ac4c518e76bc9922ef47ee/images/06c7e85d-5023-43ef-a738-8f9aef71fd7a", "rel": "bookmark"}]}, "OS-EXT-STS:task_state": null, "OS-EXT-STS:vm_state": "soft-delete", "OS-EXT-SRV-ATTR:instance_name": "instance-0000004b", "OS-SRV-USG:launched_at": "2016-01-15T1 4:53:52.000000", "OS-EXT-SRV-ATTR:hypervisor_hostname": "node-9.test.domain.local", "flavor": {"id": "11ecb4f1-144a-4bb9-96ff-89bedcd5acde", "links": [{"href": "http://10.109.13.3:8774/65d0c9e644ac4c518e76bc9922ef47ee/flavors/11ecb4f1-144a-4bb9-96ff-89bedcd5acde", "rel": "bookmark"}]}, "id": "395ae0d7-59d9-4475-876d-3da1d0acc430", "security_groups": [{"name": "default"}], "OS-SRV-USG:terminated_at": null, "OS-EXT-AZ:availability_zone": "nova", "user_id": "7f0fce3a7e3f479b9933eff3df35649d", "name": "vm1", "created": "2016-01-15T14:53:17Z", "tenant_id": "65d0c9e644ac4c518e76bc9922ef47ee", "OS-DCF:diskConfig": "MANUAL", "os-extended-volumes:volumes_attached": [{"id": "ebcbb2f9-5125-4ef7-a507-3b7dfaa997bd"}], "accessIPv4": "", "accessIPv6": "", "OS-EXT-STS:power_state": 4, "config_drive": "", "metadata": {}}}root@node-7:~# nova restore 395ae0d7-59d9-4475-876d-3da1d0acc430 8. Try to restore the previously-deleted instance with its name as an argument: nova restore vm1 The result is: ERROR (CommandError): No server with a name or ID of 'vm1' exists 9. Try to restore the previously-deleted instance again with its ID as an argument: nova restore 395ae0d7-59d9-4475-876d-3da1d0acc430 The result is: root@node-7:~# nova list | grep vm1 | 395ae0d7-59d9-4475-876d-3da1d0acc430 | vm1 | ACTIVE | - | Running | net01=192.168.1.43 | In total, Expected result: both name and ID of server are accepted and processed correctly by 'nova restore' command Actual result: only ID of server is accepted, not its name Nova version - http://paste.openstack.org/show/483603/ To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1534644/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

