"mac_prefix", "network_type",
"free_count", "reserved_count",
"map", "group_list", "inst_list",
- "external_reservations",
- ]
+ "external_reservations", "tags",
+ ]
G_FIELDS = [
"alloc_policy",
# Feature string for node evacuation with LU-generated jobs
_NODE_EVAC_RES1 = "node-evac-res1"
-ALL_FEATURES = frozenset([
+ALL_FEATURES = compat.UniqueFrozenset([
_INST_CREATE_REQV1,
_INST_REINSTALL_REQV1,
_NODE_MIGRATE_REQV1,
@return: a dictionary with jobs id and uri.
"""
- client = self.GetClient()
+ client = self.GetClient(query=True)
if self.useBulk():
bulkdata = client.QueryJobs(None, J_FIELDS_BULK)
"""
job_id = self.items[0]
- result = self.GetClient().QueryJobs([job_id, ], J_FIELDS)[0]
+ result = self.GetClient(query=True).QueryJobs([job_id, ], J_FIELDS)[0]
if result is None:
raise http.HttpNotFound()
return baserlib.MapFields(J_FIELDS, result)
class R_2_networks_name(baserlib.OpcodeResource):
- """/2/network/[network_name] resource.
+ """/2/networks/[network_name] resource.
"""
DELETE_OPCODE = opcodes.OpNetworkRemove
"dry_run": self.dryRun(),
})
+
class R_2_networks_name_connect(baserlib.OpcodeResource):
- """/2/network/[network_name]/connect.
+ """/2/networks/[network_name]/connect resource.
"""
PUT_OPCODE = opcodes.OpNetworkConnect
assert self.items
return (self.request_body, {
"network_name": self.items[0],
+ "dry_run": self.dryRun(),
})
+
class R_2_networks_name_disconnect(baserlib.OpcodeResource):
- """/2/network/[network_name]/disconnect.
+ """/2/networks/[network_name]/disconnect resource.
"""
PUT_OPCODE = opcodes.OpNetworkDisconnect
assert self.items
return (self.request_body, {
"network_name": self.items[0],
+ "dry_run": self.dryRun(),
+ })
+
+
+class R_2_networks_name_modify(baserlib.OpcodeResource):
+ """/2/networks/[network_name]/modify resource.
+
+ """
+ PUT_OPCODE = opcodes.OpNetworkSetParams
+
+ def GetPutOpInput(self):
+ """Changes some parameters of network.
+
+ """
+ assert self.items
+ return (self.request_body, {
+ "network_name": self.items[0],
})
+
class R_2_groups(baserlib.OpcodeResource):
"""/2/groups resource.
TAG_LEVEL = constants.TAG_NODEGROUP
+class R_2_networks_name_tags(_R_Tags):
+ """ /2/networks/[network_name]/tags resource.
+
+ Manages per-network tags.
+
+ """
+ TAG_LEVEL = constants.TAG_NETWORK
+
+
class R_2_tags(_R_Tags):
""" /2/tags resource.