metal-stack-api 0.0.54__tar.gz → 0.0.55__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.
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/PKG-INFO +1 -1
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metal_stack_api.egg-info/PKG-INFO +1 -1
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metal_stack_api.egg-info/SOURCES.txt +6 -0
- metal_stack_api-0.0.55/metalstack/admin/v2/audit_connect.py +185 -0
- metal_stack_api-0.0.55/metalstack/admin/v2/audit_pb2.py +56 -0
- metal_stack_api-0.0.55/metalstack/admin/v2/audit_pb2.pyi +36 -0
- metal_stack_api-0.0.55/metalstack/api/v2/audit_connect.py +185 -0
- metal_stack_api-0.0.55/metalstack/api/v2/audit_pb2.py +87 -0
- metal_stack_api-0.0.55/metalstack/api/v2/audit_pb2.pyi +102 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/client/client.py +8 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/README.md +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metal_stack_api.egg-info/dependency_links.txt +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metal_stack_api.egg-info/requires.txt +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metal_stack_api.egg-info/top_level.txt +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/component_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/component_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/component_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/filesystem_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/filesystem_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/filesystem_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/image_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/image_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/image_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/ip_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/ip_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/ip_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/machine_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/machine_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/machine_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/network_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/network_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/network_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/partition_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/partition_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/partition_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/project_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/project_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/project_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_imageconstraint_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_imageconstraint_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_imageconstraint_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_reservation_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_reservation_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/size_reservation_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/switch_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/switch_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/switch_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/task_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/task_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/task_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/tenant_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/tenant_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/tenant_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/token_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/token_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/token_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/vpn_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/vpn_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/admin/v2/vpn_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/common_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/common_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/component_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/component_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/filesystem_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/filesystem_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/filesystem_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/health_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/health_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/health_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/image_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/image_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/image_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/ip_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/ip_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/ip_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/machine_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/machine_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/machine_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/method_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/method_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/method_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/network_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/network_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/network_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/partition_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/partition_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/partition_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/predefined_rules_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/predefined_rules_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/project_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/project_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/project_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_imageconstraint_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_imageconstraint_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_imageconstraint_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_reservation_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_reservation_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/size_reservation_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/switch_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/switch_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/tenant_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/tenant_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/tenant_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/token_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/token_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/token_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/user_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/user_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/user_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/version_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/version_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/version_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/vpn_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/api/v2/vpn_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/client/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/__init__.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/bmc_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/bmc_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/bmc_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/boot_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/boot_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/boot_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/component_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/component_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/component_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/event_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/event_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/event_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/switch_connect.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/switch_pb2.py +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/metalstack/infra/v2/switch_pb2.pyi +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/setup.cfg +0 -0
- {metal_stack_api-0.0.54 → metal_stack_api-0.0.55}/setup.py +0 -0
|
@@ -8,6 +8,9 @@ metal_stack_api.egg-info/top_level.txt
|
|
|
8
8
|
metalstack/__init__.py
|
|
9
9
|
metalstack/admin/__init__.py
|
|
10
10
|
metalstack/admin/v2/__init__.py
|
|
11
|
+
metalstack/admin/v2/audit_connect.py
|
|
12
|
+
metalstack/admin/v2/audit_pb2.py
|
|
13
|
+
metalstack/admin/v2/audit_pb2.pyi
|
|
11
14
|
metalstack/admin/v2/component_connect.py
|
|
12
15
|
metalstack/admin/v2/component_pb2.py
|
|
13
16
|
metalstack/admin/v2/component_pb2.pyi
|
|
@@ -58,6 +61,9 @@ metalstack/admin/v2/vpn_pb2.py
|
|
|
58
61
|
metalstack/admin/v2/vpn_pb2.pyi
|
|
59
62
|
metalstack/api/__init__.py
|
|
60
63
|
metalstack/api/v2/__init__.py
|
|
64
|
+
metalstack/api/v2/audit_connect.py
|
|
65
|
+
metalstack/api/v2/audit_pb2.py
|
|
66
|
+
metalstack/api/v2/audit_pb2.pyi
|
|
61
67
|
metalstack/api/v2/common_pb2.py
|
|
62
68
|
metalstack/api/v2/common_pb2.pyi
|
|
63
69
|
metalstack/api/v2/component_pb2.py
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
|
|
3
|
+
# source: metalstack/admin/v2/audit.proto
|
|
4
|
+
|
|
5
|
+
from collections.abc import AsyncGenerator, AsyncIterator, Iterable, Iterator, Mapping
|
|
6
|
+
from typing import Protocol
|
|
7
|
+
|
|
8
|
+
from connectrpc.client import ConnectClient, ConnectClientSync
|
|
9
|
+
from connectrpc.code import Code
|
|
10
|
+
from connectrpc.errors import ConnectError
|
|
11
|
+
from connectrpc.interceptor import Interceptor, InterceptorSync
|
|
12
|
+
from connectrpc.method import IdempotencyLevel, MethodInfo
|
|
13
|
+
from connectrpc.request import Headers, RequestContext
|
|
14
|
+
from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
|
|
15
|
+
import metalstack.admin.v2.audit_pb2 as metalstack_dot_admin_dot_v2_dot_audit__pb2
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class AuditService(Protocol):
|
|
19
|
+
async def get(self, request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
20
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
21
|
+
|
|
22
|
+
async def list(self, request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
23
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class AuditServiceASGIApplication(ConnectASGIApplication[AuditService]):
|
|
27
|
+
def __init__(self, service: AuditService | AsyncGenerator[AuditService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
|
|
28
|
+
super().__init__(
|
|
29
|
+
service=service,
|
|
30
|
+
endpoints=lambda svc: {
|
|
31
|
+
"/metalstack.admin.v2.AuditService/Get": Endpoint.unary(
|
|
32
|
+
method=MethodInfo(
|
|
33
|
+
name="Get",
|
|
34
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
35
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
36
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
37
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
38
|
+
),
|
|
39
|
+
function=svc.get,
|
|
40
|
+
),
|
|
41
|
+
"/metalstack.admin.v2.AuditService/List": Endpoint.unary(
|
|
42
|
+
method=MethodInfo(
|
|
43
|
+
name="List",
|
|
44
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
45
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
46
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
47
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
48
|
+
),
|
|
49
|
+
function=svc.list,
|
|
50
|
+
),
|
|
51
|
+
},
|
|
52
|
+
interceptors=interceptors,
|
|
53
|
+
read_max_bytes=read_max_bytes,
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
@property
|
|
57
|
+
def path(self) -> str:
|
|
58
|
+
"""Returns the URL path to mount the application to when serving multiple applications."""
|
|
59
|
+
return "/metalstack.admin.v2.AuditService"
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
class AuditServiceClient(ConnectClient):
|
|
63
|
+
async def get(
|
|
64
|
+
self,
|
|
65
|
+
request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
66
|
+
*,
|
|
67
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
68
|
+
timeout_ms: int | None = None,
|
|
69
|
+
) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
70
|
+
return await self.execute_unary(
|
|
71
|
+
request=request,
|
|
72
|
+
method=MethodInfo(
|
|
73
|
+
name="Get",
|
|
74
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
75
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
76
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
77
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
78
|
+
),
|
|
79
|
+
headers=headers,
|
|
80
|
+
timeout_ms=timeout_ms,
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
async def list(
|
|
84
|
+
self,
|
|
85
|
+
request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
86
|
+
*,
|
|
87
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
88
|
+
timeout_ms: int | None = None,
|
|
89
|
+
) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
90
|
+
return await self.execute_unary(
|
|
91
|
+
request=request,
|
|
92
|
+
method=MethodInfo(
|
|
93
|
+
name="List",
|
|
94
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
95
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
96
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
97
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
98
|
+
),
|
|
99
|
+
headers=headers,
|
|
100
|
+
timeout_ms=timeout_ms,
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
class AuditServiceSync(Protocol):
|
|
105
|
+
def get(self, request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
106
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
107
|
+
def list(self, request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
108
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
class AuditServiceWSGIApplication(ConnectWSGIApplication):
|
|
112
|
+
def __init__(self, service: AuditServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None) -> None:
|
|
113
|
+
super().__init__(
|
|
114
|
+
endpoints={
|
|
115
|
+
"/metalstack.admin.v2.AuditService/Get": EndpointSync.unary(
|
|
116
|
+
method=MethodInfo(
|
|
117
|
+
name="Get",
|
|
118
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
119
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
120
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
121
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
122
|
+
),
|
|
123
|
+
function=service.get,
|
|
124
|
+
),
|
|
125
|
+
"/metalstack.admin.v2.AuditService/List": EndpointSync.unary(
|
|
126
|
+
method=MethodInfo(
|
|
127
|
+
name="List",
|
|
128
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
129
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
130
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
131
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
132
|
+
),
|
|
133
|
+
function=service.list,
|
|
134
|
+
),
|
|
135
|
+
},
|
|
136
|
+
interceptors=interceptors,
|
|
137
|
+
read_max_bytes=read_max_bytes,
|
|
138
|
+
)
|
|
139
|
+
|
|
140
|
+
@property
|
|
141
|
+
def path(self) -> str:
|
|
142
|
+
"""Returns the URL path to mount the application to when serving multiple applications."""
|
|
143
|
+
return "/metalstack.admin.v2.AuditService"
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
class AuditServiceClientSync(ConnectClientSync):
|
|
147
|
+
def get(
|
|
148
|
+
self,
|
|
149
|
+
request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
150
|
+
*,
|
|
151
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
152
|
+
timeout_ms: int | None = None,
|
|
153
|
+
) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
154
|
+
return self.execute_unary(
|
|
155
|
+
request=request,
|
|
156
|
+
method=MethodInfo(
|
|
157
|
+
name="Get",
|
|
158
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
159
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
160
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
161
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
162
|
+
),
|
|
163
|
+
headers=headers,
|
|
164
|
+
timeout_ms=timeout_ms,
|
|
165
|
+
)
|
|
166
|
+
|
|
167
|
+
def list(
|
|
168
|
+
self,
|
|
169
|
+
request: metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
170
|
+
*,
|
|
171
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
172
|
+
timeout_ms: int | None = None,
|
|
173
|
+
) -> metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
174
|
+
return self.execute_unary(
|
|
175
|
+
request=request,
|
|
176
|
+
method=MethodInfo(
|
|
177
|
+
name="List",
|
|
178
|
+
service_name="metalstack.admin.v2.AuditService",
|
|
179
|
+
input=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
180
|
+
output=metalstack_dot_admin_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
181
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
182
|
+
),
|
|
183
|
+
headers=headers,
|
|
184
|
+
timeout_ms=timeout_ms,
|
|
185
|
+
)
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: metalstack/admin/v2/audit.proto
|
|
5
|
+
# Protobuf Python Version: 6.33.5
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
33,
|
|
16
|
+
5,
|
|
17
|
+
'',
|
|
18
|
+
'metalstack/admin/v2/audit.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
|
|
26
|
+
from metalstack.api.v2 import audit_pb2 as metalstack_dot_api_dot_v2_dot_audit__pb2
|
|
27
|
+
from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fmetalstack/admin/v2/audit.proto\x12\x13metalstack.admin.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1dmetalstack/api/v2/audit.proto\x1a\x1emetalstack/api/v2/common.proto\"N\n\x17\x41uditServiceListRequest\x12\x33\n\x05query\x18\x01 \x01(\x0b\x32\x1d.metalstack.api.v2.AuditQueryR\x05query\"Q\n\x18\x41uditServiceListResponse\x12\x35\n\x06traces\x18\x01 \x03(\x0b\x32\x1d.metalstack.api.v2.AuditTraceR\x06traces\"\x84\x01\n\x16\x41uditServiceGetRequest\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x42\n\x05phase\x18\x02 \x01(\x0e\x32\x1d.metalstack.api.v2.AuditPhaseB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x00R\x05phase\x88\x01\x01\x42\x08\n\x06_phase\"N\n\x17\x41uditServiceGetResponse\x12\x33\n\x05trace\x18\x01 \x01(\x0b\x32\x1d.metalstack.api.v2.AuditTraceR\x05trace2\xe5\x01\n\x0c\x41uditService\x12h\n\x03Get\x12+.metalstack.admin.v2.AuditServiceGetRequest\x1a,.metalstack.admin.v2.AuditServiceGetResponse\"\x06\xd2\xf3\x18\x02\x01\x02\x12k\n\x04List\x12,.metalstack.admin.v2.AuditServiceListRequest\x1a-.metalstack.admin.v2.AuditServiceListResponse\"\x06\xd2\xf3\x18\x02\x01\x02\x42\xce\x01\n\x17\x63om.metalstack.admin.v2B\nAuditProtoP\x01Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\xa2\x02\x03MAX\xaa\x02\x13Metalstack.Admin.V2\xca\x02\x13Metalstack\\Admin\\V2\xe2\x02\x1fMetalstack\\Admin\\V2\\GPBMetadata\xea\x02\x15Metalstack::Admin::V2b\x06proto3')
|
|
31
|
+
|
|
32
|
+
_globals = globals()
|
|
33
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
34
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'metalstack.admin.v2.audit_pb2', _globals)
|
|
35
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
36
|
+
_globals['DESCRIPTOR']._loaded_options = None
|
|
37
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\027com.metalstack.admin.v2B\nAuditProtoP\001Z9github.com/metal-stack/api/go/metalstack/admin/v2;adminv2\242\002\003MAX\252\002\023Metalstack.Admin.V2\312\002\023Metalstack\\Admin\\V2\342\002\037Metalstack\\Admin\\V2\\GPBMetadata\352\002\025Metalstack::Admin::V2'
|
|
38
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['uuid']._loaded_options = None
|
|
39
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
40
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['phase']._loaded_options = None
|
|
41
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['phase']._serialized_options = b'\272H\005\202\001\002\020\001'
|
|
42
|
+
_globals['_AUDITSERVICE'].methods_by_name['Get']._loaded_options = None
|
|
43
|
+
_globals['_AUDITSERVICE'].methods_by_name['Get']._serialized_options = b'\322\363\030\002\001\002'
|
|
44
|
+
_globals['_AUDITSERVICE'].methods_by_name['List']._loaded_options = None
|
|
45
|
+
_globals['_AUDITSERVICE'].methods_by_name['List']._serialized_options = b'\322\363\030\002\001\002'
|
|
46
|
+
_globals['_AUDITSERVICELISTREQUEST']._serialized_start=148
|
|
47
|
+
_globals['_AUDITSERVICELISTREQUEST']._serialized_end=226
|
|
48
|
+
_globals['_AUDITSERVICELISTRESPONSE']._serialized_start=228
|
|
49
|
+
_globals['_AUDITSERVICELISTRESPONSE']._serialized_end=309
|
|
50
|
+
_globals['_AUDITSERVICEGETREQUEST']._serialized_start=312
|
|
51
|
+
_globals['_AUDITSERVICEGETREQUEST']._serialized_end=444
|
|
52
|
+
_globals['_AUDITSERVICEGETRESPONSE']._serialized_start=446
|
|
53
|
+
_globals['_AUDITSERVICEGETRESPONSE']._serialized_end=524
|
|
54
|
+
_globals['_AUDITSERVICE']._serialized_start=527
|
|
55
|
+
_globals['_AUDITSERVICE']._serialized_end=756
|
|
56
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
from buf.validate import validate_pb2 as _validate_pb2
|
|
2
|
+
from metalstack.api.v2 import audit_pb2 as _audit_pb2
|
|
3
|
+
from metalstack.api.v2 import common_pb2 as _common_pb2
|
|
4
|
+
from google.protobuf.internal import containers as _containers
|
|
5
|
+
from google.protobuf import descriptor as _descriptor
|
|
6
|
+
from google.protobuf import message as _message
|
|
7
|
+
from collections.abc import Iterable as _Iterable, Mapping as _Mapping
|
|
8
|
+
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
|
|
9
|
+
|
|
10
|
+
DESCRIPTOR: _descriptor.FileDescriptor
|
|
11
|
+
|
|
12
|
+
class AuditServiceListRequest(_message.Message):
|
|
13
|
+
__slots__ = ("query",)
|
|
14
|
+
QUERY_FIELD_NUMBER: _ClassVar[int]
|
|
15
|
+
query: _audit_pb2.AuditQuery
|
|
16
|
+
def __init__(self, query: _Optional[_Union[_audit_pb2.AuditQuery, _Mapping]] = ...) -> None: ...
|
|
17
|
+
|
|
18
|
+
class AuditServiceListResponse(_message.Message):
|
|
19
|
+
__slots__ = ("traces",)
|
|
20
|
+
TRACES_FIELD_NUMBER: _ClassVar[int]
|
|
21
|
+
traces: _containers.RepeatedCompositeFieldContainer[_audit_pb2.AuditTrace]
|
|
22
|
+
def __init__(self, traces: _Optional[_Iterable[_Union[_audit_pb2.AuditTrace, _Mapping]]] = ...) -> None: ...
|
|
23
|
+
|
|
24
|
+
class AuditServiceGetRequest(_message.Message):
|
|
25
|
+
__slots__ = ("uuid", "phase")
|
|
26
|
+
UUID_FIELD_NUMBER: _ClassVar[int]
|
|
27
|
+
PHASE_FIELD_NUMBER: _ClassVar[int]
|
|
28
|
+
uuid: str
|
|
29
|
+
phase: _audit_pb2.AuditPhase
|
|
30
|
+
def __init__(self, uuid: _Optional[str] = ..., phase: _Optional[_Union[_audit_pb2.AuditPhase, str]] = ...) -> None: ...
|
|
31
|
+
|
|
32
|
+
class AuditServiceGetResponse(_message.Message):
|
|
33
|
+
__slots__ = ("trace",)
|
|
34
|
+
TRACE_FIELD_NUMBER: _ClassVar[int]
|
|
35
|
+
trace: _audit_pb2.AuditTrace
|
|
36
|
+
def __init__(self, trace: _Optional[_Union[_audit_pb2.AuditTrace, _Mapping]] = ...) -> None: ...
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
|
|
3
|
+
# source: metalstack/api/v2/audit.proto
|
|
4
|
+
|
|
5
|
+
from collections.abc import AsyncGenerator, AsyncIterator, Iterable, Iterator, Mapping
|
|
6
|
+
from typing import Protocol
|
|
7
|
+
|
|
8
|
+
from connectrpc.client import ConnectClient, ConnectClientSync
|
|
9
|
+
from connectrpc.code import Code
|
|
10
|
+
from connectrpc.errors import ConnectError
|
|
11
|
+
from connectrpc.interceptor import Interceptor, InterceptorSync
|
|
12
|
+
from connectrpc.method import IdempotencyLevel, MethodInfo
|
|
13
|
+
from connectrpc.request import Headers, RequestContext
|
|
14
|
+
from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
|
|
15
|
+
import metalstack.api.v2.audit_pb2 as metalstack_dot_api_dot_v2_dot_audit__pb2
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class AuditService(Protocol):
|
|
19
|
+
async def get(self, request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
20
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
21
|
+
|
|
22
|
+
async def list(self, request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
23
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class AuditServiceASGIApplication(ConnectASGIApplication[AuditService]):
|
|
27
|
+
def __init__(self, service: AuditService | AsyncGenerator[AuditService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
|
|
28
|
+
super().__init__(
|
|
29
|
+
service=service,
|
|
30
|
+
endpoints=lambda svc: {
|
|
31
|
+
"/metalstack.api.v2.AuditService/Get": Endpoint.unary(
|
|
32
|
+
method=MethodInfo(
|
|
33
|
+
name="Get",
|
|
34
|
+
service_name="metalstack.api.v2.AuditService",
|
|
35
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
36
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
37
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
38
|
+
),
|
|
39
|
+
function=svc.get,
|
|
40
|
+
),
|
|
41
|
+
"/metalstack.api.v2.AuditService/List": Endpoint.unary(
|
|
42
|
+
method=MethodInfo(
|
|
43
|
+
name="List",
|
|
44
|
+
service_name="metalstack.api.v2.AuditService",
|
|
45
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
46
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
47
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
48
|
+
),
|
|
49
|
+
function=svc.list,
|
|
50
|
+
),
|
|
51
|
+
},
|
|
52
|
+
interceptors=interceptors,
|
|
53
|
+
read_max_bytes=read_max_bytes,
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
@property
|
|
57
|
+
def path(self) -> str:
|
|
58
|
+
"""Returns the URL path to mount the application to when serving multiple applications."""
|
|
59
|
+
return "/metalstack.api.v2.AuditService"
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
class AuditServiceClient(ConnectClient):
|
|
63
|
+
async def get(
|
|
64
|
+
self,
|
|
65
|
+
request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
66
|
+
*,
|
|
67
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
68
|
+
timeout_ms: int | None = None,
|
|
69
|
+
) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
70
|
+
return await self.execute_unary(
|
|
71
|
+
request=request,
|
|
72
|
+
method=MethodInfo(
|
|
73
|
+
name="Get",
|
|
74
|
+
service_name="metalstack.api.v2.AuditService",
|
|
75
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
76
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
77
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
78
|
+
),
|
|
79
|
+
headers=headers,
|
|
80
|
+
timeout_ms=timeout_ms,
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
async def list(
|
|
84
|
+
self,
|
|
85
|
+
request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
86
|
+
*,
|
|
87
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
88
|
+
timeout_ms: int | None = None,
|
|
89
|
+
) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
90
|
+
return await self.execute_unary(
|
|
91
|
+
request=request,
|
|
92
|
+
method=MethodInfo(
|
|
93
|
+
name="List",
|
|
94
|
+
service_name="metalstack.api.v2.AuditService",
|
|
95
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
96
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
97
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
98
|
+
),
|
|
99
|
+
headers=headers,
|
|
100
|
+
timeout_ms=timeout_ms,
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
class AuditServiceSync(Protocol):
|
|
105
|
+
def get(self, request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
106
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
107
|
+
def list(self, request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest, ctx: RequestContext) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
108
|
+
raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
class AuditServiceWSGIApplication(ConnectWSGIApplication):
|
|
112
|
+
def __init__(self, service: AuditServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None) -> None:
|
|
113
|
+
super().__init__(
|
|
114
|
+
endpoints={
|
|
115
|
+
"/metalstack.api.v2.AuditService/Get": EndpointSync.unary(
|
|
116
|
+
method=MethodInfo(
|
|
117
|
+
name="Get",
|
|
118
|
+
service_name="metalstack.api.v2.AuditService",
|
|
119
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
120
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
121
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
122
|
+
),
|
|
123
|
+
function=service.get,
|
|
124
|
+
),
|
|
125
|
+
"/metalstack.api.v2.AuditService/List": EndpointSync.unary(
|
|
126
|
+
method=MethodInfo(
|
|
127
|
+
name="List",
|
|
128
|
+
service_name="metalstack.api.v2.AuditService",
|
|
129
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
130
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
131
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
132
|
+
),
|
|
133
|
+
function=service.list,
|
|
134
|
+
),
|
|
135
|
+
},
|
|
136
|
+
interceptors=interceptors,
|
|
137
|
+
read_max_bytes=read_max_bytes,
|
|
138
|
+
)
|
|
139
|
+
|
|
140
|
+
@property
|
|
141
|
+
def path(self) -> str:
|
|
142
|
+
"""Returns the URL path to mount the application to when serving multiple applications."""
|
|
143
|
+
return "/metalstack.api.v2.AuditService"
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
class AuditServiceClientSync(ConnectClientSync):
|
|
147
|
+
def get(
|
|
148
|
+
self,
|
|
149
|
+
request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
150
|
+
*,
|
|
151
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
152
|
+
timeout_ms: int | None = None,
|
|
153
|
+
) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse:
|
|
154
|
+
return self.execute_unary(
|
|
155
|
+
request=request,
|
|
156
|
+
method=MethodInfo(
|
|
157
|
+
name="Get",
|
|
158
|
+
service_name="metalstack.api.v2.AuditService",
|
|
159
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetRequest,
|
|
160
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceGetResponse,
|
|
161
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
162
|
+
),
|
|
163
|
+
headers=headers,
|
|
164
|
+
timeout_ms=timeout_ms,
|
|
165
|
+
)
|
|
166
|
+
|
|
167
|
+
def list(
|
|
168
|
+
self,
|
|
169
|
+
request: metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
170
|
+
*,
|
|
171
|
+
headers: Headers | Mapping[str, str] | None = None,
|
|
172
|
+
timeout_ms: int | None = None,
|
|
173
|
+
) -> metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse:
|
|
174
|
+
return self.execute_unary(
|
|
175
|
+
request=request,
|
|
176
|
+
method=MethodInfo(
|
|
177
|
+
name="List",
|
|
178
|
+
service_name="metalstack.api.v2.AuditService",
|
|
179
|
+
input=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListRequest,
|
|
180
|
+
output=metalstack_dot_api_dot_v2_dot_audit__pb2.AuditServiceListResponse,
|
|
181
|
+
idempotency_level=IdempotencyLevel.UNKNOWN,
|
|
182
|
+
),
|
|
183
|
+
headers=headers,
|
|
184
|
+
timeout_ms=timeout_ms,
|
|
185
|
+
)
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: metalstack/api/v2/audit.proto
|
|
5
|
+
# Protobuf Python Version: 6.33.5
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
33,
|
|
16
|
+
5,
|
|
17
|
+
'',
|
|
18
|
+
'metalstack/api/v2/audit.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
|
|
26
|
+
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
|
27
|
+
from metalstack.api.v2 import common_pb2 as metalstack_dot_api_dot_v2_dot_common__pb2
|
|
28
|
+
from metalstack.api.v2 import predefined_rules_pb2 as metalstack_dot_api_dot_v2_dot_predefined__rules__pb2
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dmetalstack/api/v2/audit.proto\x12\x11metalstack.api.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1emetalstack/api/v2/common.proto\x1a(metalstack/api/v2/predefined_rules.proto\"\xfd\x02\n\nAuditTrace\x12\x1c\n\x04uuid\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x38\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ttimestamp\x12\x12\n\x04user\x18\x03 \x01(\tR\x04user\x12\x16\n\x06tenant\x18\x04 \x01(\tR\x06tenant\x12\x1d\n\x07project\x18\x05 \x01(\tH\x00R\x07project\x88\x01\x01\x12\x16\n\x06method\x18\x06 \x01(\tR\x06method\x12\x17\n\x04\x62ody\x18\x07 \x01(\tH\x01R\x04\x62ody\x88\x01\x01\x12\x1b\n\tsource_ip\x18\x08 \x01(\tR\x08sourceIp\x12$\n\x0bresult_code\x18\t \x01(\x05H\x02R\nresultCode\x88\x01\x01\x12\x33\n\x05phase\x18\n \x01(\x0e\x32\x1d.metalstack.api.v2.AuditPhaseR\x05phaseB\n\n\x08_projectB\x07\n\x05_bodyB\x0e\n\x0c_result_code\"\xeb\x04\n\nAuditQuery\x12!\n\x04uuid\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x00R\x04uuid\x88\x01\x01\x12\x33\n\x04\x66rom\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\x04\x66rom\x88\x01\x01\x12/\n\x02to\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02R\x02to\x88\x01\x01\x12$\n\x04user\x18\x05 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01H\x03R\x04user\x88\x01\x01\x12\'\n\x07project\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01H\x04R\x07project\x88\x01\x01\x12\'\n\x06method\x18\x07 \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x02H\x05R\x06method\x88\x01\x01\x12)\n\tsource_ip\x18\x08 \x01(\tB\x07\xbaH\x04r\x02p\x01H\x06R\x08sourceIp\x88\x01\x01\x12-\n\x0bresult_code\x18\t \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00H\x07R\nresultCode\x88\x01\x01\x12#\n\x04\x62ody\x18\n \x01(\tB\n\xbaH\x07r\x05\x10\x02\x18\x80\x02H\x08R\x04\x62ody\x88\x01\x01\x12%\n\x05limit\x18\x0b \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xe8\x07 \x00H\tR\x05limit\x88\x01\x01\x12\x42\n\x05phase\x18\x0c \x01(\x0e\x32\x1d.metalstack.api.v2.AuditPhaseB\x08\xbaH\x05\x82\x01\x02\x10\x01H\nR\x05phase\x88\x01\x01\x42\x07\n\x05_uuidB\x07\n\x05_fromB\x05\n\x03_toB\x07\n\x05_userB\n\n\x08_projectB\t\n\x07_methodB\x0c\n\n_source_ipB\x0e\n\x0c_result_codeB\x07\n\x05_bodyB\x08\n\x06_limitB\x08\n\x06_phase\"q\n\x17\x41uditServiceListRequest\x12!\n\x05login\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x05login\x12\x33\n\x05query\x18\x02 \x01(\x0b\x32\x1d.metalstack.api.v2.AuditQueryR\x05query\"Q\n\x18\x41uditServiceListResponse\x12\x35\n\x06traces\x18\x01 \x03(\x0b\x32\x1d.metalstack.api.v2.AuditTraceR\x06traces\"\xa7\x01\n\x16\x41uditServiceGetRequest\x12!\n\x05login\x18\x01 \x01(\tB\x0b\xbaH\x08r\x06\xc0\xb3\xae\xb1\x02\x01R\x05login\x12\x1c\n\x04uuid\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\x04uuid\x12\x42\n\x05phase\x18\x03 \x01(\x0e\x32\x1d.metalstack.api.v2.AuditPhaseB\x08\xbaH\x05\x82\x01\x02\x10\x01H\x00R\x05phase\x88\x01\x01\x42\x08\n\x06_phase\"N\n\x17\x41uditServiceGetResponse\x12\x33\n\x05trace\x18\x01 \x01(\x0b\x32\x1d.metalstack.api.v2.AuditTraceR\x05trace*\\\n\nAuditPhase\x12\x1b\n\x17\x41UDIT_PHASE_UNSPECIFIED\x10\x00\x12\x17\n\x13\x41UDIT_PHASE_REQUEST\x10\x01\x12\x18\n\x14\x41UDIT_PHASE_RESPONSE\x10\x02\x32\xe3\x01\n\x0c\x41uditService\x12g\n\x03Get\x12).metalstack.api.v2.AuditServiceGetRequest\x1a*.metalstack.api.v2.AuditServiceGetResponse\"\t\xc2\xf3\x18\x01\x01\xe0\xf3\x18\x02\x12j\n\x04List\x12*.metalstack.api.v2.AuditServiceListRequest\x1a+.metalstack.api.v2.AuditServiceListResponse\"\t\xc2\xf3\x18\x01\x01\xe0\xf3\x18\x02\x42\xc0\x01\n\x15\x63om.metalstack.api.v2B\nAuditProtoP\x01Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\xa2\x02\x03MAX\xaa\x02\x11Metalstack.Api.V2\xca\x02\x11Metalstack\\Api\\V2\xe2\x02\x1dMetalstack\\Api\\V2\\GPBMetadata\xea\x02\x13Metalstack::Api::V2b\x06proto3')
|
|
32
|
+
|
|
33
|
+
_globals = globals()
|
|
34
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
35
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'metalstack.api.v2.audit_pb2', _globals)
|
|
36
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
37
|
+
_globals['DESCRIPTOR']._loaded_options = None
|
|
38
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\025com.metalstack.api.v2B\nAuditProtoP\001Z5github.com/metal-stack/api/go/metalstack/api/v2;apiv2\242\002\003MAX\252\002\021Metalstack.Api.V2\312\002\021Metalstack\\Api\\V2\342\002\035Metalstack\\Api\\V2\\GPBMetadata\352\002\023Metalstack::Api::V2'
|
|
39
|
+
_globals['_AUDITTRACE'].fields_by_name['uuid']._loaded_options = None
|
|
40
|
+
_globals['_AUDITTRACE'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
41
|
+
_globals['_AUDITQUERY'].fields_by_name['uuid']._loaded_options = None
|
|
42
|
+
_globals['_AUDITQUERY'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
43
|
+
_globals['_AUDITQUERY'].fields_by_name['user']._loaded_options = None
|
|
44
|
+
_globals['_AUDITQUERY'].fields_by_name['user']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
|
|
45
|
+
_globals['_AUDITQUERY'].fields_by_name['project']._loaded_options = None
|
|
46
|
+
_globals['_AUDITQUERY'].fields_by_name['project']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
47
|
+
_globals['_AUDITQUERY'].fields_by_name['method']._loaded_options = None
|
|
48
|
+
_globals['_AUDITQUERY'].fields_by_name['method']._serialized_options = b'\272H\007r\005\020\002\030\200\002'
|
|
49
|
+
_globals['_AUDITQUERY'].fields_by_name['source_ip']._loaded_options = None
|
|
50
|
+
_globals['_AUDITQUERY'].fields_by_name['source_ip']._serialized_options = b'\272H\004r\002p\001'
|
|
51
|
+
_globals['_AUDITQUERY'].fields_by_name['result_code']._loaded_options = None
|
|
52
|
+
_globals['_AUDITQUERY'].fields_by_name['result_code']._serialized_options = b'\272H\004\032\002(\000'
|
|
53
|
+
_globals['_AUDITQUERY'].fields_by_name['body']._loaded_options = None
|
|
54
|
+
_globals['_AUDITQUERY'].fields_by_name['body']._serialized_options = b'\272H\007r\005\020\002\030\200\002'
|
|
55
|
+
_globals['_AUDITQUERY'].fields_by_name['limit']._loaded_options = None
|
|
56
|
+
_globals['_AUDITQUERY'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\350\007 \000'
|
|
57
|
+
_globals['_AUDITQUERY'].fields_by_name['phase']._loaded_options = None
|
|
58
|
+
_globals['_AUDITQUERY'].fields_by_name['phase']._serialized_options = b'\272H\005\202\001\002\020\001'
|
|
59
|
+
_globals['_AUDITSERVICELISTREQUEST'].fields_by_name['login']._loaded_options = None
|
|
60
|
+
_globals['_AUDITSERVICELISTREQUEST'].fields_by_name['login']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
|
|
61
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['login']._loaded_options = None
|
|
62
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['login']._serialized_options = b'\272H\010r\006\300\263\256\261\002\001'
|
|
63
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['uuid']._loaded_options = None
|
|
64
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['uuid']._serialized_options = b'\272H\005r\003\260\001\001'
|
|
65
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['phase']._loaded_options = None
|
|
66
|
+
_globals['_AUDITSERVICEGETREQUEST'].fields_by_name['phase']._serialized_options = b'\272H\005\202\001\002\020\001'
|
|
67
|
+
_globals['_AUDITSERVICE'].methods_by_name['Get']._loaded_options = None
|
|
68
|
+
_globals['_AUDITSERVICE'].methods_by_name['Get']._serialized_options = b'\302\363\030\001\001\340\363\030\002'
|
|
69
|
+
_globals['_AUDITSERVICE'].methods_by_name['List']._loaded_options = None
|
|
70
|
+
_globals['_AUDITSERVICE'].methods_by_name['List']._serialized_options = b'\302\363\030\001\001\340\363\030\002'
|
|
71
|
+
_globals['_AUDITPHASE']._serialized_start=1642
|
|
72
|
+
_globals['_AUDITPHASE']._serialized_end=1734
|
|
73
|
+
_globals['_AUDITTRACE']._serialized_start=189
|
|
74
|
+
_globals['_AUDITTRACE']._serialized_end=570
|
|
75
|
+
_globals['_AUDITQUERY']._serialized_start=573
|
|
76
|
+
_globals['_AUDITQUERY']._serialized_end=1192
|
|
77
|
+
_globals['_AUDITSERVICELISTREQUEST']._serialized_start=1194
|
|
78
|
+
_globals['_AUDITSERVICELISTREQUEST']._serialized_end=1307
|
|
79
|
+
_globals['_AUDITSERVICELISTRESPONSE']._serialized_start=1309
|
|
80
|
+
_globals['_AUDITSERVICELISTRESPONSE']._serialized_end=1390
|
|
81
|
+
_globals['_AUDITSERVICEGETREQUEST']._serialized_start=1393
|
|
82
|
+
_globals['_AUDITSERVICEGETREQUEST']._serialized_end=1560
|
|
83
|
+
_globals['_AUDITSERVICEGETRESPONSE']._serialized_start=1562
|
|
84
|
+
_globals['_AUDITSERVICEGETRESPONSE']._serialized_end=1640
|
|
85
|
+
_globals['_AUDITSERVICE']._serialized_start=1737
|
|
86
|
+
_globals['_AUDITSERVICE']._serialized_end=1964
|
|
87
|
+
# @@protoc_insertion_point(module_scope)
|