1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2024-12-25 23:55:24 +00:00
webvirtcloud/vrtManager/secrets.py
2019-09-10 09:48:31 +03:00

31 lines
1 KiB
Python

import base64
from vrtManager.connection import wvmConnect
class wvmSecrets(wvmConnect):
def create_secret(self, ephemeral, private, secret_type, data):
xml = """<secret ephemeral='%s' private='%s'>
<usage type='%s'>""" % (ephemeral, private, secret_type)
if secret_type == 'ceph':
xml += """<name>%s</name>""" % data
if secret_type == 'volume':
xml += """<volume>%s</volume>""" % data
if secret_type == 'iscsi':
xml += """<target>%s</target>""" % data
xml += """</usage>
</secret>"""
self.wvm.secretDefineXML(xml)
def get_secret_value(self, uuid):
secrt = self.get_secret(uuid)
value = secrt.value()
return base64.b64encode(value)
def set_secret_value(self, uuid, value):
secrt = self.get_secret(uuid)
value = base64.b64decode(value)
secrt.setValue(value)
def delete_secret(self, uuid):
secrt = self.get_secret(uuid)
secrt.undefine()