vantage6 4.10.1rc1__py3-none-any.whl → 5.0.0a7__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.

Potentially problematic release.


This version of vantage6 might be problematic. Click here for more details.

@@ -132,7 +132,7 @@ class ServerCLITest(unittest.TestCase):
132
132
  """Stop server without errors."""
133
133
 
134
134
  container1 = MagicMock()
135
- container1.name = f"{APPNAME}-iknl-system-{InstanceType.SERVER.value}"
135
+ container1.name = f"{APPNAME}-iknl-system-{InstanceType.SERVER}"
136
136
  containers.containers.list.return_value = [container1]
137
137
 
138
138
  runner = CliRunner()
@@ -146,7 +146,7 @@ class ServerCLITest(unittest.TestCase):
146
146
  def test_attach(self, containers, sleep):
147
147
  """Attach log to the console without errors."""
148
148
  container1 = MagicMock()
149
- container1.name = f"{APPNAME}-iknl-system-{InstanceType.SERVER.value}"
149
+ container1.name = f"{APPNAME}-iknl-system-{InstanceType.SERVER}"
150
150
  containers.list.return_value = [container1]
151
151
 
152
152
  sleep.side_effect = KeyboardInterrupt("Boom!")
vantage6/cli/__build__ CHANGED
@@ -1 +1 @@
1
- 1
1
+ 7
vantage6/cli/_version.py CHANGED
@@ -7,7 +7,7 @@ with open(os.path.join(here, "__build__")) as fp:
7
7
  __build__ = json.load(fp)
8
8
 
9
9
  # Module version
10
- version_info = (4, 10, 1, "candidate", __build__, 0)
10
+ version_info = (5, 0, 0, "alpha", __build__, 0)
11
11
 
12
12
  # Module version stage suffix map
13
13
  _specifier_ = {"alpha": "a", "beta": "b", "candidate": "rc", "final": ""}
@@ -25,7 +25,7 @@ def cli_algo_store_attach(name: str, system_folders: bool) -> None:
25
25
  client = docker.from_env()
26
26
 
27
27
  running_servers = client.containers.list(
28
- filters={"label": f"{APPNAME}-type={InstanceType.ALGORITHM_STORE.value}"}
28
+ filters={"label": f"{APPNAME}-type={InstanceType.ALGORITHM_STORE}"}
29
29
  )
30
30
  running_server_names = [container.name for container in running_servers]
31
31
 
@@ -40,7 +40,7 @@ def cli_algo_store_attach(name: str, system_folders: bool) -> None:
40
40
  return
41
41
  else:
42
42
  post_fix = "system" if system_folders else "user"
43
- name = f"{APPNAME}-{name}-{post_fix}-{InstanceType.ALGORITHM_STORE.value}"
43
+ name = f"{APPNAME}-{name}-{post_fix}-{InstanceType.ALGORITHM_STORE}"
44
44
 
45
45
  if name in running_server_names:
46
46
  container = client.containers.get(name)
@@ -12,4 +12,4 @@ def cli_algo_store_configuration_list() -> None:
12
12
  """
13
13
  check_docker_running()
14
14
 
15
- get_server_configuration_list(InstanceType.ALGORITHM_STORE.value)
15
+ get_server_configuration_list(InstanceType.ALGORITHM_STORE)
@@ -54,7 +54,7 @@ def cli_algo_store_start(
54
54
  Start the algorithm store server.
55
55
  """
56
56
  info("Starting algorithm store...")
57
- docker_client = check_for_start(ctx, InstanceType.ALGORITHM_STORE.value)
57
+ docker_client = check_for_start(ctx, InstanceType.ALGORITHM_STORE)
58
58
 
59
59
  image = get_image(image, ctx, "algorithm-store", DEFAULT_ALGO_STORE_IMAGE)
60
60
 
