Skip to content

Commit c480348

Browse files
committed
chore(milvus): formatting
applied formatting and cleanup extra spaces
1 parent 148b9be commit c480348

File tree

1 file changed

+104
-72
lines changed

1 file changed

+104
-72
lines changed

nuvolaris/milvus_standalone.py

Lines changed: 104 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -29,38 +29,52 @@
2929
from nuvolaris.user_config import UserConfig
3030
from nuvolaris.user_metadata import UserMetadata
3131

32+
3233
def patchEntries(data: dict):
33-
tplp = ["milvus-cfg-base.yaml","milvus.yaml"]
34+
tplp = ["milvus-cfg-base.yaml", "milvus.yaml"]
3435

35-
if(data['affinity'] or data['tolerations']):
36+
if (data['affinity'] or data['tolerations']):
3637
tplp.append("affinity-tolerance-dep-core-attach.yaml")
3738

3839
kust = kus.patchTemplates("milvus", tplp, data)
39-
kust += kus.patchGenericEntry("Secret","nuvolaris-milvus-etcd-secret","/data/username",util.b64_encode(data['milvus_etcd_username']))
40-
kust += kus.patchGenericEntry("Secret","nuvolaris-milvus-etcd-secret","/data/password",util.b64_encode(data['milvus_etcd_password']))
41-
42-
kust += kus.patchGenericEntry("Secret","nuvolaris-milvus-s3-secret","/stringData/accesskey",data['milvus_s3_username'])
43-
kust += kus.patchGenericEntry("Secret","nuvolaris-milvus-s3-secret","/stringData/secretkey",data['milvus_s3_password'])
44-
45-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus","/spec/storageClassName",data['storageClass'])
46-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus","/spec/resources/requests/storage",f"{data['size']}Gi")
47-
48-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus-zookeeper","/spec/storageClassName",data['storageClass'])
49-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus-zookeeper","/spec/resources/requests/storage",f"{data['zookeeper_size']}Gi")
40+
kust += kus.patchGenericEntry("Secret", "nuvolaris-milvus-etcd-secret", "/data/username",
41+
util.b64_encode(data['milvus_etcd_username']))
42+
kust += kus.patchGenericEntry("Secret", "nuvolaris-milvus-etcd-secret", "/data/password",
43+
util.b64_encode(data['milvus_etcd_password']))
44+
45+
kust += kus.patchGenericEntry("Secret", "nuvolaris-milvus-s3-secret", "/stringData/accesskey",
46+
data['milvus_s3_username'])
47+
kust += kus.patchGenericEntry("Secret", "nuvolaris-milvus-s3-secret", "/stringData/secretkey",
48+
data['milvus_s3_password'])
49+
50+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus", "/spec/storageClassName",
51+
data['storageClass'])
52+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus", "/spec/resources/requests/storage",
53+
f"{data['size']}Gi")
54+
55+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus-zookeeper", "/spec/storageClassName",
56+
data['storageClass'])
57+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus-zookeeper",
58+
"/spec/resources/requests/storage", f"{data['zookeeper_size']}Gi")
59+
60+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus-bookie-journal", "/spec/storageClassName",
61+
data['storageClass'])
62+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus-bookie-journal",
63+
"/spec/resources/requests/storage", f"{data['bookie_journal_size']}Gi")
64+
65+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus-bookie-ledgers", "/spec/storageClassName",
66+
data['storageClass'])
67+
kust += kus.patchGenericEntry("PersistentVolumeClaim", "nuvolaris-milvus-bookie-ledgers",
68+
"/spec/resources/requests/storage", f"{data['bookie_ledgers_size']}Gi")
69+
return kust
5070

51-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus-bookie-journal","/spec/storageClassName",data['storageClass'])
52-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus-bookie-journal","/spec/resources/requests/storage",f"{data['bookie_journal_size']}Gi")
53-
54-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus-bookie-ledgers","/spec/storageClassName",data['storageClass'])
55-
kust += kus.patchGenericEntry("PersistentVolumeClaim","nuvolaris-milvus-bookie-ledgers","/spec/resources/requests/storage",f"{data['bookie_ledgers_size']}Gi")
56-
return kust
5771

5872
def create(owner=None):
5973
"""
6074
Deploys the milvus vector db in standalone mode.
6175
"""
62-
data = util.get_milvus_config_data()
63-
res = create_milvus_accounts(data)
76+
data = util.get_milvus_config_data()
77+
res = create_milvus_accounts(data)
6478

6579
if res:
6680
logging.info("*** creating a milvus standalone instance")
@@ -72,153 +86,171 @@ def create(owner=None):
7286
else:
7387
cfg.put("state.milvus.spec", mspec)
7488

75-
res = kube.apply(mspec)
76-
util.wait_for_pod_ready(r"{.items[?(@.metadata.labels.app\.kubernetes\.io\/instance == 'nuvolaris-milvus')].metadata.name}")
77-
res=create_default_milvus_database(data)
89+
kube.apply(mspec)
90+
util.wait_for_pod_ready(
91+
r"{.items[?(@.metadata.labels.app\.kubernetes\.io\/instance == 'nuvolaris-milvus')].metadata.name}")
92+
res = create_default_milvus_database(data)
7893
logging.info("*** created a milvus standalone instance")
7994

