MCPcopy
hub / github.com/retspen/webvirtcloud / networks

Function networks

networks/views.py:12–60  ·  view source on GitHub ↗

:param request: :return:

(request, compute_id)

Source from the content-addressed store, hash-verified

10
11
12def networks(request, compute_id):
13 """
14 :param request:
15 :return:
16 """
17
18 if not request.user.is_authenticated():
19 return HttpResponseRedirect(reverse('index'))
20
21 if not request.user.is_superuser:
22 return HttpResponseRedirect(reverse('index'))
23
24 error_messages = []
25 compute = get_object_or_404(Compute, pk=compute_id)
26
27 try:
28 conn = wvmNetworks(compute.hostname,
29 compute.login,
30 compute.password,
31 compute.type)
32 networks = conn.get_networks_info()
33
34 if request.method == 'POST':
35 if 'create' in request.POST:
36 form = AddNetPool(request.POST)
37 if form.is_valid():
38 data = form.cleaned_data
39 if data['name'] in networks:
40 msg = _("Pool name already in use")
41 error_messages.append(msg)
42 if data['forward'] == 'bridge' and data['bridge_name'] == '':
43 error_messages.append('Please enter bridge name')
44 try:
45 gateway, netmask, dhcp = network_size(data['subnet'], data['dhcp'])
46 except:
47 error_msg = _("Input subnet pool error")
48 error_messages.append(error_msg)
49 if not error_messages:
50 conn.create_network(data['name'], data['forward'], gateway, netmask,
51 dhcp, data['bridge_name'], data['openvswitch'], data['fixed'])
52 return HttpResponseRedirect(reverse('network', args=[compute_id, data['name']]))
53 else:
54 for msg_err in form.errors.values():
55 error_messages.append(msg_err.as_text())
56 conn.close()
57 except libvirtError as lib_err:
58 error_messages.append(lib_err)
59
60 return render(request, 'networks.html', locals())
61
62
63def network(request, compute_id, pool):

Callers

nothing calls this directly

Calls 6

wvmNetworksClass · 0.90
AddNetPoolClass · 0.90
network_sizeFunction · 0.90
get_networks_infoMethod · 0.80
create_networkMethod · 0.80
closeMethod · 0.45

Tested by

no test coverage detected