@@ -91,7 +91,7 @@ def cli_algo_store_start(
91
91
  mounts=mounts,
92
92
  detach=True,
93
93
  labels={
94
- f"{APPNAME}-type": InstanceType.ALGORITHM_STORE.value,
94
+ f"{APPNAME}-type": InstanceType.ALGORITHM_STORE,
95
95
  "name": ctx.config_file_name,
96
96
  },
97
97
  environment=environment_vars,
@@ -23,7 +23,7 @@ def cli_algo_store_stop(ctx: AlgorithmStoreContext, all_stores: bool):
23
23
  client = docker.from_env()
24
24
 
25
25
  running_stores = client.containers.list(
26
- filters={"label": f"{APPNAME}-type={InstanceType.ALGORITHM_STORE.value}"}
26
+ filters={"label": f"{APPNAME}-type={InstanceType.ALGORITHM_STORE}"}
27
27
  )
28
28
 
29
29
  if not running_stores:
@@ -241,7 +241,7 @@ def mount_database(
241
241
  # try to mount database
242
242
  uri = ctx.config["uri"]
243
243
  url = make_url(uri)
244
- environment_vars = None
244
+ environment_vars = {}
245
245
  mount = None
246
246
 
247
247
  # If host is None, we're dealing with a file-based DB, like SQLite
@@ -1,4 +1,3 @@
1
- import enum
2
1
  import questionary as q
3
2
  from colorama import Fore, Style
4
3
  import click
@@ -88,11 +87,7 @@ def get_server_configuration_list(instance_type: InstanceType.SERVER) -> None:
88
87
  client = docker.from_env()
89
88
  ctx_class = select_context_class(instance_type)
90
89
 
91
- instance_type_value = (
92
- instance_type.value if isinstance(instance_type, enum.Enum) else instance_type
93
- )
94
-
95
- running_server_names = get_running_servers(client, instance_type_value)
90
+ running_server_names = get_running_servers(client, instance_type)
96
91
  header = "\nName" + (21 * " ") + "Status" + (10 * " ") + "System/User"
97
92
 
98
93
  click.echo(header)
@@ -106,8 +101,7 @@ def get_server_configuration_list(instance_type: InstanceType.SERVER) -> None:
106
101
  for config in configs:
107
102
  status = (
108
103
  running
109
- if f"{APPNAME}-{config.name}-system-{instance_type_value}"
110
- in running_server_names
104
+ if f"{APPNAME}-{config.name}-system-{instance_type}" in running_server_names
111
105
  else stopped
112
106
  )
113
107
  click.echo(f"{config.name:25}" f"{status:25} System ")
@@ -117,8 +111,7 @@ def get_server_configuration_list(instance_type: InstanceType.SERVER) -> None:
117
111
  for config in configs:
118
112
  status = (
119
113
  running
120
- if f"{APPNAME}-{config.name}-user-{instance_type_value}"
121
- in running_server_names
114
+ if f"{APPNAME}-{config.name}-user-{instance_type}" in running_server_names
122
115
  else stopped
123
116
  )
124
117
  click.echo(f"{config.name:25}" f"{status:25} User ")
@@ -29,7 +29,6 @@ class ServerConfiguration(Configuration):
29
29
  "allow_drop_all": Use(bool),
30
30
  "logging": {**LOGGING_VALIDATORS, "file": Use(str)},
31
31
  Optional("server_name"): str,
32
- Optional("runs_data_cleanup_days"): Use(int),
33
32
  }
34
33
 
35
34
 
@@ -53,7 +53,7 @@ class AlgorithmStoreContext(BaseServerContext):
53
53
  str
54
54
  Server's docker container name
55
55
  """
56
- return f"{APPNAME}-{self.name}-{self.scope}-{ServerType.ALGORITHM_STORE.value}"
56
+ return f"{APPNAME}-{self.name}-{self.scope}-{ServerType.ALGORITHM_STORE}"
57
57
 
58
58
  @classmethod
59
59
  def from_external_config_file(
@@ -1,11 +1,12 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import hashlib
3
4
  import os.path
4
5
 
5
6
  from pathlib import Path
6
7
 
7
8
  from vantage6.common.context import AppContext
8
- from vantage6.common.globals import APPNAME, InstanceType
9
+ from vantage6.common.globals import APPNAME, STRING_ENCODING, InstanceType
9
10
  from vantage6.cli.configuration_manager import NodeConfigurationManager
10
11
  from vantage6.cli.globals import DEFAULT_NODE_SYSTEM_FOLDERS as N_FOL
11
12
  from vantage6.cli._version import __version__
@@ -39,6 +40,7 @@ class NodeContext(AppContext):
39
40
  system_folders: bool = N_FOL,
40
41
  config_file: str = None,
41
42
  print_log_header: bool = True,
43
+ logger_prefix: str = "",
42
44
  ):
43
45
  super().__init__(
44
46
  InstanceType.NODE,
@@ -46,9 +48,11 @@ class NodeContext(AppContext):
46
48
  system_folders,
47
49
  config_file,
48
50
  print_log_header,
51
+ logger_prefix,
49
52
  )
50
53
  if print_log_header:
51
54
  self.log.info("vantage6 version '%s'", __version__)
55
+ self.identifier = self.__create_node_identifier()
52
56
 
53
57
  @classmethod
54
58
  def from_external_config_file(
@@ -132,7 +136,7 @@ class NodeContext(AppContext):
132
136
  Path
133
137
  Path to the data folder
134
138
  """
135
- return AppContext.type_data_folder(InstanceType.NODE.value, system_folders)
139
+ return AppContext.type_data_folder(InstanceType.NODE, system_folders)
136
140
 
137
141
  @property
138
142
  def databases(self) -> dict:
@@ -230,36 +234,31 @@ class NodeContext(AppContext):
230
234
  def proxy_log_file(self):
231
235
  return self.log_file_name(type_="proxy_server")
232
236
 
233
- def docker_temporary_volume_name(self, job_id: int) -> str:
237
+ def get_database_uri(self, label: str = "default") -> str:
234
238
  """
235
- Docker volume in which temporary data is stored. Temporary data is
236
- linked to a specific run. Multiple algorithm containers can have the
237
- same run id, and therefore the share same temporary volume.
239
+ Obtain the database URI for a specific database.
238
240
 
239
241
  Parameters
240
242
  ----------
241
- job_id : int
242
- run id provided by the server
243
+ label : str, optional
244
+ Database label, by default "default"
243
245
 
244
246
  Returns
245
247
  -------
246
248
  str
247
- Docker volume name
249
+ URI to the database
248
250
  """
249
- return f"{APPNAME}-{self.name}-{self.scope}-{job_id}-tmpvol"
251
+ return self.config["databases"][label]
250
252
 
251
- def get_database_uri(self, label: str = "default") -> str:
253
+ def __create_node_identifier(self) -> str:
252
254
  """
253
- Obtain the database URI for a specific database.
254
-
255
- Parameters
256
- ----------
257
- label : str, optional
258
- Database label, by default "default"
255
+ Create a unique identifier for the node.
259
256
 
260
257
  Returns
261
258
  -------
262
259
  str
263
- URI to the database
260
+ Unique identifier for the node
264
261
  """
265
- return self.config["databases"][label]
262
+ return hashlib.sha256(
263
+ self.config.get("api_key").encode(STRING_ENCODING)
264
+ ).hexdigest()[:16]
@@ -8,7 +8,7 @@ from jinja2 import Environment, FileSystemLoader
8
8
  from colorama import Fore, Style
9
9
 
10
10
  from vantage6.common.globals import APPNAME, InstanceType, Ports
11
- from vantage6.common import ensure_config_dir_writable, info, error, generate_apikey
11
+ from vantage6.common import info, error, generate_apikey
12
12
 
13
13
  import vantage6.cli.dev.data as data_dir
14
14
  from vantage6.cli.context.algorithm_store import AlgorithmStoreContext
@@ -49,7 +49,7 @@ def create_node_data_files(num_nodes: int, server_name: str) -> list[Path]:
49
49
  start = i * length_df // num_nodes
50
50
  end = (i + 1) * length_df // num_nodes
51
51
  data = full_df[start:end]
52
- data_file = data_folder / f"df_{node_name}.csv"
52
+ data_file = data_folder / f"{node_name}.csv"
53
53
 
54
54
  # write data to file
55
55
  data.to_csv(data_file, index=False)
@@ -114,15 +114,13 @@ def create_node_config_file(
114
114
  }
115
115
  )
