modal 0.73.164__py3-none-any.whl → 0.73.166__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.
modal_proto/api_pb2.pyi CHANGED
@@ -2381,6 +2381,90 @@ class CloudBucketMount(google.protobuf.message.Message):
2381
2381
 
2382
2382
  global___CloudBucketMount = CloudBucketMount
2383
2383
 
2384
+ class ClusterGetRequest(google.protobuf.message.Message):
2385
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
2386
+
2387
+ CLUSTER_ID_FIELD_NUMBER: builtins.int
2388
+ cluster_id: builtins.str
2389
+ def __init__(
2390
+ self,
2391
+ *,
2392
+ cluster_id: builtins.str = ...,
2393
+ ) -> None: ...
2394
+ def ClearField(self, field_name: typing_extensions.Literal["cluster_id", b"cluster_id"]) -> None: ...
2395
+
2396
+ global___ClusterGetRequest = ClusterGetRequest
2397
+
2398
+ class ClusterGetResponse(google.protobuf.message.Message):
2399
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
2400
+
2401
+ CLUSTER_FIELD_NUMBER: builtins.int
2402
+ @property
2403
+ def cluster(self) -> global___ClusterStats: ...
2404
+ def __init__(
2405
+ self,
2406
+ *,
2407
+ cluster: global___ClusterStats | None = ...,
2408
+ ) -> None: ...
2409
+ def HasField(self, field_name: typing_extensions.Literal["cluster", b"cluster"]) -> builtins.bool: ...
2410
+ def ClearField(self, field_name: typing_extensions.Literal["cluster", b"cluster"]) -> None: ...
2411
+
2412
+ global___ClusterGetResponse = ClusterGetResponse
2413
+
2414
+ class ClusterListRequest(google.protobuf.message.Message):
2415
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
2416
+
2417
+ ENVIRONMENT_NAME_FIELD_NUMBER: builtins.int
2418
+ environment_name: builtins.str
2419
+ def __init__(
2420
+ self,
2421
+ *,
2422
+ environment_name: builtins.str = ...,
2423
+ ) -> None: ...
2424
+ def ClearField(self, field_name: typing_extensions.Literal["environment_name", b"environment_name"]) -> None: ...
2425
+
2426
+ global___ClusterListRequest = ClusterListRequest
2427
+
2428
+ class ClusterListResponse(google.protobuf.message.Message):
2429
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
2430
+
2431
+ CLUSTERS_FIELD_NUMBER: builtins.int
2432
+ @property
2433
+ def clusters(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ClusterStats]: ...
2434
+ def __init__(
2435
+ self,
2436
+ *,
2437
+ clusters: collections.abc.Iterable[global___ClusterStats] | None = ...,
2438
+ ) -> None: ...
2439
+ def ClearField(self, field_name: typing_extensions.Literal["clusters", b"clusters"]) -> None: ...
2440
+
2441
+ global___ClusterListResponse = ClusterListResponse
2442
+
2443
+ class ClusterStats(google.protobuf.message.Message):
2444
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
2445
+
2446
+ APP_ID_FIELD_NUMBER: builtins.int
2447
+ TASK_IDS_FIELD_NUMBER: builtins.int
2448
+ REGION_FIELD_NUMBER: builtins.int
2449
+ STARTED_AT_FIELD_NUMBER: builtins.int
2450
+ app_id: builtins.str
2451
+ @property
2452
+ def task_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
2453
+ region: builtins.str
2454
+ started_at: builtins.float
2455
+ """Defined as start time of the first task in the cluster"""
2456
+ def __init__(
2457
+ self,
2458
+ *,
2459
+ app_id: builtins.str = ...,
2460
+ task_ids: collections.abc.Iterable[builtins.str] | None = ...,
2461
+ region: builtins.str = ...,
2462
+ started_at: builtins.float = ...,
2463
+ ) -> None: ...
2464
+ def ClearField(self, field_name: typing_extensions.Literal["app_id", b"app_id", "region", b"region", "started_at", b"started_at", "task_ids", b"task_ids"]) -> None: ...
2465
+
2466
+ global___ClusterStats = ClusterStats
2467
+
2384
2468
  class CommitInfo(google.protobuf.message.Message):