95+
8096
return res
8197

82-
def create_milvus_accounts(data:dict):
98+
99+
def create_milvus_accounts(data: dict):
83100
""""
84101
Creates technical accounts for ETCD and MINIO
85102
"""
86-
try:
103+
try:
87104
# currently we use the ETCD root password, so we skip the ETCD user creation.
88-
#res = util.check(etcd.create_etcd_user(data['milvus_etcd_username'],data['milvus_etcd_password'],data['milvus_etcd_prefix']),"create_etcd_milvus_user",True)
105+
# res = util.check(etcd.create_etcd_user(data['milvus_etcd_username'],data['milvus_etcd_password'],data['milvus_etcd_prefix']),"create_etcd_milvus_user",True)
89106

90107
minioClient = mutil.MinioClient()
91108
bucket_policy_names = []
92109
bucket_policy_names.append(f"{data['milvus_bucket_name']}/*")
93110

94-
res = util.check(minioClient.add_user(data["milvus_s3_username"], data["milvus_s3_password"]),"create_milvus_s3_user",True)
95-
res = util.check(minioClient.make_bucket(data["milvus_bucket_name"]),"create_milvus_s3_bucket",res)
96-
return util.check(minioClient.assign_rw_bucket_policy_to_user(data["milvus_s3_username"], bucket_policy_names),"assign_milvus_s3_bucket_policy",res)
111+
res = util.check(minioClient.add_user(data["milvus_s3_username"], data["milvus_s3_password"]),
112+
"create_milvus_s3_user", True)
113+
res = util.check(minioClient.make_bucket(data["milvus_bucket_name"]), "create_milvus_s3_bucket", res)
114+
return util.check(minioClient.assign_rw_bucket_policy_to_user(data["milvus_s3_username"], bucket_policy_names),
115+
"assign_milvus_s3_bucket_policy", res)
97116
except Exception as ex:
98-
logging.error("Could not create milvus ETCD and MINIO accounts",ex)
117+
logging.error("Could not create milvus ETCD and MINIO accounts", ex)
99118
return False
100-
119+
120+
101121
def create_default_milvus_database(data):
102122
"""
103123
Creates nuvolaris MILVUS custom resources
104124
"""
105-
logging.info("*** configuring MILVUS database for nuvolaris")
125+
logging.info("*** configuring MILVUS database for nuvolaris")
106126
adminClient = MilvusAdminClient()
107-
res = adminClient.setup_user("nuvolaris", data["nuvolaris_password"],"nuvolaris")
108-
109-
if(res):
127+
res = adminClient.setup_user("nuvolaris", data["nuvolaris_password"], "nuvolaris")
128+
129+
if (res):
110130
_annotate_nuv_milvus_metadata(data)
111131
logging.info("*** configured MILVUS database for nuvolaris")
112132
return True
113-
133+
114134
return False
115135

136+
116137
def _annotate_nuv_milvus_metadata(data):
117138
"""
118139
annotate nuvolaris configmap with entries for MILVUS connectivity MILVUS_HOST, MILVUS_PORT, MILVUS_TOKEN, MILVUS_DB_NAME
119140
this is becasue MINIO
120-
"""
141+
"""
121142
try:
122-
milvus_service = util.get_service(r"{.items[?(@.metadata.labels.app\.kubernetes\.io\/instance == 'nuvolaris-milvus')]}")
123-
if(milvus_service):
143+
milvus_service = util.get_service(
144+
r"{.items[?(@.metadata.labels.app\.kubernetes\.io\/instance == 'nuvolaris-milvus')]}")
145+
if (milvus_service):
124146
milvus_host = f"{milvus_service['metadata']['name']}.{milvus_service['metadata']['namespace']}.svc.cluster.local"
125147
password = data["nuvolaris_password"]
126-
148+
127149
openwhisk.annotate(f"milvus_host={milvus_host}")
128150
openwhisk.annotate(f"milvus_token=nuvolaris:{password}")
129151
openwhisk.annotate("milvus_db_name=nuvolaris")
130152

131153
ports = list(milvus_service['spec']['ports'])
132154
for port in ports:
133-
if(port['name']=='milvus'):
134-
openwhisk.annotate(f"milvus_port={port['port']}")
155+
if (port['name'] == 'milvus'):
156+
openwhisk.annotate(f"milvus_port={port['port']}")
135157
return None
136158
except Exception as e:
137159
logging.error(f"failed to annotate MILVUS for nuvolaris: {e}")
138160
return None
139161

140-
def _add_milvus_user_metadata(ucfg: UserConfig, user_metadata:UserMetadata):
162+
163+
def _add_milvus_user_metadata(ucfg: UserConfig, user_metadata: UserMetadata):
141164
"""
142165
adds entries for MILVUS connectivity MILVUS_HOST, MILVUS_PORT, MILVUS_TOKEN, MILVUS_DB_NAME
143-
"""
166+
"""
144167