116
116
 
117
- # Check that we can write the node config
118
- if not ensure_config_dir_writable():
119
- error("Cannot write configuration file. Exiting...")
117
+ try:
118
+ with open(full_path, "x") as f:
119
+ f.write(node_config)
120
+ except Exception as e:
121
+ error(f"Could not write node configuration file: {e}")
120
122
  exit(1)
121
123
 
122
- Path(full_path).parent.mkdir(parents=True, exist_ok=True)
123
- with open(full_path, "x", encoding="utf-8") as f:
124
- f.write(node_config)
125
-
126
124
  info(
127
125
  f"Spawned node for organization {Fore.GREEN}{config['org_id']}"
128
126
  f"{Style.RESET_ALL}"
@@ -4,12 +4,9 @@ from shutil import rmtree
4
4
  from pathlib import Path
5
5
 
6
6
  import click
7
- import docker
8
- from colorama import Fore, Style
9
7
 
10
8
  from vantage6.cli.context.algorithm_store import AlgorithmStoreContext
11
- from vantage6.common import info, error
12
- from vantage6.common.globals import APPNAME
9
+ from vantage6.common import info
13
10
  from vantage6.cli.context.server import ServerContext
14
11
  from vantage6.cli.context.node import NodeContext
15
12
  from vantage6.cli.server.remove import cli_server_remove
@@ -37,20 +34,6 @@ def remove_demo_network(
37
34
  """
38
35
  ctx = get_dev_server_context(config, name)
39
36
 
40
- # check that the server is not running
41
- client = docker.from_env()
42
- running_servers = client.containers.list(
43
- filters={"label": f"{APPNAME}-type={InstanceType.SERVER.value}"}
44
- )
45
- running_server_names = [server.name for server in running_servers]
46
- container_name = f"{APPNAME}-{name}-user-{InstanceType.SERVER.value}"
47
- if container_name in running_server_names:
48
- error(
49
- f"Server {Fore.RED}{name}{Style.RESET_ALL} is still running! First stop "
50
- "the network with 'v6 dev stop-demo-network'."
51
- )
52
- return
53
-
54
37
  # remove the server
55
38
  for handler in itertools.chain(ctx.log.handlers, ctx.log.root.handlers):
56
39
  handler.close()
@@ -130,6 +130,6 @@ def find_running_node_names(client: docker.DockerClient) -> list[str]:
130
130
  List of names of running nodes
131
131
  """
132
132
  running_nodes = client.containers.list(
133
- filters={"label": f"{APPNAME}-type={InstanceType.NODE.value}"}
133
+ filters={"label": f"{APPNAME}-type={InstanceType.NODE}"}
134
134
  )
135
135
  return [node.name for node in running_nodes]
@@ -78,7 +78,7 @@ def cli_node_start(
78
78
 
79
79
  # check that this node is not already running
80
80
  running_nodes = docker_client.containers.list(
81
- filters={"label": f"{APPNAME}-type={InstanceType.NODE.value}"}
81
+ filters={"label": f"{APPNAME}-type={InstanceType.NODE}"}
82
82
  )
83
83
 
84
84
  suffix = "system" if system_folders else "user"
@@ -306,7 +306,7 @@ def cli_node_start(
306
306
  volumes=volumes,
307
307
  detach=True,
308
308
  labels={
309
- f"{APPNAME}-type": InstanceType.NODE.value,
309
+ f"{APPNAME}-type": InstanceType.NODE,
310
310
  "system": str(system_folders),
311
311
  "name": ctx.config_file_name,
312
312
  },
vantage6/cli/node/stop.py CHANGED
@@ -120,8 +120,10 @@ def _stop_node(
120
120
  scope = "system" if system_folders else "user"
121
121
  config_name = get_server_config_name(container_name, scope)
122
122
  ctx = NodeContext(config_name, system_folders, print_log_header=False)
123
+
124
+ # Do not delete the data volume as this would remove all sessions.
123
125
  for volume in [
124
- ctx.docker_volume_name,
126
+ # ctx.docker_volume_name,
125
127
  ctx.docker_squid_volume_name,
126
128
  ctx.docker_ssh_volume_name,
127
129
  ctx.docker_vpn_volume_name,
@@ -29,7 +29,7 @@ def cli_server_attach(name: str, system_folders: bool) -> None:
29
29
  client = docker.from_env()
30
30
 
31
31
  running_servers = client.containers.list(
32
- filters={"label": f"{APPNAME}-type={InstanceType.SERVER.value}"}
32
+ filters={"label": f"{APPNAME}-type={InstanceType.SERVER}"}
33
33
  )
34
34
  running_server_names = [node.name for node in running_servers]
35
35
 
@@ -43,7 +43,7 @@ def cli_server_attach(name: str, system_folders: bool) -> None:
43
43
  return
44
44
  else:
45
45
  post_fix = "system" if system_folders else "user"
46
- name = f"{APPNAME}-{name}-{post_fix}-{InstanceType.SERVER.value}"
46
+ name = f"{APPNAME}-{name}-{post_fix}-{InstanceType.SERVER}"
47
47
 
48
48
  if name in running_server_names:
49
49
  container = client.containers.get(name)
@@ -132,10 +132,7 @@ def cli_server_import(
132
132
  command=cmd,
133
133
  mounts=mounts,
134
134
  detach=True,
135
- labels={
136
- f"{APPNAME}-type": InstanceType.SERVER.value,
137
- "name": ctx.config_file_name,
138
- },
135
+ labels={f"{APPNAME}-type": InstanceType.SERVER, "name": ctx.config_file_name},
139
136
  environment=environment_vars,
140
137
  auto_remove=not keep,
141
138
  tty=True,
@@ -11,5 +11,4 @@ def cli_server_configuration_list() -> None:
11
11
  Print the available server configurations.
12
12
  """
13
13
  check_docker_running()
14
-
15
- get_server_configuration_list(InstanceType.SERVER.value)
14
+ get_server_configuration_list(InstanceType.SERVER)
@@ -28,7 +28,7 @@ def cli_server_shell(ctx: ServerContext) -> None:
28
28
  docker_client = docker.from_env()
29
29
 
30
30
  running_servers = docker_client.containers.list(
31
- filters={"label": f"{APPNAME}-type={InstanceType.SERVER.value}"}
31
+ filters={"label": f"{APPNAME}-type={InstanceType.SERVER}"}
32
32
  )
33
33
 
34
34
  if ctx.docker_container_name not in [s.name for s in running_servers]:
@@ -83,7 +83,7 @@ def cli_server_start(
83
83
  Start the server.
84
84
  """
85
85
  info("Starting server...")
86
- docker_client = check_for_start(ctx, InstanceType.SERVER.value)
86
+ docker_client = check_for_start(ctx, InstanceType.SERVER)
87
87
 
88
88
  image = get_image(image, ctx, "server", DEFAULT_SERVER_IMAGE)
89
89
 
@@ -157,10 +157,7 @@ def cli_server_start(
157
157
  command=cmd,
158
158
  mounts=mounts,
159
159
  detach=True,
160
- labels={
161
- f"{APPNAME}-type": InstanceType.SERVER.value,
162
- "name": ctx.config_file_name,
163
- },
160
+ labels={f"{APPNAME}-type": InstanceType.SERVER, "name": ctx.config_file_name},
164
161
  environment=environment_vars,
165
162
  ports={f"{internal_port}/tcp": (ip, port_)},
166
163
  name=ctx.docker_container_name,
@@ -37,7 +37,7 @@ def cli_server_stop(name: str, system_folders: bool, all_servers: bool):
37
37
  client = docker.from_env()
38
38
 
39
39
  running_servers = client.containers.list(
40
- filters={"label": f"{APPNAME}-type={InstanceType.SERVER.value}"}
40
+ filters={"label": f"{APPNAME}-type={InstanceType.SERVER}"}
41
41
  )
42
42
 
43
43
  if not running_servers:
@@ -62,7 +62,7 @@ def cli_server_stop(name: str, system_folders: bool, all_servers: bool):
62
62
  return
63
63
  else:
64
64
  post_fix = "system" if system_folders else "user"
65
- container_name = f"{APPNAME}-{name}-{post_fix}-{InstanceType.SERVER.value}"
65
+ container_name = f"{APPNAME}-{name}-{post_fix}-{InstanceType.SERVER}"
66
66
 
67
67
  if container_name not in running_server_names:
68
68
  error(f"{Fore.RED}{name}{Style.RESET_ALL} is not running!")
@@ -22,10 +22,10 @@ def cli_server_version(name: str, system_folders: bool) -> None:
22
22
  check_docker_running()
23
23
  client = docker.from_env()
24
24
 
25
- running_server_names = get_running_servers(client, InstanceType.SERVER.value)
25
+ running_server_names = get_running_servers(client, InstanceType.SERVER)
26
26
 
27
27
  name = get_server_name(
28
- name, system_folders, running_server_names, InstanceType.SERVER.value
28
+ name, system_folders, running_server_names, InstanceType.SERVER
29
29
  )
30
30
 
31
31
  if name in running_server_names:
@@ -1,4 +1,4 @@
1
- allow_drop_all: true
1
+ allow_drop_all: 'True'
2
2
  description: 'default_algorithm_store'
3
3
  ip: 0.0.0.0
4
4
  logging:
@@ -1,5 +1,5 @@
1
1
  api_key: {{ api_key }}
2
- api_path: /api
2
+ api_path: {{ api_path }}
3
3
  databases:
4
4
  {% for label, path in databases.items() %}
5
5
  - label: {{ label }}
@@ -28,6 +28,8 @@ logging:
28
28
  name: docker.utils.config
29
29
  - level: warning
30
30
  name: docker.auth
31
+ - level: warning
32
+ name: kubernetes.client.rest
31
33
  port: {{ port }}
32
34
  server_url: {{ server_url }}
33
35
  task_dir: {{ task_dir}}
@@ -1,4 +1,4 @@
1
- allow_drop_all: false
1
+ allow_drop_all: 'False'
2
2
  api_path: /api
3
3
  description: 'defaultserver'
4
4
  ip: 0.0.0.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vantage6
3
- Version: 4.10.1rc1
3
+ Version: 5.0.0a7
4
4
  Summary: vantage6 command line interface
5
5
  Home-page: https://github.com/vantage6/vantage6
6
6
  Requires-Python: >=3.10
@@ -10,14 +10,14 @@ Requires-Dist: colorama==0.4.6
10
10
  Requires-Dist: copier==9.2.0
11
11
  Requires-Dist: docker==7.1.0
12
12
  Requires-Dist: ipython==8.10.0
13
- Requires-Dist: jinja2==3.1.6
13
+ Requires-Dist: jinja2==3.1.5
14
14
  Requires-Dist: pandas>=1.5.3
15
15
  Requires-Dist: questionary==1.10.0
16
16
  Requires-Dist: rich==13.5.2
17
17
  Requires-Dist: schema==0.7.5
18
- Requires-Dist: SQLAlchemy==1.4.46
19
- Requires-Dist: vantage6-common==4.10.1rc1
20
- Requires-Dist: vantage6-client==4.10.1rc1
18
+ Requires-Dist: sqlalchemy==2.0.37
19
+ Requires-Dist: vantage6-common==5.0.0a7
20
+ Requires-Dist: vantage6-client==5.0.0a7
21
21
  Provides-Extra: dev
22
22
  Requires-Dist: coverage==6.4.4; extra == "dev"
23
23
  Requires-Dist: black; extra == "dev"
@@ -1,39 +1,38 @@
1
1
  tests_cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  tests_cli/test_example.py,sha256=0fw_v-lgZEacshWSDwLNyLMA1_xc48bKUGM3ll-n1L0,146
3
3
  tests_cli/test_node_cli.py,sha256=XAKRS1-SXdeBRz3ob25q467soCIB178pKVz8MJVZbCQ,17534
4
- tests_cli/test_server_cli.py,sha256=DLcOWM0ZCRTs-XMNsNKCOEELUMh22Ayow1FvAFLI0aA,5879
4
+ tests_cli/test_server_cli.py,sha256=M0Vh4XZIxZPwPPFDY03pBP3yk98vmmW_2G91BcM0_Yg,5867
5
5
  tests_cli/test_wizard.py,sha256=NIj59eiCBuVNJXwhofrWLmLIKAsD45gSOzqOFWLmWhY,4916
6
- vantage6/cli/__build__,sha256=a4ayc_80_OGda4BO_1o_V0etpOqiLx1JwB5S3beHW0s,1
6
+ vantage6/cli/__build__,sha256=eQJpm-Qsio5G-7tFAXJlF-hrIsVqGJ92JabaSQgbJFE,1
7
7
  vantage6/cli/__init__.py,sha256=ZXbeQ_-g2-M4XYteWZkoO5lMFYhqjm5doQgGy1fq8i0,125
8
- vantage6/cli/_version.py,sha256=nMTSumCNc9_aCqofYJOR0p4Siz14Bqne4oF2KVFvzJk,701
8
+ vantage6/cli/_version.py,sha256=iDijqhgy5jzZ0LAyzW1LlXeeuMcHWMyg9D8xbXtV7Ck,696
9
9
  vantage6/cli/cli.py,sha256=NHpiPcljADaVzwGYrG4FWVMfbmDRguSZWBeGxcdQxDo,6184
10
- vantage6/cli/configuration_manager.py,sha256=QuR8Lvgjfp36aLnMV3PdbjddVJHOCvOv2Vci1bYHDHY,3642
10
+ vantage6/cli/configuration_manager.py,sha256=cN4tQpQjLG5GaGrsjEP-5ed_LqvPApIkNkM1J6ai3n0,3588
11
11
  vantage6/cli/configuration_wizard.py,sha256=ifqvrVqHkxoM0ZVUVIwlYXFByzAbuVlahNjmwFGLVRU,20874
12
12
  vantage6/cli/globals.py,sha256=8AWI55FBbumVQTuI1bJzKp5hiRWtiwsVgTTKqWgRBes,1616
13
13
  vantage6/cli/utils.py,sha256=Jfr6IeHMQDk_wU5X7rJ1dRY118dhVVX8PwzwMYMv9Vw,2481
14
14
  vantage6/cli/algorithm/create.py,sha256=kRT1BlBcb0fDaB2Q988WxtA6EyAZmOW5QoU2uhbwBIo,2075
15
15
  vantage6/cli/algorithm/update.py,sha256=WwAfTnq0kTOgePUsBzGoo1AJQqGMn82E9Bjk1wf61CQ,1338
16
- vantage6/cli/algostore/attach.py,sha256=WcwamJXIt1wemvkNgQQHkcaaFHVj4lGrbUB4YtdAADE,1679
16
+ vantage6/cli/algostore/attach.py,sha256=LVMgomAbNlsbxTggl6HsX-loCT4ZRWgeh6OsbRY9qqM,1667
17
17
  vantage6/cli/algostore/files.py,sha256=r89VRixK_K-c44qseq58Aa2Dqf1wEf8yompQRN5AVu4,580
18
- vantage6/cli/algostore/list.py,sha256=WH-WkPbo-WtXe2I7XI_JCBB1rxZQuVo0jBqkFv63czo,423
18
+ vantage6/cli/algostore/list.py,sha256=owBrU52ANp8oE68Rk1Hhd6yNYqWX-7uREtmCok_wndg,417
19
19
  vantage6/cli/algostore/new.py,sha256=ekqZ7_qCUtWs0QU6coo34thfkksHbCAYAD8nr0SKgO4,2147
20
20
  vantage6/cli/algostore/remove.py,sha256=ieQLpo2ZpblpPxaeRXdB7IO0DzTtURnveYQltW7TTSw,1643
21
- vantage6/cli/algostore/start.py,sha256=MI1wSvRdORyOdgZZKkyxFZSHwxUj060HXAlm-elYh0M,3181
22
- vantage6/cli/algostore/stop.py,sha256=79C-q27x_BdkrwZGLVDnKOsyMiHXeG9k_UsfcLrGEgw,1841
21
+ vantage6/cli/algostore/start.py,sha256=lkijG7K5TymXpZqVLhrW-YPhBmex_8T6WSLSruj64PQ,3169
22
+ vantage6/cli/algostore/stop.py,sha256=8g5DlISUXTf7abs4BTi2b2XOsuKWTwUGuCPIOMgSAeA,1835
23
23
  vantage6/cli/common/decorator.py,sha256=7Iwlcc_ekgXJco4tNjEV79ul43Q28OrieiGkvDBeGeE,3625
24
- vantage6/cli/common/start.py,sha256=tjz61lQ9yYf-ZAow_Zm3J17oJVDLSLBdxhfR8Wb9eoo,9255
25
- vantage6/cli/common/utils.py,sha256=fr94GoVxKTJnkdR5ncxSBtg5T9rzi2o8OoMW4PMaEIY,4772
24
+ vantage6/cli/common/start.py,sha256=IazXW6hKzFTomGu19lvr5z-EOzyXOD1fKokCwiIA8zc,9253
25
+ vantage6/cli/common/utils.py,sha256=Hm-8U2aolFbJ2ChZHUH20Nyofrd6T-YyOz1acRUuhUo,4596
26
26
  vantage6/cli/context/__init__.py,sha256=e8rfY2tCyu6_SLQ-rbVzEHkDtmbnGCZRHFN_HH-2bnA,2683
27
- vantage6/cli/context/algorithm_store.py,sha256=RimxNcoqfWeu2WQede6wsOu1rx-azzXIPVkCDqVJLWs,3944
27
+ vantage6/cli/context/algorithm_store.py,sha256=NsmrgDCTJ10KqQ209Q1sq-hBhuU_4LRqfbj3SZ-ivnU,3938
28
28
  vantage6/cli/context/base_server.py,sha256=paKSzNrKWD-J6eakHAtGELk2cD05A8NqoCAuQfF7c2s,2972
29
- vantage6/cli/context/node.py,sha256=4R7X__u_pyZVvRSNO3ojTnVQFTWhuIemoHcGP6hsD5I,7444
29
+ vantage6/cli/context/node.py,sha256=BIDSIwbNkoqgAg8CUMA7Q_cJjp8vNwqnr3daY8X4Juw,7362
30
30
  vantage6/cli/context/server.py,sha256=vBGJWNsJoVcIryX5OLiWnFklNRcjOVkhqm2U5tqW5b0,3946
31
- vantage6/cli/dev/create.py,sha256=6LiK0MUZjZK_W932WnlMMVeCqX1L11F87Rk1UkU6O-4,19347
32
- vantage6/cli/dev/remove.py,sha256=R_OU_LXLDCnoD-2xnegg4lh0B3t8EgpqzDqueLx16io,3730
31
+ vantage6/cli/dev/create.py,sha256=2-vqK1GpL-fFJEiZ4Anp0ZUAI94dHKWBbU6-wbyZWbo,19194
32
+ vantage6/cli/dev/remove.py,sha256=1ZX5L3bqTsRUt8PkXUvH7tgSLR32viZ5Ve_Q1k-sQ5M,3055
33
33
  vantage6/cli/dev/start.py,sha256=fUMoPAEpmXoDAJidAmjIziaHZX1yqEErcrTKEXqPik8,4471
34
34
  vantage6/cli/dev/stop.py,sha256=gPy87r8T3nqe7RFJjlYE9Bns8N3RiPPcdzNIFCoqGRY,1430
35
35
  vantage6/cli/dev/utils.py,sha256=DOTwPVXKZWhJfto9FG7EFgMhMaFJHXuhLDSlBCUCR1o,888
36
- vantage6/cli/dev/data/olympic_athletes_2016.csv,sha256=WGycwcwMKEyOyJc3aEo4EhrnBJiTSE0kZAr50j2qzGk,77699
37
36
  vantage6/cli/node/attach.py,sha256=6VADWJb4NTXu-TK_XR8It8J7OJ8f_xE2P8cpSd3vAzQ,2326
38
37
  vantage6/cli/node/clean.py,sha256=uCty2GNuwoTybs1nIOygQLxtbleQ-rnnS6_4ieWVmCw,1199
39
38
  vantage6/cli/node/create_private_key.py,sha256=yciL1DtACxrBeEGxeaDi0NefDTvegG6s4rr5jA9J5TY,5207
@@ -43,34 +42,34 @@ vantage6/cli/node/new.py,sha256=wuv8mdL4sLV91TJMIksU8dx2LlcUFrA1oORyiICruMw,2039
43
42
  vantage6/cli/node/remove.py,sha256=Al1XALUwciOU6zIRQB2D9EggUdvtU23laOZTWyYKKvc,3552
44
43
  vantage6/cli/node/restart.py,sha256=bWx0n4tN8TWOy_o8lJkA7AR-H1UIbfAiPp93I5wXg1Y,3709
45
44
  vantage6/cli/node/set_api_key.py,sha256=2kB8wveTy9_N8kX4huVhJhY86Ppd2BI8v-d7MRXQAdA,1877
46
- vantage6/cli/node/start.py,sha256=mV4vDBBtFcxva4MJdg5ymsstefDM4bV4pmhSsVX1o4k,12407
47
- vantage6/cli/node/stop.py,sha256=-jw0DChIoUScVVwY4SBi_AvmdXT0XlMsGVuO9_vrpJI,4085
45
+ vantage6/cli/node/start.py,sha256=LsHoIKprsfyoDAbSwxCCux3W5zZHsaEiOKz1dZ9-ynE,12395
46
+ vantage6/cli/node/stop.py,sha256=Hf5z2r6ttbW-DeU0cdHNXIJcgL-eIVRv8i7zZLo4foY,4159
48
47
  vantage6/cli/node/version.py,sha256=X921xyIvIPYObPac2Si5msZ2tay5ySidnPWmGj1ilZw,1959
49
- vantage6/cli/node/common/__init__.py,sha256=ziGS3skkX6Kf4uvFqe22kdFbSck7mubNK5a-KgDAxX8,3467
48
+ vantage6/cli/node/common/__init__.py,sha256=Jq3cI0Y1cybM_khCmdl1xwY1H6FLNJSHuu1J85DFg7Q,3461
50
49
  vantage6/cli/rabbitmq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
50
  vantage6/cli/rabbitmq/definitions.py,sha256=CcS9jG7ZGB6LjzHQqZ2FliDurPItUvNSjHrOYptORZg,637
52
51
  vantage6/cli/rabbitmq/queue_manager.py,sha256=KGDGHy4NBN8O9xhjzfI7mh65i9lOQIqQwrOFqvGFdHI,7545
53
52
  vantage6/cli/rabbitmq/rabbitmq.config,sha256=LYAQAEoXaF472XeJDYXc9JfWSETIzPRIR2W-JB2i7fU,136
54
- vantage6/cli/server/attach.py,sha256=yTjD8-PnSY8N8_NTlbHmBGGEH5MOJspfFiXHqjVzIKY,2137
53
+ vantage6/cli/server/attach.py,sha256=AVwL1DprOFNzYrmuE_OVUGAiQNW4x923bDML-ZzhR3s,2125
55
54
  vantage6/cli/server/files.py,sha256=LJhFyYHcEnCgFhVAM-lX6_EnfhMJ7YPdN21kVIpmwkc,507
56
- vantage6/cli/server/import_.py,sha256=pW1WlVc7eKoLhprxkREz9g8RfXxkEylB2467PsRV8eI,4557
57
- vantage6/cli/server/list.py,sha256=_kVBe7TrtUfT2ZLWPkVvKj4xx5AvS17e99Bwp0ajc_E,410
55
+ vantage6/cli/server/import_.py,sha256=mp6DgHzmRXd_M_507QPJOp0IiAtbXJY4V0IZxdkY0Lg,4516
56
+ vantage6/cli/server/list.py,sha256=62ocNRtOAwbx9bgviva4Nd7_3rA7XmFDA55SPyNWZ1o,403
58
57
  vantage6/cli/server/new.py,sha256=JnUMMD0UUSCOdO0K7v19l5HOV7vnMd9D38WUoEJ2F00,2094
59
58
  vantage6/cli/server/remove.py,sha256=6tfKfVa5dYnZAKQYo_VlGZTuiugi7sh2F3U2cZ7mCmQ,1627
60
- vantage6/cli/server/shell.py,sha256=7cSdBOwvloWyCz3RXHaFZUnxgNRV4gZUDmIFecV8Hks,1589
61
- vantage6/cli/server/start.py,sha256=mPfsfkihJWf8bObNoln4YuBwOCVx3EstXtcNft8Pigo,7787
62
- vantage6/cli/server/stop.py,sha256=DY3r9VsUk_r3cqIm1iL-U-kstLVb9pZsiGDSZyAMrKA,4147
63
- vantage6/cli/server/version.py,sha256=aXAztHEky_F2jPbfPdHPfsAY7rdTurl0_3S6bL94_QQ,1318
59
+ vantage6/cli/server/shell.py,sha256=9b_koFmBQRQYIK57usm75hZAaIF4msicLTu55dYHlzM,1583
60
+ vantage6/cli/server/start.py,sha256=sHTK7tCwLvFJbNKac5FB1IYhb8oTUrA9rM3nKjIplHw,7740
61
+ vantage6/cli/server/stop.py,sha256=tUreB1ogc9SwKMrmejfvErtwt9d5M_qOON2s9UZmLvE,4135
62
+ vantage6/cli/server/version.py,sha256=AUYp0CJBnYF8tD3HXqE7kM0RycXipjOYEDkraswUlaA,1306
64
63
  vantage6/cli/server/common/__init__.py,sha256=htv0mFYa4GhIHdzA2xqUUgKhHcMh09UQERlIjIgrwOM,2062
65
- vantage6/cli/template/algo_store_config.j2,sha256=XR-ly-47p6egH8lVh4lZZDh3YSV4kFnkZprdsfSkS2Y,552
66
- vantage6/cli/template/node_config.j2,sha256=XHJm5x5KEwuBAZERzWzzVKJxcw7Px5k-LYSMET_8dqU,743
67
- vantage6/cli/template/server_config.j2,sha256=3gEPY8YlqUMAQEgfR7a1HTU8WaCRhVzTS-IwPhsU1Gg,802
64
+ vantage6/cli/template/algo_store_config.j2,sha256=QBGakqMOvUTcOIdAqoR4X6E8eApQ65ggAnQmaUViAV0,554
65
+ vantage6/cli/template/node_config.j2,sha256=TPeCbfYEblwWonZkyBqzXluaoN-w0MpthwMTN8lTTW8,805
66
+ vantage6/cli/template/server_config.j2,sha256=LKPa-ocK7h8qXgzrEYVHjxovaGX0CRQ0uPXImdAcpz0,804
68
67
  vantage6/cli/template/server_import_config.j2,sha256=9WT2XeG9-ADoYLb4ahXhof3i9Fcvg0oqwNPyFwLJpvc,1827
69
68
  vantage6/cli/test/feature_tester.py,sha256=M8hvebupPwYjcBZoUB8GB3qb8G1-d3ipNzRMc_3-Z8E,2761
70
69
  vantage6/cli/test/integration_test.py,sha256=yQVG72XKDNH_eOPTsf3pb65FCBwJzMxn5VNfUGemJBM,3808
71
70
  vantage6/cli/test/common/diagnostic_runner.py,sha256=x_4ikihgoSTKI914pqlgVziBSg5LpV6MheO6O_GBCeA,6657
72
- vantage6-4.10.1rc1.dist-info/METADATA,sha256=SOdtW3t66t8QFaPpgkZet9CQYIboQxydipcaDqQDpy4,10890
73
- vantage6-4.10.1rc1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
74
- vantage6-4.10.1rc1.dist-info/entry_points.txt,sha256=YFBvwjxoeAGxYyPC-YevEgOBBYRGaXkS6jiOGGCLNy0,157
75
- vantage6-4.10.1rc1.dist-info/top_level.txt,sha256=CYDIBS8jEfFq5YCs_Fuit54K9-3wdosZppTrsymIoUk,19
76
- vantage6-4.10.1rc1.dist-info/RECORD,,
71
+ vantage6-5.0.0a7.dist-info/METADATA,sha256=vkWcDph3hL3JhbVo4vwCFmYM2n_9qYO1cK-iq3QgYuI,10884
72
+ vantage6-5.0.0a7.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
73
+ vantage6-5.0.0a7.dist-info/entry_points.txt,sha256=YFBvwjxoeAGxYyPC-YevEgOBBYRGaXkS6jiOGGCLNy0,157
74
+ vantage6-5.0.0a7.dist-info/top_level.txt,sha256=CYDIBS8jEfFq5YCs_Fuit54K9-3wdosZppTrsymIoUk,19
75
+ vantage6-5.0.0a7.dist-info/RECORD,,