2385
2469
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
2386
2470
 
@@ -120,6 +120,16 @@ class ModalClientStub(object):
120
120
  request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
121
121
  response_deserializer=modal__proto_dot_api__pb2.ClientHelloResponse.FromString,
122
122
  )
123
+ self.ClusterGet = channel.unary_unary(
124
+ '/modal.client.ModalClient/ClusterGet',
125
+ request_serializer=modal__proto_dot_api__pb2.ClusterGetRequest.SerializeToString,
126
+ response_deserializer=modal__proto_dot_api__pb2.ClusterGetResponse.FromString,
127
+ )
128
+ self.ClusterList = channel.unary_unary(
129
+ '/modal.client.ModalClient/ClusterList',
130
+ request_serializer=modal__proto_dot_api__pb2.ClusterListRequest.SerializeToString,
131
+ response_deserializer=modal__proto_dot_api__pb2.ClusterListResponse.FromString,
132
+ )
123
133
  self.ContainerCheckpoint = channel.unary_unary(
124
134
  '/modal.client.ModalClient/ContainerCheckpoint',
125
135
  request_serializer=modal__proto_dot_api__pb2.ContainerCheckpointRequest.SerializeToString,
@@ -870,6 +880,19 @@ class ModalClientServicer(object):
870
880
  context.set_details('Method not implemented!')
871
881
  raise NotImplementedError('Method not implemented!')
872
882
 
883
+ def ClusterGet(self, request, context):
884
+ """Clusters
885
+ """
886
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
887
+ context.set_details('Method not implemented!')
888
+ raise NotImplementedError('Method not implemented!')
889
+
890
+ def ClusterList(self, request, context):
891
+ """Missing associated documentation comment in .proto file."""
892
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
893
+ context.set_details('Method not implemented!')
894
+ raise NotImplementedError('Method not implemented!')
895
+
873
896
  def ContainerCheckpoint(self, request, context):
874
897
  """Container
875
898
  """
@@ -1738,6 +1761,16 @@ def add_ModalClientServicer_to_server(servicer, server):
1738
1761
  request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
1739
1762
  response_serializer=modal__proto_dot_api__pb2.ClientHelloResponse.SerializeToString,
1740
1763
  ),
