aioli-sdk 1.3.0.dev15__tar.gz → 1.3.0.dev17__tar.gz
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.
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/PKG-INFO +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/__version__.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/cli.py +2 -0
- aioli_sdk-1.3.0.dev17/aioli/cli/project.py +181 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/test/test_cli.py +105 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/PKG-INFO +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/SOURCES.txt +1 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/__init__.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/authentication_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/deployments_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/information_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/packaged_models_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/projects_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/registries_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/roles_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/templates_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/tokens_api.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/users_api.py +4 -4
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api_client.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/configuration.py +2 -2
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/exceptions.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/__init__.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/auto_scaling_template.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/auto_scaling_template_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/autoscaling.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/configuration_resources.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/controller_config.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/controller_status.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_model_version.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_priority.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_state.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_token.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_token_patch_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_token_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/error_response.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/event_info.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/ezua_info.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/failure_info.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/login_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/login_response.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/model_auth_token.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/model_response.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/observability.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/packaged_model.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/packaged_model_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/project.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/project_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/resource_profile.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/resources_template.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/resources_template_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/role.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/role_assignment.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/role_assignments.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/security.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/success_response.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/telemetry_info.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/trained_model_registry.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/trained_model_registry_request.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/user.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/user_patch_request.py +4 -2
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/user_request.py +4 -2
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/user_session.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/rest.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/setup.py +1 -1
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/README.md +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/__init__.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/__init__.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/__main__.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/_util.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/deployment.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/errors.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/model.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/registry.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/render.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/role.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/sso.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/template.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/test/conftest.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/token.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/user.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/cli/version.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/__init__.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/api/__init__.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/api/_util.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/api/authentication.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/api/certs.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/api/errors.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/api/request.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/check.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/constants.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/declarative_argparse.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/requests.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/common/util.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli/util.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/dependency_links.txt +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/entry_points.txt +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/not-zip-safe +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/requires.txt +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aioli_sdk.egg-info/top_level.txt +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api/__init__.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/api_response.py +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/py.typed +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/pyproject.toml +0 -0
- {aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/setup.cfg +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
# © Copyright 2024 Hewlett Packard Enterprise Development LP
|
|
2
|
-
__version__ = "1.3.0-
|
|
2
|
+
__version__ = "1.3.0-dev17"
|
|
@@ -19,6 +19,7 @@ import aioli
|
|
|
19
19
|
from aioli.cli import render
|
|
20
20
|
from aioli.cli.deployment import args_description as deployment_args_description
|
|
21
21
|
from aioli.cli.model import args_description as model_args_description
|
|
22
|
+
from aioli.cli.project import args_description as project_args_description
|
|
22
23
|
from aioli.cli.registry import args_description as registry_args_description
|
|
23
24
|
from aioli.cli.role import args_description as role_args_description
|
|
24
25
|
from aioli.cli.sso import args_description as sso_args_description
|
|
@@ -55,6 +56,7 @@ args_description: ArgsDescription = [
|
|
|
55
56
|
]
|
|
56
57
|
all_args_description: ArgsDescription = (
|
|
57
58
|
args_description
|
|
59
|
+
+ project_args_description
|
|
58
60
|
+ registry_args_description
|
|
59
61
|
+ model_args_description
|
|
60
62
|
+ deployment_args_description
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# © Copyright 2024 Hewlett Packard Enterprise Development LP
|
|
2
|
+
from argparse import Namespace
|
|
3
|
+
from typing import Any, Dict, List
|
|
4
|
+
|
|
5
|
+
import aiolirest
|
|
6
|
+
from aioli import cli
|
|
7
|
+
from aioli.cli import render
|
|
8
|
+
from aioli.common.api import authentication
|
|
9
|
+
from aioli.common.api.errors import NotFoundException
|
|
10
|
+
from aioli.common.declarative_argparse import Arg, Cmd, Group
|
|
11
|
+
from aiolirest.models.project import Project
|
|
12
|
+
from aiolirest.models.project_request import ProjectRequest
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@authentication.required
|
|
16
|
+
def list_projects(args: Namespace) -> None:
|
|
17
|
+
with cli.setup_session(args) as session:
|
|
18
|
+
api_instance = aiolirest.ProjectsApi(session)
|
|
19
|
+
response = api_instance.projects_get()
|
|
20
|
+
|
|
21
|
+
if args.json:
|
|
22
|
+
render.print_json(format_json(response))
|
|
23
|
+
elif args.yaml:
|
|
24
|
+
print(render.format_object_as_yaml(format_json(response)))
|
|
25
|
+
else:
|
|
26
|
+
headers = ["Name", "Description", "Owner"]
|
|
27
|
+
values = [[p.name, p.description, p.owner] for p in response]
|
|
28
|
+
values.sort() # sort values by the first column
|
|
29
|
+
render.tabulate_or_csv(headers, values, args.csv)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def format_json(response: List[Project]) -> List[Dict[str, str]]:
|
|
33
|
+
return [project_to_dict(r) for r in response]
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def project_to_dict(project: Project) -> Dict[str, str]:
|
|
37
|
+
# Don't use the r.to_json() method as it adds backslash escapes for double quotes
|
|
38
|
+
d: Dict[str, str] = project.to_dict()
|
|
39
|
+
d.pop("id")
|
|
40
|
+
d.pop("modifiedAt")
|
|
41
|
+
return d
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
@authentication.required
|
|
45
|
+
def create_project(args: Namespace) -> None:
|
|
46
|
+
with cli.setup_session(args) as session:
|
|
47
|
+
api_instance = aiolirest.ProjectsApi(session)
|
|
48
|
+
|
|
49
|
+
project_request = ProjectRequest(
|
|
50
|
+
name=args.name,
|
|
51
|
+
description=args.description,
|
|
52
|
+
owner=args.owner,
|
|
53
|
+
)
|
|
54
|
+
api_instance.projects_post(project_request)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
@authentication.required
|
|
58
|
+
def update_project(args: Namespace) -> None:
|
|
59
|
+
with cli.setup_session(args) as session:
|
|
60
|
+
api_instance = aiolirest.ProjectsApi(session)
|
|
61
|
+
found = lookup_project(args.projectname, api_instance)
|
|
62
|
+
request = ProjectRequest(
|
|
63
|
+
name=found.name,
|
|
64
|
+
description=found.description,
|
|
65
|
+
owner=found.owner,
|
|
66
|
+
)
|
|
67
|
+
if args.name is not None:
|
|
68
|
+
request.name = args.name
|
|
69
|
+
|
|
70
|
+
if args.description is not None:
|
|
71
|
+
request.description = args.description
|
|
72
|
+
|
|
73
|
+
if args.owner is not None:
|
|
74
|
+
request.owner = args.owner
|
|
75
|
+
|
|
76
|
+
headers = {"Content-Type": "application/json"}
|
|
77
|
+
assert found.id is not None
|
|
78
|
+
api_instance.projects_id_put(found.id, request, _headers=headers)
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
@authentication.required
|
|
82
|
+
def delete_project(args: Namespace) -> None:
|
|
83
|
+
with cli.setup_session(args) as session:
|
|
84
|
+
api_instance = aiolirest.ProjectsApi(session)
|
|
85
|
+
found = lookup_project(args.name, api_instance)
|
|
86
|
+
assert found.id is not None
|
|
87
|
+
api_instance.projects_id_delete(found.id)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
@authentication.required
|
|
91
|
+
def show_project(args: Namespace) -> None:
|
|
92
|
+
with cli.setup_session(args) as session:
|
|
93
|
+
api_instance = aiolirest.ProjectsApi(session)
|
|
94
|
+
|
|
95
|
+
project = lookup_project(args.name, api_instance)
|
|
96
|
+
|
|
97
|
+
d = project.to_dict()
|
|
98
|
+
if args.json:
|
|
99
|
+
render.print_json(d)
|
|
100
|
+
else:
|
|
101
|
+
print(render.format_object_as_yaml(d))
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
def lookup_project(name: str, api: aiolirest.ProjectsApi) -> Project:
|
|
105
|
+
for p in api.projects_get():
|
|
106
|
+
if p.name == name:
|
|
107
|
+
return p
|
|
108
|
+
raise NotFoundException(f"Project {name} not found")
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
main_cmd = Cmd(
|
|
112
|
+
"projects p|roject",
|
|
113
|
+
None,
|
|
114
|
+
"manage projects",
|
|
115
|
+
[
|
|
116
|
+
Cmd(
|
|
117
|
+
"list ls",
|
|
118
|
+
list_projects,
|
|
119
|
+
"list projects",
|
|
120
|
+
[
|
|
121
|
+
Group(
|
|
122
|
+
Arg("--csv", action="store_true", help="print as CSV"),
|
|
123
|
+
Arg("--json", action="store_true", help="print as JSON"),
|
|
124
|
+
Arg("--yaml", action="store_true", help="print as YAML"),
|
|
125
|
+
),
|
|
126
|
+
],
|
|
127
|
+
is_default=True,
|
|
128
|
+
),
|
|
129
|
+
Cmd(
|
|
130
|
+
"create",
|
|
131
|
+
create_project,
|
|
132
|
+
"create a project",
|
|
133
|
+
[
|
|
134
|
+
Arg(
|
|
135
|
+
"name",
|
|
136
|
+
help="The name of the project. Must begin with a letter, but may "
|
|
137
|
+
"contain letters, numbers, and hyphen",
|
|
138
|
+
),
|
|
139
|
+
Arg("--description", help="The description of the project"),
|
|
140
|
+
Arg("--owner", help="The owner of the project"),
|
|
141
|
+
],
|
|
142
|
+
),
|
|
143
|
+
Cmd(
|
|
144
|
+
"update",
|
|
145
|
+
update_project,
|
|
146
|
+
"modify a project",
|
|
147
|
+
[
|
|
148
|
+
Arg("projectname", help="The name of the project"),
|
|
149
|
+
Arg(
|
|
150
|
+
"--name",
|
|
151
|
+
help="The new name of the project. Must begin with a letter, but may "
|
|
152
|
+
"contain letters, numbers, and hyphen",
|
|
153
|
+
),
|
|
154
|
+
Arg("--description", help="The new description of the project"),
|
|
155
|
+
Arg("--owner", help="The owner of the project"),
|
|
156
|
+
],
|
|
157
|
+
),
|
|
158
|
+
Cmd(
|
|
159
|
+
"delete",
|
|
160
|
+
delete_project,
|
|
161
|
+
"delete a project",
|
|
162
|
+
[
|
|
163
|
+
Arg("name", help="The name of the project"),
|
|
164
|
+
],
|
|
165
|
+
),
|
|
166
|
+
Cmd(
|
|
167
|
+
"show",
|
|
168
|
+
show_project,
|
|
169
|
+
"show a project",
|
|
170
|
+
[
|
|
171
|
+
Arg("name", help="The name of the project"),
|
|
172
|
+
Group(
|
|
173
|
+
Arg("--yaml", action="store_true", help="print as YAML", default=True),
|
|
174
|
+
Arg("--json", action="store_true", help="print as JSON"),
|
|
175
|
+
),
|
|
176
|
+
],
|
|
177
|
+
),
|
|
178
|
+
],
|
|
179
|
+
)
|
|
180
|
+
|
|
181
|
+
args_description = [main_cmd] # type: List[Any]
|
|
@@ -26,6 +26,111 @@ class TestCli:
|
|
|
26
26
|
actual = os.popen("aioli --version").read().strip()
|
|
27
27
|
assert actual != bad_version
|
|
28
28
|
|
|
29
|
+
def test_project_list(self, setup_login: None) -> None:
|
|
30
|
+
# Validating table headers, expect to see the default project
|
|
31
|
+
expected = (
|
|
32
|
+
" Name | Description | Owner\n"
|
|
33
|
+
"---------+---------------------+---------\n"
|
|
34
|
+
" default | The default project | admin\n"
|
|
35
|
+
)
|
|
36
|
+
actual = subprocess.check_output(["aioli", "project", "list"]).decode("utf-8")
|
|
37
|
+
assert actual == expected
|
|
38
|
+
|
|
39
|
+
def test_project_create(self, setup_login: None) -> None:
|
|
40
|
+
# Create a project and test for expected values
|
|
41
|
+
assert (
|
|
42
|
+
os.system(
|
|
43
|
+
"aioli project create proj-2 " "--description 'the test project' " "--owner admin"
|
|
44
|
+
)
|
|
45
|
+
== 0
|
|
46
|
+
)
|
|
47
|
+
expected = "proj-2 | the test project | admin"
|
|
48
|
+
actual = subprocess.check_output(["aioli", "project", "list"]).decode("utf-8")
|
|
49
|
+
assert (actual.find(expected)) > 0
|
|
50
|
+
|
|
51
|
+
def test_project_list_csv(self, setup_login: None) -> None:
|
|
52
|
+
csv_output = subprocess.check_output(["aioli", "project", "list", "--csv"]).decode("utf-8")
|
|
53
|
+
temp_file: str = "/tmp/test-cli-p.csv"
|
|
54
|
+
with open(temp_file, "w") as file:
|
|
55
|
+
file.write(csv_output)
|
|
56
|
+
with open(temp_file, newline="") as file:
|
|
57
|
+
reader = csv.DictReader(file)
|
|
58
|
+
row1 = reader.__next__()
|
|
59
|
+
assert row1["Name"] == "default", "Expected default"
|
|
60
|
+
assert row1["Description"] == "The default project", "Expected The default project"
|
|
61
|
+
assert row1["Owner"] == "admin", "Expected admin"
|
|
62
|
+
row2 = reader.__next__()
|
|
63
|
+
assert row2["Name"] == "proj-2", "Expected proj-2"
|
|
64
|
+
assert row2["Description"] == "the test project", "Expected the test project"
|
|
65
|
+
assert row2["Owner"] == "admin", "Expected admin"
|
|
66
|
+
|
|
67
|
+
# fmt: off
|
|
68
|
+
def test_project_list_json_yaml(self, setup_login: None) -> None:
|
|
69
|
+
expected = (
|
|
70
|
+
'[\n' # noqa: Q000
|
|
71
|
+
' {\n' # noqa: Q000
|
|
72
|
+
' "description": "the test project",\n'
|
|
73
|
+
' "name": "proj-2",\n'
|
|
74
|
+
' "owner": "admin"\n'
|
|
75
|
+
' },\n' # noqa: Q000
|
|
76
|
+
' {\n' # noqa: Q000
|
|
77
|
+
' "description": "The default project",\n'
|
|
78
|
+
' "name": "default",\n'
|
|
79
|
+
' "owner": "admin"\n'
|
|
80
|
+
' }\n' # noqa: Q000
|
|
81
|
+
']\n' # noqa: Q000
|
|
82
|
+
)
|
|
83
|
+
actual = subprocess.check_output(
|
|
84
|
+
["aioli", "project", "list", "--json"]).decode("utf-8")
|
|
85
|
+
assert actual == expected
|
|
86
|
+
|
|
87
|
+
expected_obj = json.loads(expected)
|
|
88
|
+
actual_obj = yaml.safe_load(
|
|
89
|
+
subprocess.check_output(["aioli", "project", "list", "--yaml"]).decode("utf-8"))
|
|
90
|
+
|
|
91
|
+
assert actual_obj == expected_obj
|
|
92
|
+
|
|
93
|
+
# fmt: on
|
|
94
|
+
|
|
95
|
+
def test_project_update(self, setup_login: None) -> None:
|
|
96
|
+
# Update project and test for expected values
|
|
97
|
+
assert (
|
|
98
|
+
os.system(
|
|
99
|
+
"aioli project update proj-2 --name proj-3 "
|
|
100
|
+
"--description 'the updated test project' "
|
|
101
|
+
"--owner admin"
|
|
102
|
+
)
|
|
103
|
+
== 0
|
|
104
|
+
)
|
|
105
|
+
actual = subprocess.check_output(["aioli", "project", "list"]).decode("utf-8")
|
|
106
|
+
expected = "proj-3 | the updated test project | admin"
|
|
107
|
+
assert (actual.find(expected)) > 0
|
|
108
|
+
|
|
109
|
+
def test_project_delete(self, setup_login: None) -> None:
|
|
110
|
+
# Delete project and test for expected values
|
|
111
|
+
assert os.system("aioli project delete proj-3") == 0
|
|
112
|
+
actual = subprocess.check_output(["aioli", "project", "list"]).decode("utf-8")
|
|
113
|
+
expected = "proj-3"
|
|
114
|
+
assert (actual.find(expected)) < 0 # Expect to be not found
|
|
115
|
+
|
|
116
|
+
def test_project_show(self, setup_login: None) -> None:
|
|
117
|
+
# Show project and test for expected values
|
|
118
|
+
expected = "description: The default project\nname: default\nowner: admin"
|
|
119
|
+
result = subprocess.check_output(["aioli", "project", "show", "default"]).decode("utf-8")
|
|
120
|
+
result_list = result.split("\n")
|
|
121
|
+
filtered_result = ""
|
|
122
|
+
|
|
123
|
+
# Filter out modifiedAt and id fields as they vary for each test run
|
|
124
|
+
for line in result_list:
|
|
125
|
+
if "modifiedAt" in line:
|
|
126
|
+
continue
|
|
127
|
+
if "id" in line:
|
|
128
|
+
continue
|
|
129
|
+
filtered_result = filtered_result + "\n" + line
|
|
130
|
+
|
|
131
|
+
actual = filtered_result.strip()
|
|
132
|
+
assert actual == expected
|
|
133
|
+
|
|
29
134
|
def test_registry_list(self, setup_login: None) -> None:
|
|
30
135
|
# Validating table headers, there are no entries yet
|
|
31
136
|
assert os.system("aioli registry list") == 0
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
9
9
|
|
|
10
|
-
The version of the OpenAPI document: 1.3.0-
|
|
10
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
11
11
|
Contact: community@determined-ai
|
|
12
12
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
13
13
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -868,7 +868,7 @@ class UsersApi:
|
|
|
868
868
|
) -> User:
|
|
869
869
|
"""Update user properties.
|
|
870
870
|
|
|
871
|
-
Update a user's properties. Provide a body that contains one or more of the properties: - `username` - `displayName` - `password` - `active`
|
|
871
|
+
Update a user's properties. Provide a body that contains one or more of the properties: - `username` - `displayName` - `password` - `active` - `defaultProject`
|
|
872
872
|
|
|
873
873
|
:param id: User ID (required)
|
|
874
874
|
:type id: str
|
|
@@ -943,7 +943,7 @@ class UsersApi:
|
|
|
943
943
|
) -> ApiResponse[User]:
|
|
944
944
|
"""Update user properties.
|
|
945
945
|
|
|
946
|
-
Update a user's properties. Provide a body that contains one or more of the properties: - `username` - `displayName` - `password` - `active`
|
|
946
|
+
Update a user's properties. Provide a body that contains one or more of the properties: - `username` - `displayName` - `password` - `active` - `defaultProject`
|
|
947
947
|
|
|
948
948
|
:param id: User ID (required)
|
|
949
949
|
:type id: str
|
|
@@ -1018,7 +1018,7 @@ class UsersApi:
|
|
|
1018
1018
|
) -> RESTResponseType:
|
|
1019
1019
|
"""Update user properties.
|
|
1020
1020
|
|
|
1021
|
-
Update a user's properties. Provide a body that contains one or more of the properties: - `username` - `displayName` - `password` - `active`
|
|
1021
|
+
Update a user's properties. Provide a body that contains one or more of the properties: - `username` - `displayName` - `password` - `active` - `defaultProject`
|
|
1022
1022
|
|
|
1023
1023
|
:param id: User ID (required)
|
|
1024
1024
|
:type id: str
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -389,7 +389,7 @@ conf = aiolirest.Configuration(
|
|
|
389
389
|
return "Python SDK Debug Report:\n"\
|
|
390
390
|
"OS: {env}\n"\
|
|
391
391
|
"Python Version: {pyversion}\n"\
|
|
392
|
-
"Version of the API: 1.3.0-
|
|
392
|
+
"Version of the API: 1.3.0-dev17\n"\
|
|
393
393
|
"SDK Package Version: 1.0.0".\
|
|
394
394
|
format(env=sys.platform, pyversion=sys.version)
|
|
395
395
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
8
8
|
|
|
9
|
-
The version of the OpenAPI document: 1.3.0-
|
|
9
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
10
10
|
Contact: community@determined-ai
|
|
11
11
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
12
12
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
{aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/auto_scaling_template_request.py
RENAMED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
{aioli_sdk-1.3.0.dev15 → aioli_sdk-1.3.0.dev17}/aiolirest/models/deployment_model_version.py
RENAMED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
HPE MLIS is *Aioli* -- The AI On-line Inference Platform that enables easy deployment, tracking, and serving of your packaged models regardless of your preferred AI framework.
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.3.0-
|
|
8
|
+
The version of the OpenAPI document: 1.3.0-dev17
|
|
9
9
|
Contact: community@determined-ai
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|