Revision d654aae1
b/lib/rapi/client.py | ||
---|---|---|
971 | 971 |
("/%s/instances/%s/migrate" % |
972 | 972 |
(GANETI_RAPI_VERSION, instance)), None, body) |
973 | 973 |
|
974 |
def RenameInstance(self, instance, new_name, ip_check=None, name_check=None): |
|
975 |
"""Changes the name of an instance. |
|
976 |
|
|
977 |
@type instance: string |
|
978 |
@param instance: Instance name |
|
979 |
@type new_name: string |
|
980 |
@param new_name: New instance name |
|
981 |
@type ip_check: bool |
|
982 |
@param ip_check: Whether to ensure instance's IP address is inactive |
|
983 |
@type name_check: bool |
|
984 |
@param name_check: Whether to ensure instance's name is resolvable |
|
985 |
|
|
986 |
""" |
|
987 |
body = { |
|
988 |
"new_name": new_name, |
|
989 |
} |
|
990 |
|
|
991 |
if ip_check is not None: |
|
992 |
body["ip_check"] = ip_check |
|
993 |
|
|
994 |
if name_check is not None: |
|
995 |
body["name_check"] = name_check |
|
996 |
|
|
997 |
return self._SendRequest(HTTP_PUT, |
|
998 |
("/%s/instances/%s/rename" % |
|
999 |
(GANETI_RAPI_VERSION, instance)), None, body) |
|
1000 |
|
|
974 | 1001 |
def GetJobs(self): |
975 | 1002 |
"""Gets all jobs for the cluster. |
976 | 1003 |
|
b/test/ganeti.rapi.client_unittest.py | ||
---|---|---|
741 | 741 |
self.assertEqual(data["mode"], mode) |
742 | 742 |
self.assertEqual(data["cleanup"], cleanup) |
743 | 743 |
|
744 |
def testRenameInstanceDefaults(self): |
|
745 |
new_name = "newnametha7euqu" |
|
746 |
self.rapi.AddResponse("8791") |
|
747 |
job_id = self.client.RenameInstance("inst18821", new_name) |
|
748 |
self.assertEqual(job_id, 8791) |
|
749 |
self.assertHandler(rlib2.R_2_instances_name_rename) |
|
750 |
self.assertItems(["inst18821"]) |
|
751 |
|
|
752 |
data = serializer.LoadJson(self.rapi.GetLastRequestData()) |
|
753 |
self.assertEqualValues(data, {"new_name": new_name, }) |
|
754 |
|
|
755 |
def testRenameInstance(self): |
|
756 |
new_name = "new-name-yiux1iin" |
|
757 |
for ip_check in [False, True]: |
|
758 |
for name_check in [False, True]: |
|
759 |
self.rapi.AddResponse("24776") |
|
760 |
job_id = self.client.RenameInstance("inst20967", new_name, |
|
761 |
ip_check=ip_check, |
|
762 |
name_check=name_check) |
|
763 |
self.assertEqual(job_id, 24776) |
|
764 |
self.assertHandler(rlib2.R_2_instances_name_rename) |
|
765 |
self.assertItems(["inst20967"]) |
|
766 |
|
|
767 |
data = serializer.LoadJson(self.rapi.GetLastRequestData()) |
|
768 |
self.assertEqual(len(data), 3) |
|
769 |
self.assertEqual(data["new_name"], new_name) |
|
770 |
self.assertEqual(data["ip_check"], ip_check) |
|
771 |
self.assertEqual(data["name_check"], name_check) |
|
772 |
|
|
744 | 773 |
def testGetJobs(self): |
745 | 774 |
self.rapi.AddResponse('[ { "id": "123", "uri": "\\/2\\/jobs\\/123" },' |
746 | 775 |
' { "id": "124", "uri": "\\/2\\/jobs\\/124" } ]') |
Also available in: Unified diff