1764
+ 'ClusterGet': grpc.unary_unary_rpc_method_handler(
1765
+ servicer.ClusterGet,
1766
+ request_deserializer=modal__proto_dot_api__pb2.ClusterGetRequest.FromString,
1767
+ response_serializer=modal__proto_dot_api__pb2.ClusterGetResponse.SerializeToString,
1768
+ ),
1769
+ 'ClusterList': grpc.unary_unary_rpc_method_handler(
1770
+ servicer.ClusterList,
1771
+ request_deserializer=modal__proto_dot_api__pb2.ClusterListRequest.FromString,
1772
+ response_serializer=modal__proto_dot_api__pb2.ClusterListResponse.SerializeToString,
1773
+ ),
1741
1774
  'ContainerCheckpoint': grpc.unary_unary_rpc_method_handler(
1742
1775
  servicer.ContainerCheckpoint,
1743
1776
  request_deserializer=modal__proto_dot_api__pb2.ContainerCheckpointRequest.FromString,
@@ -2720,6 +2753,40 @@ class ModalClient(object):
2720
2753
  options, channel_credentials,
2721
2754
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
2722
2755
 
2756
+ @staticmethod
2757
+ def ClusterGet(request,
2758
+ target,
2759
+ options=(),
2760
+ channel_credentials=None,
2761
+ call_credentials=None,
2762
+ insecure=False,
2763
+ compression=None,
2764
+ wait_for_ready=None,
2765
+ timeout=None,
2766
+ metadata=None):
2767
+ return grpc.experimental.unary_unary(request, target, '/modal.client.ModalClient/ClusterGet',
2768
+ modal__proto_dot_api__pb2.ClusterGetRequest.SerializeToString,
2769
+ modal__proto_dot_api__pb2.ClusterGetResponse.FromString,
2770
+ options, channel_credentials,
2771
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
2772
+
2773
+ @staticmethod
2774
+ def ClusterList(request,
2775
+ target,
2776
+ options=(),
2777
+ channel_credentials=None,
2778
+ call_credentials=None,
2779
+ insecure=False,
2780
+ compression=None,
2781
+ wait_for_ready=None,
2782
+ timeout=None,
2783
+ metadata=None):
2784
+ return grpc.experimental.unary_unary(request, target, '/modal.client.ModalClient/ClusterList',
2785
+ modal__proto_dot_api__pb2.ClusterListRequest.SerializeToString,
2786
+ modal__proto_dot_api__pb2.ClusterListResponse.FromString,
2787
+ options, channel_credentials,
2788
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
2789
+
2723
2790
  @staticmethod
2724
2791
  def ContainerCheckpoint(request,
2725
2792
  target,
@@ -98,6 +98,15 @@ class ModalClientStub:
98
98
  modal_proto.api_pb2.ClientHelloResponse,
99
99
  ]
100
100
  """Clients"""
101
+ ClusterGet: grpc.UnaryUnaryMultiCallable[
102
+ modal_proto.api_pb2.ClusterGetRequest,
103
+ modal_proto.api_pb2.ClusterGetResponse,
104
+ ]
105
+ """Clusters"""
106
+ ClusterList: grpc.UnaryUnaryMultiCallable[
107
+ modal_proto.api_pb2.ClusterListRequest,
108
+ modal_proto.api_pb2.ClusterListResponse,
109
+ ]
101
110
  ContainerCheckpoint: grpc.UnaryUnaryMultiCallable[
102
111
  modal_proto.api_pb2.ContainerCheckpointRequest,
103
112
  google.protobuf.empty_pb2.Empty,
@@ -745,6 +754,19 @@ class ModalClientServicer(metaclass=abc.ABCMeta):
745
754
  ) -> modal_proto.api_pb2.ClientHelloResponse:
746
755
  """Clients"""
747
756
  @abc.abstractmethod
757
+ def ClusterGet(
758
+ self,
759
+ request: modal_proto.api_pb2.ClusterGetRequest,
760
+ context: grpc.ServicerContext,
761
+ ) -> modal_proto.api_pb2.ClusterGetResponse:
762
+ """Clusters"""
763
+ @abc.abstractmethod
764
+ def ClusterList(
765
+ self,
766
+ request: modal_proto.api_pb2.ClusterListRequest,
767
+ context: grpc.ServicerContext,
768
+ ) -> modal_proto.api_pb2.ClusterListResponse: ...
769
+ @abc.abstractmethod
748
770
  def ContainerCheckpoint(
749
771
  self,
750
772
  request: modal_proto.api_pb2.ContainerCheckpointRequest,
@@ -33,6 +33,8 @@ class ModalClientModal:
33
33
  self.ClassCreate = modal.client.UnaryUnaryWrapper(grpclib_stub.ClassCreate, client)
34
34
  self.ClassGet = modal.client.UnaryUnaryWrapper(grpclib_stub.ClassGet, client)
35
35
  self.ClientHello = modal.client.UnaryUnaryWrapper(grpclib_stub.ClientHello, client)
36
+ self.ClusterGet = modal.client.UnaryUnaryWrapper(grpclib_stub.ClusterGet, client)
37
+ self.ClusterList = modal.client.UnaryUnaryWrapper(grpclib_stub.ClusterList, client)
36
38
  self.ContainerCheckpoint = modal.client.UnaryUnaryWrapper(grpclib_stub.ContainerCheckpoint, client)
37
39
  self.ContainerExec = modal.client.UnaryUnaryWrapper(grpclib_stub.ContainerExec, client)
38
40
  self.ContainerExecGetOutput = modal.client.UnaryStreamWrapper(grpclib_stub.ContainerExecGetOutput, client)
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2025
2
2
 
3
3
  # Note: Reset this value to -1 whenever you make a minor `0.X` release of the client.
4
- build_number = 164 # git: 9d8e6de
4
+ build_number = 166 # git: 5e72556