mirror of
https://github.com/retspen/webvirtcloud
synced 2025-07-31 12:41:08 +00:00
Added admin application
- Manage users - Manage groups - Manage logs
This commit is contained in:
parent
38befa4362
commit
27f62dff6c
38 changed files with 933 additions and 742 deletions
|
@ -8,8 +8,10 @@ from vrtManager.storage import wvmStorage, wvmStorages
|
|||
from libvirt import libvirtError
|
||||
from django.contrib import messages
|
||||
import json
|
||||
from admin.decorators import superuser_only
|
||||
|
||||
|
||||
@superuser_only
|
||||
def storages(request, compute_id):
|
||||
"""
|
||||
:param request:
|
||||
|
@ -17,17 +19,11 @@ def storages(request, compute_id):
|
|||
:return:
|
||||
"""
|
||||
|
||||
if not request.user.is_superuser:
|
||||
return HttpResponseRedirect(reverse('index'))
|
||||
|
||||
error_messages = []
|
||||
compute = get_object_or_404(Compute, pk=compute_id)
|
||||
|
||||
try:
|
||||
conn = wvmStorages(compute.hostname,
|
||||
compute.login,
|
||||
compute.password,
|
||||
compute.type)
|
||||
conn = wvmStorages(compute.hostname, compute.login, compute.password, compute.type)
|
||||
storages = conn.get_storages_info()
|
||||
secrets = conn.get_secrets()
|
||||
|
||||
|
@ -48,12 +44,10 @@ def storages(request, compute_id):
|
|||
error_messages.append(msg)
|
||||
if not error_messages:
|
||||
if data['stg_type'] == 'rbd':
|
||||
conn.create_storage_ceph(data['stg_type'], data['name'],
|
||||
data['ceph_pool'], data['ceph_host'],
|
||||
conn.create_storage_ceph(data['stg_type'], data['name'], data['ceph_pool'], data['ceph_host'],
|
||||
data['ceph_user'], data['secret'])
|
||||
elif data['stg_type'] == 'netfs':
|
||||
conn.create_storage_netfs(data['stg_type'], data['name'],
|
||||
data['netfs_host'], data['source'],
|
||||
conn.create_storage_netfs(data['stg_type'], data['name'], data['netfs_host'], data['source'],
|
||||
data['source_format'], data['target'])
|
||||
else:
|
||||
conn.create_storage(data['stg_type'], data['name'], data['source'], data['target'])
|
||||
|
@ -68,6 +62,7 @@ def storages(request, compute_id):
|
|||
return render(request, 'storages.html', locals())
|
||||
|
||||
|
||||
@superuser_only
|
||||
def storage(request, compute_id, pool):
|
||||
"""
|
||||
:param request:
|
||||
|
@ -75,10 +70,6 @@ def storage(request, compute_id, pool):
|
|||
:param pool:
|
||||
:return:
|
||||
"""
|
||||
|
||||
if not request.user.is_superuser:
|
||||
return HttpResponseRedirect(reverse('index'))
|
||||
|
||||
def handle_uploaded_file(path, f_name):
|
||||
target = path + '/' + str(f_name)
|
||||
destination = open(target, 'wb+')
|
||||
|
@ -91,11 +82,7 @@ def storage(request, compute_id, pool):
|
|||
meta_prealloc = False
|
||||
|
||||
try:
|
||||
conn = wvmStorage(compute.hostname,
|
||||
compute.login,
|
||||
compute.password,
|
||||
compute.type,
|
||||
pool)
|
||||
conn = wvmStorage(compute.hostname, compute.login, compute.password, compute.type, pool)
|
||||
|
||||
storages = conn.get_storages()
|
||||
state = conn.is_active()
|
||||
|
@ -216,11 +203,7 @@ def get_volumes(request, compute_id, pool):
|
|||
data = {}
|
||||
compute = get_object_or_404(Compute, pk=compute_id)
|
||||
try:
|
||||
conn = wvmStorage(compute.hostname,
|
||||
compute.login,
|
||||
compute.password,
|
||||
compute.type,
|
||||
pool)
|
||||
conn = wvmStorage(compute.hostname, compute.login, compute.password, compute.type, pool)
|
||||
conn.refresh()
|
||||
data['vols'] = sorted(conn.get_volumes())
|
||||
except libvirtError:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue