kalavai-client 0.6.0__py3-none-any.whl → 0.6.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- kalavai_client/__init__.py +1 -1
- kalavai_client/assets/docker-compose-gui.yaml +0 -1
- kalavai_client/assets/docker-compose-template.yaml +45 -41
- kalavai_client/bridge_api.py +6 -3
- kalavai_client/bridge_models.py +2 -1
- kalavai_client/cli.py +23 -23
- kalavai_client/core.py +13 -5
- kalavai_client/env.py +8 -3
- kalavai_client/utils.py +5 -2
- {kalavai_client-0.6.0.dist-info → kalavai_client-0.6.2.dist-info}/METADATA +1 -1
- kalavai_client-0.6.2.dist-info/RECORD +25 -0
- kalavai_client-0.6.0.dist-info/RECORD +0 -25
- {kalavai_client-0.6.0.dist-info → kalavai_client-0.6.2.dist-info}/LICENSE +0 -0
- {kalavai_client-0.6.0.dist-info → kalavai_client-0.6.2.dist-info}/WHEEL +0 -0
- {kalavai_client-0.6.0.dist-info → kalavai_client-0.6.2.dist-info}/entry_points.txt +0 -0
kalavai_client/__init__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
|
2
|
-
__version__ = "0.6.
|
2
|
+
__version__ = "0.6.2"
|
@@ -3,38 +3,58 @@ services:
|
|
3
3
|
{{vpn_name}}:
|
4
4
|
image: gravitl/netclient:v0.90.0
|
5
5
|
container_name: {{vpn_name}}
|
6
|
-
#privileged: true
|
7
6
|
cap_add:
|
8
7
|
- NET_ADMIN
|
9
8
|
- SYS_MODULE
|
10
9
|
network_mode: host
|
11
|
-
# networks:
|
12
|
-
# - custom-network
|
13
|
-
# ports:
|
14
|
-
# # https://docs.k3s.io/installation/requirements#inbound-rules-for-k3s-nodes
|
15
|
-
# - "6443:6443" # kube server
|
16
|
-
# - "10250:10250" # worker balancer
|
17
|
-
# - "8472:8472/udp" # flannel vxlan
|
18
|
-
# - "51820-51830:51820-51830" # flannel wireguard
|
19
|
-
# {% if command == "server" %}
|
20
|
-
# - "30000-30500:30000-30500"
|
21
|
-
# {% endif %}
|
22
10
|
environment:
|
23
11
|
- HOST_NAME={{node_name}}
|
24
|
-
- IFACE_NAME={{flannel_iface}}
|
25
12
|
- TOKEN={{vpn_token}}
|
26
13
|
volumes:
|
27
14
|
- /dev/net/tun:/dev/net/tun
|
28
15
|
restart: unless-stopped
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
16
|
+
{% endif %}
|
17
|
+
{% if backend %}
|
18
|
+
backend:
|
19
|
+
image: docker.io/bundenth/kalavai-backend:latest
|
20
|
+
container_name: backend
|
21
|
+
networks:
|
22
|
+
- kalavai-net
|
23
|
+
ports:
|
24
|
+
- "{{bridge_port | default(8001)}}:{{bridge_port | default(8001)}}"
|
25
|
+
command: >
|
26
|
+
backend
|
27
|
+
start
|
28
|
+
--bridge-port {{bridge_port | default(8001)}}
|
29
|
+
environment:
|
30
|
+
- KALAVAI_PATH=/root/.cache/kalavai
|
31
|
+
volumes:
|
32
|
+
- "{{user_path}}:/root/.cache/kalavai"
|
33
|
+
restart: unless-stopped
|
34
|
+
{% endif %}
|
35
|
+
{% if frontend %}
|
36
|
+
frontend:
|
37
|
+
container_name: frontend
|
38
|
+
image: bundenth/kalavai-gui:latest
|
39
|
+
networks:
|
40
|
+
- kalavai-net
|
41
|
+
environment:
|
42
|
+
- KALAVAI_BRIDGE_URL=http://backend
|
43
|
+
- KALAVAI_BRIDGE_PORT={{bridge_port | default(8001)}}
|
44
|
+
{% if protected_access %}
|
45
|
+
- ACCESS_KEY={{protected_access}}
|
46
|
+
{% endif %}
|
47
|
+
entrypoint: ["reflex"]
|
48
|
+
command: >
|
49
|
+
run
|
50
|
+
--backend-port {{gui_backend_port | default(8002)}}
|
51
|
+
--frontend-port {{gui_frontend_port | default(3000)}}
|
52
|
+
ports:
|
53
|
+
- "{{gui_backend_port | default(8002)}}:{{gui_backend_port | default(8002)}}"
|
54
|
+
- "{{gui_frontend_port | default(3000)}}:{{gui_frontend_port | default(3000)}}"
|
55
|
+
volumes:
|
56
|
+
- "{{user_path}}:/root/.cache/kalavai"
|
57
|
+
restart: unless-stopped
|
38
58
|
{% endif %}
|
39
59
|
|
40
60
|
# run worker only if command is set
|
@@ -48,21 +68,6 @@ services:
|
|
48
68
|
network_mode: "service:{{vpn_name}}"
|
49
69
|
{% else %}
|
50
70
|
network_mode: host
|
51
|
-
# hostname: {{node_name}}
|
52
|
-
# networks:
|
53
|
-
# - custom-network
|
54
|
-
# ports:
|
55
|
-
# - "6443:6443" # kube server
|
56
|
-
# - "2379-2380:2379-2380" # etcd server
|
57
|
-
# - "10259:10259" # kube scheduler
|
58
|
-
# - "10257:10257" # kube controller manager
|
59
|
-
# - "10250:10250" # worker balancer
|
60
|
-
# - "8285:8285" # flannel
|
61
|
-
# - "8472:8472" # flannel vxlan
|
62
|
-
# - "51820:51820" # flannel wireguard
|
63
|
-
# {% if command == "server" %}
|
64
|
-
# - "30000-32767:30000-32767"
|
65
|
-
# {% endif %}
|
66
71
|
{% endif %}
|
67
72
|
privileged: true
|
68
73
|
restart: unless-stopped
|
@@ -103,7 +108,6 @@ services:
|
|
103
108
|
{% endif %}
|
104
109
|
{% endif %}
|
105
110
|
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
111
|
+
networks:
|
112
|
+
kalavai-net:
|
113
|
+
driver: bridge
|
kalavai_client/bridge_api.py
CHANGED
@@ -75,7 +75,8 @@ def pool_create(request: CreatePoolRequest, api_key: str = Depends(verify_api_ke
|
|
75
75
|
only_registered_users=request.only_registered_users,
|
76
76
|
location=request.location,
|
77
77
|
description=request.description,
|
78
|
-
token_mode=request.token_mode
|
78
|
+
token_mode=request.token_mode,
|
79
|
+
frontend=request.frontend
|
79
80
|
)
|
80
81
|
return result
|
81
82
|
|
@@ -85,7 +86,8 @@ def pool_join(request: JoinPoolRequest, api_key: str = Depends(verify_api_key)):
|
|
85
86
|
token=request.token,
|
86
87
|
num_gpus=request.num_gpus,
|
87
88
|
node_name=request.node_name,
|
88
|
-
ip_address=request.ip_address
|
89
|
+
ip_address=request.ip_address,
|
90
|
+
frontend=request.frontend
|
89
91
|
)
|
90
92
|
return result
|
91
93
|
|
@@ -93,7 +95,8 @@ def pool_join(request: JoinPoolRequest, api_key: str = Depends(verify_api_key)):
|
|
93
95
|
def pool_attach(request: JoinPoolRequest, api_key: str = Depends(verify_api_key)):
|
94
96
|
result = attach_to_pool(
|
95
97
|
token=request.token,
|
96
|
-
node_name=request.node_name
|
98
|
+
node_name=request.node_name,
|
99
|
+
frontend=request.frontend
|
97
100
|
)
|
98
101
|
return result
|
99
102
|
|
kalavai_client/bridge_models.py
CHANGED
@@ -16,6 +16,7 @@ class CreatePoolRequest(BaseModel):
|
|
16
16
|
location: str = None
|
17
17
|
token_mode: TokenType = TokenType.USER
|
18
18
|
description: str = ""
|
19
|
+
frontend: bool = False
|
19
20
|
|
20
21
|
class NodesActionRequest(BaseModel):
|
21
22
|
nodes: list[str]
|
@@ -25,7 +26,7 @@ class JoinPoolRequest(BaseModel):
|
|
25
26
|
ip_address: str = None
|
26
27
|
node_name: str = None
|
27
28
|
num_gpus: int = None
|
28
|
-
|
29
|
+
frontend: bool = False
|
29
30
|
class JobDetailsRequest(BaseModel):
|
30
31
|
jobs: list[Job]
|
31
32
|
|
kalavai_client/cli.py
CHANGED
@@ -6,13 +6,10 @@ import uuid
|
|
6
6
|
import time
|
7
7
|
import socket
|
8
8
|
from pathlib import Path
|
9
|
-
from getpass import getpass
|
10
|
-
from sys import exit
|
11
9
|
|
12
10
|
import yaml
|
13
11
|
|
14
12
|
import arguably
|
15
|
-
from kalavai_client.auth import KalavaiAuth
|
16
13
|
from rich.console import Console
|
17
14
|
|
18
15
|
from kalavai_client.cluster import CLUSTER
|
@@ -208,7 +205,6 @@ def input_gpus(non_interactive=False):
|
|
208
205
|
@arguably.command
|
209
206
|
def gui__start(
|
210
207
|
*others,
|
211
|
-
backend_only=False,
|
212
208
|
gui_frontend_port=3000,
|
213
209
|
gui_backend_port=8000,
|
214
210
|
bridge_port=8001,
|
@@ -227,32 +223,36 @@ def gui__start(
|
|
227
223
|
console.log("[red]Error: user key not found (required for protected access)")
|
228
224
|
return
|
229
225
|
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
run_cmd(f"docker compose --file {USER_GUI_COMPOSE_FILE} up -d")
|
226
|
+
values = {
|
227
|
+
"gui_frontend_port": gui_frontend_port,
|
228
|
+
"gui_backend_port": gui_backend_port,
|
229
|
+
"bridge_port": bridge_port,
|
230
|
+
"path": user_path("", create_path=True),
|
231
|
+
"protected_access": user_key
|
232
|
+
}
|
233
|
+
compose_yaml = load_template(
|
234
|
+
template_path=DOCKER_COMPOSE_GUI,
|
235
|
+
values=values)
|
236
|
+
with open(USER_GUI_COMPOSE_FILE, "w") as f:
|
237
|
+
f.write(compose_yaml)
|
238
|
+
|
239
|
+
run_cmd(f"docker compose --file {USER_GUI_COMPOSE_FILE} up -d")
|
245
240
|
|
246
|
-
|
241
|
+
console.log(f"[green]Loading GUI, may take a few minutes. It will be available at http://localhost:{gui_frontend_port}")
|
247
242
|
print(
|
248
243
|
"Deploying bridge API"
|
249
244
|
)
|
250
245
|
run_api(port=bridge_port, log_level=log_level)
|
251
|
-
|
252
|
-
if not backend_only:
|
253
|
-
run_cmd(f"docker compose --file {USER_GUI_COMPOSE_FILE} down")
|
246
|
+
run_cmd(f"docker compose --file {USER_GUI_COMPOSE_FILE} down")
|
254
247
|
console.log("[green]Kalavai GUI has been stopped")
|
255
248
|
|
249
|
+
@arguably.command
|
250
|
+
def backend__start(*others, bridge_port=8001, log_level="critical"):
|
251
|
+
"""
|
252
|
+
Start the Kalavai backend
|
253
|
+
"""
|
254
|
+
run_api(port=bridge_port, log_level=log_level)
|
255
|
+
console.log("[green]Kalavai backend has been stopped")
|
256
256
|
|
257
257
|
@arguably.command
|
258
258
|
def auth(user_key, *others):
|
kalavai_client/core.py
CHANGED
@@ -573,7 +573,9 @@ def attach_to_pool(token, node_name=None):
|
|
573
573
|
generate_compose_config(
|
574
574
|
role="",
|
575
575
|
vpn_token=public_location,
|
576
|
-
node_name=node_name
|
576
|
+
node_name=node_name,
|
577
|
+
backend=True,
|
578
|
+
frontend=True)
|
577
579
|
|
578
580
|
store_server_info(
|
579
581
|
server_ip=kalavai_seed_ip,
|
@@ -637,7 +639,9 @@ def generate_worker_package(num_gpus=0, node_name=None, ip_address="0.0.0.0", st
|
|
637
639
|
num_gpus=num_gpus,
|
638
640
|
vpn_token=public_location,
|
639
641
|
node_name=node_name,
|
640
|
-
node_labels=node_labels
|
642
|
+
node_labels=node_labels,
|
643
|
+
backend=False,
|
644
|
+
frontend=False)
|
641
645
|
|
642
646
|
return compose
|
643
647
|
|
@@ -684,7 +688,9 @@ def join_pool(token, num_gpus=None, node_name=None, ip_address=None):
|
|
684
688
|
num_gpus=num_gpus,
|
685
689
|
vpn_token=public_location,
|
686
690
|
node_name=node_name,
|
687
|
-
node_labels=node_labels
|
691
|
+
node_labels=node_labels,
|
692
|
+
backend=True,
|
693
|
+
frontend=True)
|
688
694
|
|
689
695
|
store_server_info(
|
690
696
|
server_ip=kalavai_seed_ip,
|
@@ -770,7 +776,10 @@ def create_pool(
|
|
770
776
|
node_ip_address=ip_address,
|
771
777
|
num_gpus=num_gpus,
|
772
778
|
node_name=node_name,
|
773
|
-
node_labels=node_labels
|
779
|
+
node_labels=node_labels,
|
780
|
+
backend=True,
|
781
|
+
frontend=True,
|
782
|
+
user_id=user_id
|
774
783
|
)
|
775
784
|
|
776
785
|
# start server
|
@@ -789,7 +798,6 @@ def create_pool(
|
|
789
798
|
auth_key = user_id if user_id is not None else str(uuid.uuid4())
|
790
799
|
write_auth_key = str(uuid.uuid4())
|
791
800
|
readonly_auth_key = str(uuid.uuid4())
|
792
|
-
|
793
801
|
watcher_service = f"{ip_address}:{DEFAULT_WATCHER_PORT}"
|
794
802
|
values = {
|
795
803
|
CLUSTER_NAME_KEY: cluster_name,
|
kalavai_client/env.py
CHANGED
@@ -3,10 +3,15 @@ from pathlib import Path
|
|
3
3
|
import importlib.resources
|
4
4
|
|
5
5
|
|
6
|
+
DEFAULT_KALAVAI_PATH = os.getenv("KALAVAI_PATH", "")
|
7
|
+
|
6
8
|
def user_path(relative_path, create_path=False):
|
7
9
|
"""Transform a relative path into the user's cache folder path"""
|
8
|
-
|
9
|
-
|
10
|
+
if len(DEFAULT_KALAVAI_PATH.strip()) > 0:
|
11
|
+
kalavai_user_path = DEFAULT_KALAVAI_PATH
|
12
|
+
else:
|
13
|
+
base = os.path.expanduser("~")
|
14
|
+
kalavai_user_path = os.path.join(base, ".cache/kalavai")
|
10
15
|
full_path = os.path.join(kalavai_user_path, relative_path)
|
11
16
|
if create_path:
|
12
17
|
Path(full_path).mkdir(parents=True, exist_ok=True)
|
@@ -34,7 +39,7 @@ KALAVAI_PLATFORM_ENDPOINT = "https://platform.kalavai.net/_/api"
|
|
34
39
|
DEFAULT_CONTAINER_NAME = "kalavai"
|
35
40
|
DEFAULT_VPN_CONTAINER_NAME = "kalavai-vpn"
|
36
41
|
CONTAINER_HOST_PATH = user_path("pool/", create_path=True)
|
37
|
-
DEFAULT_FLANNEL_IFACE = os.getenv("KALAVAI_FLANNEL_IFACE", "netmaker
|
42
|
+
DEFAULT_FLANNEL_IFACE = os.getenv("KALAVAI_FLANNEL_IFACE", "netmaker")
|
38
43
|
DEFAULT_WATCHER_PORT = 30001
|
39
44
|
KUBE_VERSION = os.getenv("KALAVAI_KUBE_VERSION", "v1.31.1+k3s1")
|
40
45
|
FORBIDEDEN_IPS = ["127.0.0.1"]
|
kalavai_client/utils.py
CHANGED
@@ -100,7 +100,7 @@ def is_storage_compatible():
|
|
100
100
|
return False
|
101
101
|
################
|
102
102
|
|
103
|
-
def generate_compose_config(role, node_name, write_to_file=True, node_ip_address="0.0.0.0", num_gpus=0, node_labels=None, pool_ip=None, vpn_token=None, pool_token=None):
|
103
|
+
def generate_compose_config(role, node_name, write_to_file=True, node_ip_address="0.0.0.0", num_gpus=0, node_labels=None, pool_ip=None, vpn_token=None, pool_token=None, user_id=None, backend=True, frontend=True):
|
104
104
|
|
105
105
|
if node_labels is not None:
|
106
106
|
node_labels = " ".join([f"--node-label {key}={value}" for key, value in node_labels.items()])
|
@@ -121,7 +121,10 @@ def generate_compose_config(role, node_name, write_to_file=True, node_ip_address
|
|
121
121
|
"k3s_path": f"{CONTAINER_HOST_PATH}/{rand_suffix}/k3s",
|
122
122
|
"etc_path": f"{CONTAINER_HOST_PATH}/{rand_suffix}/etc",
|
123
123
|
"node_labels": node_labels,
|
124
|
-
"flannel_iface": DEFAULT_FLANNEL_IFACE if vpn_token is not None else ""
|
124
|
+
"flannel_iface": DEFAULT_FLANNEL_IFACE if vpn_token is not None else "",
|
125
|
+
"backend": backend,
|
126
|
+
"frontend": frontend,
|
127
|
+
"protected_access": user_id
|
125
128
|
}
|
126
129
|
# generate local config files
|
127
130
|
compose_yaml = load_template(
|
@@ -0,0 +1,25 @@
|
|
1
|
+
kalavai_client/__init__.py,sha256=KHdxFPVZ8ieY1b3JqZNDqsGezrCIPje_GQszyzGWEVw,22
|
2
|
+
kalavai_client/__main__.py,sha256=WQUfxvRsBJH5gsCJg8pLz95QnZIj7Ol8psTO77m0QE0,73
|
3
|
+
kalavai_client/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
|
+
kalavai_client/assets/apps.yaml,sha256=H2HZQ_oqdNz2qPDs5_NtHvJo4rblH1DRPugzQYq_t5Q,6366
|
5
|
+
kalavai_client/assets/apps_values.yaml,sha256=WRew3bS1MztjzcJfphuJcKn0n2T1ICRupPpr_Csjt_s,1644
|
6
|
+
kalavai_client/assets/docker-compose-gui.yaml,sha256=DGCyGYzz1kH6kkMbo62FJHe3F9vcAmA8DOHw-c_o0Kw,752
|
7
|
+
kalavai_client/assets/docker-compose-template.yaml,sha256=zJLk59DnoBkZscFJs50xgfwx9drmHArmivtQLevrHI8,2882
|
8
|
+
kalavai_client/assets/nginx.conf,sha256=drVVCg8GHucz7hmt_BI6giAhK92OV71257NTs3LthwM,225
|
9
|
+
kalavai_client/assets/pool_config_template.yaml,sha256=fFz4w2-fMKD5KvyzFdfcWD_jSneRlmnjLc8hCctweX0,576
|
10
|
+
kalavai_client/assets/pool_config_values.yaml,sha256=VrM3XHQfQo6QLZ68qvagooUptaYgl1pszniY_JUtemk,233
|
11
|
+
kalavai_client/assets/user_workspace.yaml,sha256=wDvlMYknOPABAEo0dsQwU7bac8iubjAG9tdkFbJZ5Go,476
|
12
|
+
kalavai_client/assets/user_workspace_values.yaml,sha256=G0HOzQUxrDMCwuW9kbWUZaKMzDDPVwDwzBHCL2Xi2ZM,542
|
13
|
+
kalavai_client/auth.py,sha256=EB3PMvKUn5_KAQkezkEHEt-OMZXyfkZguIQlUFkEHcA,3243
|
14
|
+
kalavai_client/bridge_api.py,sha256=KecIZvsGRiZgUQaDSgvRBLaqPDBhxFKS6FBH_w5ArCc,7015
|
15
|
+
kalavai_client/bridge_models.py,sha256=IGPLAYEZG4f5EUtBuoR2u_cYoyCCVkhx4H2rMeGuJ_Y,1030
|
16
|
+
kalavai_client/cli.py,sha256=YHC74zg5z3Hw4s101TsV-rmi4WYY1ZIdC2OavNeA1wc,47114
|
17
|
+
kalavai_client/cluster.py,sha256=gwjmdsd--YrffT0BmZDOEpbrdm3lPskUuN5jdgcrOR0,12947
|
18
|
+
kalavai_client/core.py,sha256=rPnKRvyORYP6hhPv_NyHEm8XtEy1DOY3VQ5ambvPZDY,32733
|
19
|
+
kalavai_client/env.py,sha256=wAd-P8XDlDB8Oau76f0bG2aHTkNA793xb_V0frbNeJE,2770
|
20
|
+
kalavai_client/utils.py,sha256=LqcG2fOJcvqEuC348ddwhStd6zqiXo7nuQ2VlU9v9Lg,12156
|
21
|
+
kalavai_client-0.6.2.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
22
|
+
kalavai_client-0.6.2.dist-info/METADATA,sha256=zaRbaISgFAHXJR8f1_2m_YynbeRrR2I5KUqTLcqABQ0,13353
|
23
|
+
kalavai_client-0.6.2.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
|
24
|
+
kalavai_client-0.6.2.dist-info/entry_points.txt,sha256=9T6D45gxwzfVbglMm1r6XPdXuuZdHfy_7fCeu2jUphc,50
|
25
|
+
kalavai_client-0.6.2.dist-info/RECORD,,
|
@@ -1,25 +0,0 @@
|
|
1
|
-
kalavai_client/__init__.py,sha256=kdEPlDp6IaQ7VW5poiOUuYIU9_F2zMlsQ58FC7Mp1Bw,22
|
2
|
-
kalavai_client/__main__.py,sha256=WQUfxvRsBJH5gsCJg8pLz95QnZIj7Ol8psTO77m0QE0,73
|
3
|
-
kalavai_client/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
|
-
kalavai_client/assets/apps.yaml,sha256=H2HZQ_oqdNz2qPDs5_NtHvJo4rblH1DRPugzQYq_t5Q,6366
|
5
|
-
kalavai_client/assets/apps_values.yaml,sha256=WRew3bS1MztjzcJfphuJcKn0n2T1ICRupPpr_Csjt_s,1644
|
6
|
-
kalavai_client/assets/docker-compose-gui.yaml,sha256=IHClIltiu8C4nHbgDgAscf3Ls6UFngbeQP07kj31kjM,776
|
7
|
-
kalavai_client/assets/docker-compose-template.yaml,sha256=0ckkXC2OJTWnjyyjtwCIckUc22xhY_84aCQjz1WSlBk,2831
|
8
|
-
kalavai_client/assets/nginx.conf,sha256=drVVCg8GHucz7hmt_BI6giAhK92OV71257NTs3LthwM,225
|
9
|
-
kalavai_client/assets/pool_config_template.yaml,sha256=fFz4w2-fMKD5KvyzFdfcWD_jSneRlmnjLc8hCctweX0,576
|
10
|
-
kalavai_client/assets/pool_config_values.yaml,sha256=VrM3XHQfQo6QLZ68qvagooUptaYgl1pszniY_JUtemk,233
|
11
|
-
kalavai_client/assets/user_workspace.yaml,sha256=wDvlMYknOPABAEo0dsQwU7bac8iubjAG9tdkFbJZ5Go,476
|
12
|
-
kalavai_client/assets/user_workspace_values.yaml,sha256=G0HOzQUxrDMCwuW9kbWUZaKMzDDPVwDwzBHCL2Xi2ZM,542
|
13
|
-
kalavai_client/auth.py,sha256=EB3PMvKUn5_KAQkezkEHEt-OMZXyfkZguIQlUFkEHcA,3243
|
14
|
-
kalavai_client/bridge_api.py,sha256=IkKq_CODA4p4UJkk6UqXKHkz5m2ESq2mL3tKqkQk6T0,6910
|
15
|
-
kalavai_client/bridge_models.py,sha256=k4ILxa8jfAcfgIIBJqK1DunDzHh_oNUpuiEpmhAfTP0,977
|
16
|
-
kalavai_client/cli.py,sha256=Cq0aC7L8kV1Ag2Olm3NGY51BMLBAjcsDH3mhmyfz6cA,47089
|
17
|
-
kalavai_client/cluster.py,sha256=gwjmdsd--YrffT0BmZDOEpbrdm3lPskUuN5jdgcrOR0,12947
|
18
|
-
kalavai_client/core.py,sha256=CWJQ38BZ2mLavfOCyR7wsDdy4fRTpjnYmggoXcR9Ji8,32531
|
19
|
-
kalavai_client/env.py,sha256=_T3D0Hns5yAbFS3Hp1Vt73FZWLMtKSUJz2XXR9kJvEY,2605
|
20
|
-
kalavai_client/utils.py,sha256=k2Bpvl16zDpWBXMIMsd_LbkinZtctPO6bygfB7DyiZ8,12018
|
21
|
-
kalavai_client-0.6.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
22
|
-
kalavai_client-0.6.0.dist-info/METADATA,sha256=NufPp5kOZHUqWASe0nHrecbPZPGMOUOPE91PYTA_Fpg,13353
|
23
|
-
kalavai_client-0.6.0.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
|
24
|
-
kalavai_client-0.6.0.dist-info/entry_points.txt,sha256=9T6D45gxwzfVbglMm1r6XPdXuuZdHfy_7fCeu2jUphc,50
|
25
|
-
kalavai_client-0.6.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|