145168
try:
146-
milvus_service = util.get_service(r"{.items[?(@.metadata.labels.app\.kubernetes\.io\/instance == 'nuvolaris-milvus')]}")
147-
148-
if(milvus_service):
169+
milvus_service = util.get_service(
170+
r"{.items[?(@.metadata.labels.app\.kubernetes\.io\/instance == 'nuvolaris-milvus')]}")
171+
172+
if (milvus_service):
149173
milvus_host = f"{milvus_service['metadata']['name']}.{milvus_service['metadata']['namespace']}.svc.cluster.local"
150174
milvus_token = f"{ucfg.get('namespace')}:{ucfg.get('milvus.password')}"
151-
user_metadata.add_metadata("MILVUS_HOST",milvus_host)
152-
user_metadata.add_metadata("MILVUS_TOKEN",milvus_token)
153-
user_metadata.add_metadata("MILVUS_DB_NAME",ucfg.get('milvus.database'))
175+
user_metadata.add_metadata("MILVUS_HOST", milvus_host)
176+
user_metadata.add_metadata("MILVUS_TOKEN", milvus_token)
177+
user_metadata.add_metadata("MILVUS_DB_NAME", ucfg.get('milvus.database'))
154178

155179
ports = list(milvus_service['spec']['ports'])
156180
for port in ports:
157-
if(port['name']=='milvus'):
158-
user_metadata.add_metadata("MILVUS_PORT",port['port'])
181+
if (port['name'] == 'milvus'):
182+
user_metadata.add_metadata("MILVUS_PORT", port['port'])
159183

160184
return None
161185
except Exception as e:
162186
logging.error(f"failed to build MILVUS metadata for {ucfg.get('namespace')}: {e}")
163187
return None
164188

189+
165190
def create_ow_milvus(ucfg: UserConfig, user_metadata: UserMetadata, owner=None):
166191
logging.info(f"*** configuring MILVUS database for {ucfg.get('namespace')}")
167-
192+
168193
adminClient = MilvusAdminClient()
169194
username = ucfg.get("namespace")
170195
password = ucfg.get("milvus.password")
171196
database = ucfg.get("milvus.database")
172-
res = adminClient.setup_user(username, password,database)
173-
174-
if(res):
197+
res = adminClient.setup_user(username, password, database)
198+
199+
if (res):
175200
_add_milvus_user_metadata(ucfg, user_metadata)
176201
logging.info(f"*** configured MILVUS database linked to namespace {ucfg.get('namespace')}")
177202

203+
return res
204+
205+
178206
def delete_ow_milvus(ucfg):
179207
logging.info(f"removing MILVUS database {ucfg.get('namespace')}")
180208
adminClient = MilvusAdminClient()
181-
res = adminClient.remove_user(ucfg.get('namespace'),ucfg.get('milvus.database'))
209+
res = adminClient.remove_user(ucfg.get('namespace'), ucfg.get('milvus.database'))
182210

183211
if res:
184-
logging.info(f"removed MILVUS database linked to namespace {ucfg.get('namespace')}")
212+
logging.info(f"removed MILVUS database linked to namespace {ucfg.get('namespace')}")
213+
214+
return res
215+
185216

186217
def delete_by_owner():
187218
spec = kus.build("milvus")
188219
res = kube.delete(spec)
189-
logging.info(f"delete milvus: {res}")
220+
logging.info(f"delete milvus: {res}")
190221
return res
191222

223+
192224
def delete_by_spec():
193-
spec = cfg.get("state.milvus.spec")
225+
spec = cfg.get("state.milvus.spec")
194226
if spec:
195227
res = kube.delete(spec)
196228
logging.info(f"delete milvus: {res}")
197229
return res
198230

199-
200231

201232
def delete(owner=None):
202-
if owner:
233+
if owner:
203234
return delete_by_owner()
204235
else:
205236
return delete_by_spec()
206237

238+
207239
def patch(status, action, owner=None):
208240
"""
209241
Called by the operator patcher to create/delete milvus component
210242
"""
211243
try:
212-
logging.info(f"*** handling request to {action} milvus")
213-
if action == 'create':
244+
logging.info(f"*** handling request to {action} milvus")
245+
if action == 'create':
214246
msg = create(owner)
215-
operator_util.patch_operator_status(status,'milvus','on')
247+
operator_util.patch_operator_status(status, 'milvus', 'on')
216248
else:
217-
msg = delete(owner)
218-
operator_util.patch_operator_status(status,'milvus','off')
249+
msg = delete(owner)
250+
operator_util.patch_operator_status(status, 'milvus', 'off')
219251

220-
logging.info(msg)
221-
logging.info(f"*** handled request to {action} milvus")
252+
logging.info(msg)
253+
logging.info(f"*** handled request to {action} milvus")
222254
except Exception as e:
223-
logging.error('*** failed to update milvus: %s' % e)
224-
operator_util.patch_operator_status(status,'milvus','error')
255+
logging.error('*** failed to update milvus: %s' % e)
256+
operator_util.patch_operator_status(status, 'milvus', 'error')

0 commit comments

Comments
 (0)