flyte 0.0.1b3__py3-none-any.whl → 0.2.0b0__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 flyte might be problematic. Click here for more details.
- flyte/_cli/_common.py +12 -0
- {union → flyte}/_cli/_params.py +106 -147
- flyte/_cli/_run.py +24 -2
- flyte/_cli/main.py +28 -2
- flyte/_image.py +1 -2
- flyte/_initialize.py +24 -15
- flyte/_internal/runtime/convert.py +6 -0
- flyte/_run.py +0 -1
- flyte/_version.py +2 -2
- flyte/config/__init__.py +168 -0
- flyte/config/_config.py +196 -0
- flyte/config/_internal.py +64 -0
- flyte/remote/_console.py +1 -1
- flyte/types/_type_engine.py +4 -3
- {flyte-0.0.1b3.dist-info → flyte-0.2.0b0.dist-info}/METADATA +1 -1
- flyte-0.2.0b0.dist-info/RECORD +204 -0
- flyte-0.0.1b3.dist-info/RECORD +0 -390
- union/__init__.py +0 -54
- union/_api_commons.py +0 -3
- union/_bin/__init__.py +0 -0
- union/_bin/runtime.py +0 -113
- union/_build.py +0 -25
- union/_cache/__init__.py +0 -12
- union/_cache/cache.py +0 -141
- union/_cache/defaults.py +0 -9
- union/_cache/policy_function_body.py +0 -42
- union/_cli/__init__.py +0 -0
- union/_cli/_common.py +0 -263
- union/_cli/_create.py +0 -40
- union/_cli/_delete.py +0 -23
- union/_cli/_deploy.py +0 -120
- union/_cli/_get.py +0 -162
- union/_cli/_run.py +0 -150
- union/_cli/main.py +0 -72
- union/_code_bundle/__init__.py +0 -8
- union/_code_bundle/_ignore.py +0 -113
- union/_code_bundle/_packaging.py +0 -187
- union/_code_bundle/_utils.py +0 -342
- union/_code_bundle/bundle.py +0 -176
- union/_context.py +0 -146
- union/_datastructures.py +0 -295
- union/_deploy.py +0 -185
- union/_doc.py +0 -29
- union/_docstring.py +0 -26
- union/_environment.py +0 -43
- union/_group.py +0 -31
- union/_hash.py +0 -23
- union/_image.py +0 -760
- union/_initialize.py +0 -585
- union/_interface.py +0 -84
- union/_internal/__init__.py +0 -3
- union/_internal/controllers/__init__.py +0 -77
- union/_internal/controllers/_local_controller.py +0 -77
- union/_internal/controllers/pbhash.py +0 -39
- union/_internal/controllers/remote/__init__.py +0 -40
- union/_internal/controllers/remote/_action.py +0 -131
- union/_internal/controllers/remote/_client.py +0 -43
- union/_internal/controllers/remote/_controller.py +0 -169
- union/_internal/controllers/remote/_core.py +0 -341
- union/_internal/controllers/remote/_informer.py +0 -260
- union/_internal/controllers/remote/_service_protocol.py +0 -44
- union/_internal/imagebuild/__init__.py +0 -11
- union/_internal/imagebuild/docker_builder.py +0 -416
- union/_internal/imagebuild/image_builder.py +0 -243
- union/_internal/imagebuild/remote_builder.py +0 -0
- union/_internal/resolvers/__init__.py +0 -0
- union/_internal/resolvers/_task_module.py +0 -31
- union/_internal/resolvers/common.py +0 -24
- union/_internal/resolvers/default.py +0 -27
- union/_internal/runtime/__init__.py +0 -0
- union/_internal/runtime/convert.py +0 -163
- union/_internal/runtime/entrypoints.py +0 -121
- union/_internal/runtime/io.py +0 -136
- union/_internal/runtime/resources_serde.py +0 -134
- union/_internal/runtime/task_serde.py +0 -202
- union/_internal/runtime/taskrunner.py +0 -179
- union/_internal/runtime/types_serde.py +0 -53
- union/_logging.py +0 -124
- union/_protos/__init__.py +0 -0
- union/_protos/common/authorization_pb2.py +0 -66
- union/_protos/common/authorization_pb2.pyi +0 -106
- union/_protos/common/authorization_pb2_grpc.py +0 -4
- union/_protos/common/identifier_pb2.py +0 -71
- union/_protos/common/identifier_pb2.pyi +0 -82
- union/_protos/common/identifier_pb2_grpc.py +0 -4
- union/_protos/common/identity_pb2.py +0 -48
- union/_protos/common/identity_pb2.pyi +0 -72
- union/_protos/common/identity_pb2_grpc.py +0 -4
- union/_protos/common/list_pb2.py +0 -36
- union/_protos/common/list_pb2.pyi +0 -69
- union/_protos/common/list_pb2_grpc.py +0 -4
- union/_protos/common/policy_pb2.py +0 -37
- union/_protos/common/policy_pb2.pyi +0 -27
- union/_protos/common/policy_pb2_grpc.py +0 -4
- union/_protos/common/role_pb2.py +0 -37
- union/_protos/common/role_pb2.pyi +0 -51
- union/_protos/common/role_pb2_grpc.py +0 -4
- union/_protos/common/runtime_version_pb2.py +0 -28
- union/_protos/common/runtime_version_pb2.pyi +0 -24
- union/_protos/common/runtime_version_pb2_grpc.py +0 -4
- union/_protos/logs/dataplane/payload_pb2.py +0 -96
- union/_protos/logs/dataplane/payload_pb2.pyi +0 -168
- union/_protos/logs/dataplane/payload_pb2_grpc.py +0 -4
- union/_protos/secret/definition_pb2.py +0 -49
- union/_protos/secret/definition_pb2.pyi +0 -93
- union/_protos/secret/definition_pb2_grpc.py +0 -4
- union/_protos/secret/payload_pb2.py +0 -62
- union/_protos/secret/payload_pb2.pyi +0 -94
- union/_protos/secret/payload_pb2_grpc.py +0 -4
- union/_protos/secret/secret_pb2.py +0 -38
- union/_protos/secret/secret_pb2.pyi +0 -6
- union/_protos/secret/secret_pb2_grpc.py +0 -198
- union/_protos/validate/validate/validate_pb2.py +0 -76
- union/_protos/workflow/node_execution_service_pb2.py +0 -26
- union/_protos/workflow/node_execution_service_pb2.pyi +0 -4
- union/_protos/workflow/node_execution_service_pb2_grpc.py +0 -32
- union/_protos/workflow/queue_service_pb2.py +0 -75
- union/_protos/workflow/queue_service_pb2.pyi +0 -103
- union/_protos/workflow/queue_service_pb2_grpc.py +0 -172
- union/_protos/workflow/run_definition_pb2.py +0 -100
- union/_protos/workflow/run_definition_pb2.pyi +0 -256
- union/_protos/workflow/run_definition_pb2_grpc.py +0 -4
- union/_protos/workflow/run_logs_service_pb2.py +0 -41
- union/_protos/workflow/run_logs_service_pb2.pyi +0 -28
- union/_protos/workflow/run_logs_service_pb2_grpc.py +0 -69
- union/_protos/workflow/run_service_pb2.py +0 -133
- union/_protos/workflow/run_service_pb2.pyi +0 -173
- union/_protos/workflow/run_service_pb2_grpc.py +0 -412
- union/_protos/workflow/state_service_pb2.py +0 -58
- union/_protos/workflow/state_service_pb2.pyi +0 -69
- union/_protos/workflow/state_service_pb2_grpc.py +0 -138
- union/_protos/workflow/task_definition_pb2.py +0 -72
- union/_protos/workflow/task_definition_pb2.pyi +0 -65
- union/_protos/workflow/task_definition_pb2_grpc.py +0 -4
- union/_protos/workflow/task_service_pb2.py +0 -44
- union/_protos/workflow/task_service_pb2.pyi +0 -31
- union/_protos/workflow/task_service_pb2_grpc.py +0 -104
- union/_resources.py +0 -226
- union/_retry.py +0 -32
- union/_reusable_environment.py +0 -25
- union/_run.py +0 -374
- union/_secret.py +0 -61
- union/_task.py +0 -354
- union/_task_environment.py +0 -186
- union/_timeout.py +0 -47
- union/_tools.py +0 -27
- union/_utils/__init__.py +0 -11
- union/_utils/asyn.py +0 -119
- union/_utils/file_handling.py +0 -71
- union/_utils/helpers.py +0 -46
- union/_utils/lazy_module.py +0 -54
- union/_utils/uv_script_parser.py +0 -49
- union/_version.py +0 -21
- union/connectors/__init__.py +0 -0
- union/errors.py +0 -128
- union/extras/__init__.py +0 -5
- union/extras/_container.py +0 -263
- union/io/__init__.py +0 -11
- union/io/_dataframe.py +0 -0
- union/io/_dir.py +0 -425
- union/io/_file.py +0 -418
- union/io/pickle/__init__.py +0 -0
- union/io/pickle/transformer.py +0 -117
- union/io/structured_dataset/__init__.py +0 -122
- union/io/structured_dataset/basic_dfs.py +0 -219
- union/io/structured_dataset/structured_dataset.py +0 -1057
- union/py.typed +0 -0
- union/remote/__init__.py +0 -23
- union/remote/_client/__init__.py +0 -0
- union/remote/_client/_protocols.py +0 -129
- union/remote/_client/auth/__init__.py +0 -12
- union/remote/_client/auth/_authenticators/__init__.py +0 -0
- union/remote/_client/auth/_authenticators/base.py +0 -391
- union/remote/_client/auth/_authenticators/client_credentials.py +0 -73
- union/remote/_client/auth/_authenticators/device_code.py +0 -120
- union/remote/_client/auth/_authenticators/external_command.py +0 -77
- union/remote/_client/auth/_authenticators/factory.py +0 -200
- union/remote/_client/auth/_authenticators/pkce.py +0 -515
- union/remote/_client/auth/_channel.py +0 -184
- union/remote/_client/auth/_client_config.py +0 -83
- union/remote/_client/auth/_default_html.py +0 -32
- union/remote/_client/auth/_grpc_utils/__init__.py +0 -0
- union/remote/_client/auth/_grpc_utils/auth_interceptor.py +0 -204
- union/remote/_client/auth/_grpc_utils/default_metadata_interceptor.py +0 -144
- union/remote/_client/auth/_keyring.py +0 -154
- union/remote/_client/auth/_token_client.py +0 -258
- union/remote/_client/auth/errors.py +0 -16
- union/remote/_client/controlplane.py +0 -86
- union/remote/_data.py +0 -149
- union/remote/_logs.py +0 -74
- union/remote/_project.py +0 -86
- union/remote/_run.py +0 -820
- union/remote/_secret.py +0 -132
- union/remote/_task.py +0 -193
- union/report/__init__.py +0 -3
- union/report/_report.py +0 -178
- union/report/_template.html +0 -124
- union/storage/__init__.py +0 -24
- union/storage/_remote_fs.py +0 -34
- union/storage/_storage.py +0 -247
- union/storage/_utils.py +0 -5
- union/types/__init__.py +0 -11
- union/types/_renderer.py +0 -162
- union/types/_string_literals.py +0 -120
- union/types/_type_engine.py +0 -2131
- union/types/_utils.py +0 -80
- {flyte-0.0.1b3.dist-info → flyte-0.2.0b0.dist-info}/WHEEL +0 -0
- {flyte-0.0.1b3.dist-info → flyte-0.2.0b0.dist-info}/entry_points.txt +0 -0
- {flyte-0.0.1b3.dist-info → flyte-0.2.0b0.dist-info}/top_level.txt +0 -0
union/remote/_logs.py
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import asyncio
|
|
2
|
-
from dataclasses import dataclass
|
|
3
|
-
from typing import AsyncGenerator, AsyncIterator
|
|
4
|
-
|
|
5
|
-
from rich.console import Console
|
|
6
|
-
from rich.live import Live
|
|
7
|
-
from rich.panel import Panel
|
|
8
|
-
from rich.text import Text
|
|
9
|
-
|
|
10
|
-
from union._api_commons import syncer
|
|
11
|
-
from union._initialize import get_client, requires_client
|
|
12
|
-
from union._protos.logs.dataplane import payload_pb2
|
|
13
|
-
from union._protos.workflow import run_definition_pb2, run_logs_service_pb2
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class AsyncLogViewer:
|
|
17
|
-
def __init__(self, log_source: AsyncIterator, max_lines: int = 30):
|
|
18
|
-
self.console = Console()
|
|
19
|
-
self.log_source = log_source
|
|
20
|
-
self.max_lines = max_lines
|
|
21
|
-
self.lines = []
|
|
22
|
-
|
|
23
|
-
def _format_line(self, logline: payload_pb2.LogLine) -> Text:
|
|
24
|
-
style_map = {
|
|
25
|
-
payload_pb2.LogLineOriginator.SYSTEM: "dim",
|
|
26
|
-
payload_pb2.LogLineOriginator.USER: "cyan",
|
|
27
|
-
payload_pb2.LogLineOriginator.UNKNOWN: "light red",
|
|
28
|
-
}
|
|
29
|
-
style = style_map.get(logline.originator, "")
|
|
30
|
-
return Text(
|
|
31
|
-
f"[{logline.originator}] [{logline.timestamp.ToDatetime().isoformat()}]{logline.message}", style=style
|
|
32
|
-
)
|
|
33
|
-
|
|
34
|
-
def _render(self):
|
|
35
|
-
log_text = Text()
|
|
36
|
-
for line in self.lines[-self.max_lines :]:
|
|
37
|
-
log_text.append(line + "\n")
|
|
38
|
-
return Panel(log_text, title="Async Log Viewer", border_style="cyan")
|
|
39
|
-
|
|
40
|
-
async def run(self):
|
|
41
|
-
with Live(self._render(), refresh_per_second=10, console=self.console) as live:
|
|
42
|
-
try:
|
|
43
|
-
async for logline in self.log_source:
|
|
44
|
-
formatted = self._format_line(logline)
|
|
45
|
-
self.lines.append(formatted)
|
|
46
|
-
live.update(self._render())
|
|
47
|
-
except asyncio.CancelledError:
|
|
48
|
-
pass
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
@dataclass
|
|
52
|
-
class Logs:
|
|
53
|
-
@classmethod
|
|
54
|
-
@requires_client
|
|
55
|
-
@syncer.wrap
|
|
56
|
-
async def tail(cls, action_id: run_definition_pb2.ActionIdentifier, attempt: int = 1) -> AsyncGenerator[str, None]:
|
|
57
|
-
"""
|
|
58
|
-
Tail the logs for a given action ID and attempt.
|
|
59
|
-
:param action_id: The action ID to tail logs for.
|
|
60
|
-
:param attempt: The attempt number (default is 0).
|
|
61
|
-
"""
|
|
62
|
-
resp = get_client().logs_service.TailLogs(
|
|
63
|
-
run_logs_service_pb2.TailLogsRequest(action_id=action_id, attempt=attempt)
|
|
64
|
-
)
|
|
65
|
-
async for log_set in resp:
|
|
66
|
-
if log_set.logs:
|
|
67
|
-
for log in log_set.logs:
|
|
68
|
-
for line in log.lines:
|
|
69
|
-
yield line
|
|
70
|
-
|
|
71
|
-
@classmethod
|
|
72
|
-
async def create_viewer(cls, action_id: run_definition_pb2.ActionIdentifier, attempt: int = 1, max_lines: int = 30):
|
|
73
|
-
viewer = AsyncLogViewer(log_source=cls.tail.aio(cls, action_id=action_id, attempt=attempt), max_lines=max_lines)
|
|
74
|
-
await viewer.run()
|
union/remote/_project.py
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
import typing
|
|
4
|
-
from dataclasses import dataclass
|
|
5
|
-
from typing import AsyncGenerator, Literal, Tuple
|
|
6
|
-
|
|
7
|
-
import rich.repr
|
|
8
|
-
from flyteidl.admin import common_pb2, project_pb2
|
|
9
|
-
|
|
10
|
-
from union._api_commons import syncer
|
|
11
|
-
from union._initialize import get_client, get_common_config, requires_client
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
@dataclass
|
|
15
|
-
class Project:
|
|
16
|
-
"""
|
|
17
|
-
A class representing a project in the Union API.
|
|
18
|
-
"""
|
|
19
|
-
|
|
20
|
-
_pb2: project_pb2.Project
|
|
21
|
-
|
|
22
|
-
@classmethod
|
|
23
|
-
@requires_client
|
|
24
|
-
@syncer.wrap
|
|
25
|
-
async def get(cls, name: str, org: str | None = None) -> Project:
|
|
26
|
-
"""
|
|
27
|
-
Get a run by its ID or name. If both are provided, the ID will take precedence.
|
|
28
|
-
|
|
29
|
-
:param name: The name of the project.
|
|
30
|
-
:param org: The organization of the project (if applicable).
|
|
31
|
-
"""
|
|
32
|
-
service = get_client().project_domain_service
|
|
33
|
-
resp = await service.GetProject(
|
|
34
|
-
project_pb2.ProjectGetRequest(
|
|
35
|
-
id=name,
|
|
36
|
-
org=org,
|
|
37
|
-
)
|
|
38
|
-
)
|
|
39
|
-
return cls(resp)
|
|
40
|
-
|
|
41
|
-
@classmethod
|
|
42
|
-
@requires_client
|
|
43
|
-
@syncer.wrap
|
|
44
|
-
async def listall(
|
|
45
|
-
cls,
|
|
46
|
-
filters: str | None = None,
|
|
47
|
-
sort_by: Tuple[str, Literal["asc", "desc"]] | None = None,
|
|
48
|
-
) -> typing.Union[typing.Iterator[Project], AsyncGenerator[Project, None]]:
|
|
49
|
-
"""
|
|
50
|
-
Get a run by its ID or name. If both are provided, the ID will take precedence.
|
|
51
|
-
|
|
52
|
-
:param filters: The filters to apply to the project list.
|
|
53
|
-
:param sort_by: The sorting criteria for the project list, in the format (field, order).
|
|
54
|
-
:return: An iterator of projects.
|
|
55
|
-
"""
|
|
56
|
-
token = None
|
|
57
|
-
sort_by = sort_by or ("created_at", "asc")
|
|
58
|
-
sort_pb2 = common_pb2.Sort(
|
|
59
|
-
key=sort_by[0], direction=common_pb2.Sort.ASCENDING if sort_by[1] == "asc" else common_pb2.Sort.DESCENDING
|
|
60
|
-
)
|
|
61
|
-
org = get_common_config().org
|
|
62
|
-
while True:
|
|
63
|
-
resp = await get_client().project_domain_service.ListProjects(
|
|
64
|
-
project_pb2.ProjectListRequest(
|
|
65
|
-
limit=100,
|
|
66
|
-
token=token,
|
|
67
|
-
filters=filters,
|
|
68
|
-
sort_by=sort_pb2,
|
|
69
|
-
org=org,
|
|
70
|
-
)
|
|
71
|
-
)
|
|
72
|
-
token = resp.token
|
|
73
|
-
for p in resp.projects:
|
|
74
|
-
yield cls(p)
|
|
75
|
-
if not token:
|
|
76
|
-
break
|
|
77
|
-
|
|
78
|
-
def __rich_repr__(self) -> rich.repr.Result:
|
|
79
|
-
yield "name", self._pb2.name
|
|
80
|
-
yield "id", self._pb2.id
|
|
81
|
-
yield "description", self._pb2.description
|
|
82
|
-
yield "state", project_pb2.Project.ProjectState.Name(self._pb2.state)
|
|
83
|
-
yield (
|
|
84
|
-
"labels",
|
|
85
|
-
", ".join([f"{k}: {v}" for k, v in self._pb2.labels.values.items()]) if self._pb2.labels else None,
|
|
86
|
-
)
|