1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2024-12-26 08:05:22 +00:00
webvirtcloud/vrtManager/virtsecrets.py

33 lines
1 KiB
Python
Raw Normal View History

2015-02-27 08:53:51 +00:00
import base64
2015-02-27 08:53:51 +00:00
from vrtManager.connection import wvmConnect
class wvmSecrets(wvmConnect):
def create_secret(self, ephemeral, private, secret_type, data):
2020-05-21 13:17:25 +00:00
xml = f"""<secret ephemeral='{ephemeral}' private='{private}'>
<usage type='{secret_type}'>"""
if secret_type == "ceph":
2020-05-21 13:17:25 +00:00
xml += f"""<name>{data}</name>"""
if secret_type == "volume":
2020-05-21 13:17:25 +00:00
xml += f"""<volume>{data}</volume>"""
if secret_type == "iscsi":
xml += f"""<target>{data}</target>"""
2015-02-27 08:53:51 +00:00
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()