skypilot-nightly 1.0.0.dev20250912__py3-none-any.whl → 1.0.0.dev20250914__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 skypilot-nightly might be problematic. Click here for more details.

Files changed (73) hide show
  1. sky/__init__.py +4 -2
  2. sky/adaptors/seeweb.py +103 -0
  3. sky/authentication.py +38 -0
  4. sky/backends/backend_utils.py +24 -9
  5. sky/backends/cloud_vm_ray_backend.py +382 -151
  6. sky/catalog/data_fetchers/fetch_aws.py +0 -36
  7. sky/catalog/data_fetchers/fetch_seeweb.py +329 -0
  8. sky/catalog/seeweb_catalog.py +184 -0
  9. sky/clouds/__init__.py +2 -0
  10. sky/clouds/kubernetes.py +2 -0
  11. sky/clouds/seeweb.py +463 -0
  12. sky/core.py +46 -12
  13. sky/dashboard/out/404.html +1 -1
  14. sky/dashboard/out/_next/static/{DAiq7V2xJnO1LSfmunZl6 → 5iak5kYp9a9ezANCb74L8}/_buildManifest.js +1 -1
  15. sky/dashboard/out/_next/static/chunks/1141-159df2d4c441a9d1.js +1 -0
  16. sky/dashboard/out/_next/static/chunks/3015-2ea98b57e318bd6e.js +1 -0
  17. sky/dashboard/out/_next/static/chunks/3294.03e02ae73455f48e.js +6 -0
  18. sky/dashboard/out/_next/static/chunks/3785.0fa442e16dd3f00e.js +1 -0
  19. sky/dashboard/out/_next/static/chunks/5339.c033b29835da0f35.js +51 -0
  20. sky/dashboard/out/_next/static/chunks/6856-e0754534b3015377.js +1 -0
  21. sky/dashboard/out/_next/static/chunks/6990-11c8e9b982e8ffec.js +1 -0
  22. sky/dashboard/out/_next/static/chunks/9037-f9800e64eb05dd1c.js +6 -0
  23. sky/dashboard/out/_next/static/chunks/{webpack-e8a0c4c3c6f408fb.js → webpack-e2e3d2d3de7d43e5.js} +1 -1
  24. sky/dashboard/out/clusters/[cluster]/[job].html +1 -1
  25. sky/dashboard/out/clusters/[cluster].html +1 -1
  26. sky/dashboard/out/clusters.html +1 -1
  27. sky/dashboard/out/config.html +1 -1
  28. sky/dashboard/out/index.html +1 -1
  29. sky/dashboard/out/infra/[context].html +1 -1
  30. sky/dashboard/out/infra.html +1 -1
  31. sky/dashboard/out/jobs/[job].html +1 -1
  32. sky/dashboard/out/jobs/pools/[pool].html +1 -1
  33. sky/dashboard/out/jobs.html +1 -1
  34. sky/dashboard/out/users.html +1 -1
  35. sky/dashboard/out/volumes.html +1 -1
  36. sky/dashboard/out/workspace/new.html +1 -1
  37. sky/dashboard/out/workspaces/[name].html +1 -1
  38. sky/dashboard/out/workspaces.html +1 -1
  39. sky/exceptions.py +5 -0
  40. sky/global_user_state.py +41 -26
  41. sky/jobs/utils.py +61 -13
  42. sky/provision/__init__.py +1 -0
  43. sky/provision/kubernetes/utils.py +14 -3
  44. sky/provision/seeweb/__init__.py +11 -0
  45. sky/provision/seeweb/config.py +13 -0
  46. sky/provision/seeweb/instance.py +806 -0
  47. sky/schemas/generated/jobsv1_pb2.py +86 -0
  48. sky/schemas/generated/jobsv1_pb2.pyi +252 -0
  49. sky/schemas/generated/jobsv1_pb2_grpc.py +542 -0
  50. sky/setup_files/dependencies.py +8 -1
  51. sky/skylet/constants.py +2 -1
  52. sky/skylet/job_lib.py +128 -10
  53. sky/skylet/log_lib.py +3 -3
  54. sky/skylet/services.py +203 -0
  55. sky/skylet/skylet.py +4 -0
  56. sky/templates/seeweb-ray.yml.j2 +108 -0
  57. sky/utils/cluster_utils.py +6 -2
  58. sky/utils/controller_utils.py +11 -5
  59. {skypilot_nightly-1.0.0.dev20250912.dist-info → skypilot_nightly-1.0.0.dev20250914.dist-info}/METADATA +39 -34
  60. {skypilot_nightly-1.0.0.dev20250912.dist-info → skypilot_nightly-1.0.0.dev20250914.dist-info}/RECORD +65 -54
  61. sky/dashboard/out/_next/static/chunks/1141-943efc7aff0f0c06.js +0 -1
  62. sky/dashboard/out/_next/static/chunks/3015-86cabed5d4669ad0.js +0 -1
  63. sky/dashboard/out/_next/static/chunks/3294.ba6586f9755b0edb.js +0 -6
  64. sky/dashboard/out/_next/static/chunks/3785.4872a2f3aa489880.js +0 -1
  65. sky/dashboard/out/_next/static/chunks/5339.3fda4a4010ff4e06.js +0 -51
  66. sky/dashboard/out/_next/static/chunks/6856-6e2bc8a6fd0867af.js +0 -1
  67. sky/dashboard/out/_next/static/chunks/6990-08b2a1cae076a943.js +0 -1
  68. sky/dashboard/out/_next/static/chunks/9037-fa1737818d0a0969.js +0 -6
  69. /sky/dashboard/out/_next/static/{DAiq7V2xJnO1LSfmunZl6 → 5iak5kYp9a9ezANCb74L8}/_ssgManifest.js +0 -0
  70. {skypilot_nightly-1.0.0.dev20250912.dist-info → skypilot_nightly-1.0.0.dev20250914.dist-info}/WHEEL +0 -0
  71. {skypilot_nightly-1.0.0.dev20250912.dist-info → skypilot_nightly-1.0.0.dev20250914.dist-info}/entry_points.txt +0 -0
  72. {skypilot_nightly-1.0.0.dev20250912.dist-info → skypilot_nightly-1.0.0.dev20250914.dist-info}/licenses/LICENSE +0 -0
  73. {skypilot_nightly-1.0.0.dev20250912.dist-info → skypilot_nightly-1.0.0.dev20250914.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,86 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: sky/schemas/generated/jobsv1.proto
4
+ # Protobuf Python Version: 5.26.1
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+
16
+
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"sky/schemas/generated/jobsv1.proto\x12\x07jobs.v1\"\x85\x01\n\rAddJobRequest\x12\x15\n\x08job_name\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x15\n\rrun_timestamp\x18\x03 \x01(\t\x12\x15\n\rresources_str\x18\x04 \x01(\t\x12\x10\n\x08metadata\x18\x05 \x01(\tB\x0b\n\t_job_name\"1\n\x0e\x41\x64\x64JobResponse\x12\x0e\n\x06job_id\x18\x01 \x01(\x03\x12\x0f\n\x07log_dir\x18\x02 \x01(\t\"\xb3\x01\n\x0fQueueJobRequest\x12\x0e\n\x06job_id\x18\x01 \x01(\x03\x12\x14\n\x07\x63odegen\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x0bscript_path\x18\x03 \x01(\t\x12\x16\n\x0eremote_log_dir\x18\x04 \x01(\t\x12\x31\n\x0bmanaged_job\x18\x05 \x01(\x0b\x32\x17.jobs.v1.ManagedJobInfoH\x01\x88\x01\x01\x42\n\n\x08_codegenB\x0e\n\x0c_managed_job\"\x89\x01\n\x0eManagedJobInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\x04pool\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x11\n\tworkspace\x18\x03 \x01(\t\x12\x12\n\nentrypoint\x18\x04 \x01(\t\x12&\n\x05tasks\x18\x05 \x03(\x0b\x32\x17.jobs.v1.ManagedJobTaskB\x07\n\x05_pool\"]\n\x0eManagedJobTask\x12\x0f\n\x07task_id\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x15\n\rresources_str\x18\x03 \x01(\t\x12\x15\n\rmetadata_json\x18\x04 \x01(\t\"\x12\n\x10QueueJobResponse\"\x15\n\x13UpdateStatusRequest\"\x16\n\x14UpdateStatusResponse\"L\n\x12GetJobQueueRequest\x12\x16\n\tuser_hash\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x08\x61ll_jobs\x18\x02 \x01(\x08\x42\x0c\n\n_user_hash\"\xf4\x01\n\x07JobInfo\x12\x0e\n\x06job_id\x18\x01 \x01(\x03\x12\x10\n\x08job_name\x18\x02 \x01(\t\x12\x10\n\x08username\x18\x03 \x01(\t\x12\x14\n\x0csubmitted_at\x18\x04 \x01(\x01\x12\"\n\x06status\x18\x05 \x01(\x0e\x32\x12.jobs.v1.JobStatus\x12\x15\n\rrun_timestamp\x18\x06 \x01(\t\x12\x10\n\x08start_at\x18\x07 \x01(\x01\x12\x0e\n\x06\x65nd_at\x18\x08 \x01(\x01\x12\x11\n\tresources\x18\t \x01(\t\x12\x0b\n\x03pid\x18\n \x01(\x03\x12\x10\n\x08log_path\x18\x0b \x01(\t\x12\x10\n\x08metadata\x18\x0c \x01(\t\"5\n\x13GetJobQueueResponse\x12\x1e\n\x04jobs\x18\x01 \x03(\x0b\x32\x10.jobs.v1.JobInfo\"^\n\x11\x43\x61ncelJobsRequest\x12\x0f\n\x07job_ids\x18\x01 \x03(\x03\x12\x12\n\ncancel_all\x18\x02 \x01(\x08\x12\x16\n\tuser_hash\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_user_hash\"/\n\x12\x43\x61ncelJobsResponse\x12\x19\n\x11\x63\x61ncelled_job_ids\x18\x01 \x03(\x03\"\x1e\n\x1c\x46\x61ilAllInProgressJobsRequest\"\x1f\n\x1d\x46\x61ilAllInProgressJobsResponse\"\x7f\n\x0fTailLogsRequest\x12\x13\n\x06job_id\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x1b\n\x0emanaged_job_id\x18\x02 \x01(\x03H\x01\x88\x01\x01\x12\x0e\n\x06\x66ollow\x18\x03 \x01(\x08\x12\x0c\n\x04tail\x18\x04 \x01(\x05\x42\t\n\x07_job_idB\x11\n\x0f_managed_job_id\"7\n\x10TailLogsResponse\x12\x10\n\x08log_line\x18\x01 \x01(\t\x12\x11\n\texit_code\x18\x02 \x01(\x05\"&\n\x13GetJobStatusRequest\x12\x0f\n\x07job_ids\x18\x01 \x03(\x03\"\xa4\x01\n\x14GetJobStatusResponse\x12\x44\n\x0cjob_statuses\x18\x01 \x03(\x0b\x32..jobs.v1.GetJobStatusResponse.JobStatusesEntry\x1a\x46\n\x10JobStatusesEntry\x12\x0b\n\x03key\x18\x01 \x01(\x03\x12!\n\x05value\x18\x02 \x01(\x0e\x32\x12.jobs.v1.JobStatus:\x02\x38\x01\"A\n\x1fGetJobSubmittedTimestampRequest\x12\x13\n\x06job_id\x18\x01 \x01(\x03H\x00\x88\x01\x01\x42\t\n\x07_job_id\"5\n GetJobSubmittedTimestampResponse\x12\x11\n\ttimestamp\x18\x01 \x01(\x02\"=\n\x1bGetJobEndedTimestampRequest\x12\x13\n\x06job_id\x18\x01 \x01(\x03H\x00\x88\x01\x01\x42\t\n\x07_job_id\"1\n\x1cGetJobEndedTimestampResponse\x12\x11\n\ttimestamp\x18\x01 \x01(\x02\"+\n\x18GetLogDirsForJobsRequest\x12\x0f\n\x07job_ids\x18\x01 \x03(\x03\"\x98\x01\n\x19GetLogDirsForJobsResponse\x12H\n\x0cjob_log_dirs\x18\x01 \x03(\x0b\x32\x32.jobs.v1.GetLogDirsForJobsResponse.JobLogDirsEntry\x1a\x31\n\x0fJobLogDirsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x03\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01*\x8d\x02\n\tJobStatus\x12\x1a\n\x16JOB_STATUS_UNSPECIFIED\x10\x00\x12\x13\n\x0fJOB_STATUS_INIT\x10\x01\x12\x16\n\x12JOB_STATUS_PENDING\x10\x02\x12\x19\n\x15JOB_STATUS_SETTING_UP\x10\x03\x12\x16\n\x12JOB_STATUS_RUNNING\x10\x04\x12\x1c\n\x18JOB_STATUS_FAILED_DRIVER\x10\x05\x12\x18\n\x14JOB_STATUS_SUCCEEDED\x10\x06\x12\x15\n\x11JOB_STATUS_FAILED\x10\x07\x12\x1b\n\x17JOB_STATUS_FAILED_SETUP\x10\x08\x12\x18\n\x14JOB_STATUS_CANCELLED\x10\t2\x91\x07\n\x0bJobsService\x12\x39\n\x06\x41\x64\x64Job\x12\x16.jobs.v1.AddJobRequest\x1a\x17.jobs.v1.AddJobResponse\x12?\n\x08QueueJob\x12\x18.jobs.v1.QueueJobRequest\x1a\x19.jobs.v1.QueueJobResponse\x12K\n\x0cUpdateStatus\x12\x1c.jobs.v1.UpdateStatusRequest\x1a\x1d.jobs.v1.UpdateStatusResponse\x12H\n\x0bGetJobQueue\x12\x1b.jobs.v1.GetJobQueueRequest\x1a\x1c.jobs.v1.GetJobQueueResponse\x12\x45\n\nCancelJobs\x12\x1a.jobs.v1.CancelJobsRequest\x1a\x1b.jobs.v1.CancelJobsResponse\x12\x66\n\x15\x46\x61ilAllInProgressJobs\x12%.jobs.v1.FailAllInProgressJobsRequest\x1a&.jobs.v1.FailAllInProgressJobsResponse\x12\x41\n\x08TailLogs\x12\x18.jobs.v1.TailLogsRequest\x1a\x19.jobs.v1.TailLogsResponse0\x01\x12K\n\x0cGetJobStatus\x12\x1c.jobs.v1.GetJobStatusRequest\x1a\x1d.jobs.v1.GetJobStatusResponse\x12o\n\x18GetJobSubmittedTimestamp\x12(.jobs.v1.GetJobSubmittedTimestampRequest\x1a).jobs.v1.GetJobSubmittedTimestampResponse\x12\x63\n\x14GetJobEndedTimestamp\x12$.jobs.v1.GetJobEndedTimestampRequest\x1a%.jobs.v1.GetJobEndedTimestampResponse\x12Z\n\x11GetLogDirsForJobs\x12!.jobs.v1.GetLogDirsForJobsRequest\x1a\".jobs.v1.GetLogDirsForJobsResponseb\x06proto3')
18
+
19
+ _globals = globals()
20
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sky.schemas.generated.jobsv1_pb2', _globals)
22
+ if not _descriptor._USE_C_DESCRIPTORS:
23
+ DESCRIPTOR._loaded_options = None
24
+ _globals['_GETJOBSTATUSRESPONSE_JOBSTATUSESENTRY']._loaded_options = None
25
+ _globals['_GETJOBSTATUSRESPONSE_JOBSTATUSESENTRY']._serialized_options = b'8\001'
26
+ _globals['_GETLOGDIRSFORJOBSRESPONSE_JOBLOGDIRSENTRY']._loaded_options = None
27
+ _globals['_GETLOGDIRSFORJOBSRESPONSE_JOBLOGDIRSENTRY']._serialized_options = b'8\001'
28
+ _globals['_JOBSTATUS']._serialized_start=2138
29
+ _globals['_JOBSTATUS']._serialized_end=2407
30
+ _globals['_ADDJOBREQUEST']._serialized_start=48
31
+ _globals['_ADDJOBREQUEST']._serialized_end=181
32
+ _globals['_ADDJOBRESPONSE']._serialized_start=183
33
+ _globals['_ADDJOBRESPONSE']._serialized_end=232
34
+ _globals['_QUEUEJOBREQUEST']._serialized_start=235
35
+ _globals['_QUEUEJOBREQUEST']._serialized_end=414
36
+ _globals['_MANAGEDJOBINFO']._serialized_start=417
37
+ _globals['_MANAGEDJOBINFO']._serialized_end=554
38
+ _globals['_MANAGEDJOBTASK']._serialized_start=556
39
+ _globals['_MANAGEDJOBTASK']._serialized_end=649
40
+ _globals['_QUEUEJOBRESPONSE']._serialized_start=651
41
+ _globals['_QUEUEJOBRESPONSE']._serialized_end=669
42
+ _globals['_UPDATESTATUSREQUEST']._serialized_start=671
43
+ _globals['_UPDATESTATUSREQUEST']._serialized_end=692
44
+ _globals['_UPDATESTATUSRESPONSE']._serialized_start=694
45
+ _globals['_UPDATESTATUSRESPONSE']._serialized_end=716
46
+ _globals['_GETJOBQUEUEREQUEST']._serialized_start=718
47
+ _globals['_GETJOBQUEUEREQUEST']._serialized_end=794
48
+ _globals['_JOBINFO']._serialized_start=797
49
+ _globals['_JOBINFO']._serialized_end=1041
50
+ _globals['_GETJOBQUEUERESPONSE']._serialized_start=1043
51
+ _globals['_GETJOBQUEUERESPONSE']._serialized_end=1096
52
+ _globals['_CANCELJOBSREQUEST']._serialized_start=1098
53
+ _globals['_CANCELJOBSREQUEST']._serialized_end=1192
54
+ _globals['_CANCELJOBSRESPONSE']._serialized_start=1194
55
+ _globals['_CANCELJOBSRESPONSE']._serialized_end=1241
56
+ _globals['_FAILALLINPROGRESSJOBSREQUEST']._serialized_start=1243
57
+ _globals['_FAILALLINPROGRESSJOBSREQUEST']._serialized_end=1273
58
+ _globals['_FAILALLINPROGRESSJOBSRESPONSE']._serialized_start=1275
59
+ _globals['_FAILALLINPROGRESSJOBSRESPONSE']._serialized_end=1306
60
+ _globals['_TAILLOGSREQUEST']._serialized_start=1308
61
+ _globals['_TAILLOGSREQUEST']._serialized_end=1435
62
+ _globals['_TAILLOGSRESPONSE']._serialized_start=1437
63
+ _globals['_TAILLOGSRESPONSE']._serialized_end=1492
64
+ _globals['_GETJOBSTATUSREQUEST']._serialized_start=1494
65
+ _globals['_GETJOBSTATUSREQUEST']._serialized_end=1532
66
+ _globals['_GETJOBSTATUSRESPONSE']._serialized_start=1535
67
+ _globals['_GETJOBSTATUSRESPONSE']._serialized_end=1699
68
+ _globals['_GETJOBSTATUSRESPONSE_JOBSTATUSESENTRY']._serialized_start=1629
69
+ _globals['_GETJOBSTATUSRESPONSE_JOBSTATUSESENTRY']._serialized_end=1699
70
+ _globals['_GETJOBSUBMITTEDTIMESTAMPREQUEST']._serialized_start=1701
71
+ _globals['_GETJOBSUBMITTEDTIMESTAMPREQUEST']._serialized_end=1766
72
+ _globals['_GETJOBSUBMITTEDTIMESTAMPRESPONSE']._serialized_start=1768
73
+ _globals['_GETJOBSUBMITTEDTIMESTAMPRESPONSE']._serialized_end=1821
74
+ _globals['_GETJOBENDEDTIMESTAMPREQUEST']._serialized_start=1823
75
+ _globals['_GETJOBENDEDTIMESTAMPREQUEST']._serialized_end=1884
76
+ _globals['_GETJOBENDEDTIMESTAMPRESPONSE']._serialized_start=1886
77
+ _globals['_GETJOBENDEDTIMESTAMPRESPONSE']._serialized_end=1935
78
+ _globals['_GETLOGDIRSFORJOBSREQUEST']._serialized_start=1937
79
+ _globals['_GETLOGDIRSFORJOBSREQUEST']._serialized_end=1980
80
+ _globals['_GETLOGDIRSFORJOBSRESPONSE']._serialized_start=1983
81
+ _globals['_GETLOGDIRSFORJOBSRESPONSE']._serialized_end=2135
82
+ _globals['_GETLOGDIRSFORJOBSRESPONSE_JOBLOGDIRSENTRY']._serialized_start=2086
83
+ _globals['_GETLOGDIRSFORJOBSRESPONSE_JOBLOGDIRSENTRY']._serialized_end=2135
84
+ _globals['_JOBSSERVICE']._serialized_start=2410
85
+ _globals['_JOBSSERVICE']._serialized_end=3323
86
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,252 @@
1
+ from google.protobuf.internal import containers as _containers
2
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
3
+ from google.protobuf import descriptor as _descriptor
4
+ from google.protobuf import message as _message
5
+ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
6
+
7
+ DESCRIPTOR: _descriptor.FileDescriptor
8
+
9
+ class JobStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
10
+ __slots__ = ()
11
+ JOB_STATUS_UNSPECIFIED: _ClassVar[JobStatus]
12
+ JOB_STATUS_INIT: _ClassVar[JobStatus]
13
+ JOB_STATUS_PENDING: _ClassVar[JobStatus]
14
+ JOB_STATUS_SETTING_UP: _ClassVar[JobStatus]
15
+ JOB_STATUS_RUNNING: _ClassVar[JobStatus]
16
+ JOB_STATUS_FAILED_DRIVER: _ClassVar[JobStatus]
17
+ JOB_STATUS_SUCCEEDED: _ClassVar[JobStatus]
18
+ JOB_STATUS_FAILED: _ClassVar[JobStatus]
19
+ JOB_STATUS_FAILED_SETUP: _ClassVar[JobStatus]
20
+ JOB_STATUS_CANCELLED: _ClassVar[JobStatus]
21
+ JOB_STATUS_UNSPECIFIED: JobStatus
22
+ JOB_STATUS_INIT: JobStatus
23
+ JOB_STATUS_PENDING: JobStatus
24
+ JOB_STATUS_SETTING_UP: JobStatus
25
+ JOB_STATUS_RUNNING: JobStatus
26
+ JOB_STATUS_FAILED_DRIVER: JobStatus
27
+ JOB_STATUS_SUCCEEDED: JobStatus
28
+ JOB_STATUS_FAILED: JobStatus
29
+ JOB_STATUS_FAILED_SETUP: JobStatus
30
+ JOB_STATUS_CANCELLED: JobStatus
31
+
32
+ class AddJobRequest(_message.Message):
33
+ __slots__ = ("job_name", "username", "run_timestamp", "resources_str", "metadata")
34
+ JOB_NAME_FIELD_NUMBER: _ClassVar[int]
35
+ USERNAME_FIELD_NUMBER: _ClassVar[int]
36
+ RUN_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
37
+ RESOURCES_STR_FIELD_NUMBER: _ClassVar[int]
38
+ METADATA_FIELD_NUMBER: _ClassVar[int]
39
+ job_name: str
40
+ username: str
41
+ run_timestamp: str
42
+ resources_str: str
43
+ metadata: str
44
+ def __init__(self, job_name: _Optional[str] = ..., username: _Optional[str] = ..., run_timestamp: _Optional[str] = ..., resources_str: _Optional[str] = ..., metadata: _Optional[str] = ...) -> None: ...
45
+
46
+ class AddJobResponse(_message.Message):
47
+ __slots__ = ("job_id", "log_dir")
48
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
49
+ LOG_DIR_FIELD_NUMBER: _ClassVar[int]
50
+ job_id: int
51
+ log_dir: str
52
+ def __init__(self, job_id: _Optional[int] = ..., log_dir: _Optional[str] = ...) -> None: ...
53
+
54
+ class QueueJobRequest(_message.Message):
55
+ __slots__ = ("job_id", "codegen", "script_path", "remote_log_dir", "managed_job")
56
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
57
+ CODEGEN_FIELD_NUMBER: _ClassVar[int]
58
+ SCRIPT_PATH_FIELD_NUMBER: _ClassVar[int]
59
+ REMOTE_LOG_DIR_FIELD_NUMBER: _ClassVar[int]
60
+ MANAGED_JOB_FIELD_NUMBER: _ClassVar[int]
61
+ job_id: int
62
+ codegen: str
63
+ script_path: str
64
+ remote_log_dir: str
65
+ managed_job: ManagedJobInfo
66
+ def __init__(self, job_id: _Optional[int] = ..., codegen: _Optional[str] = ..., script_path: _Optional[str] = ..., remote_log_dir: _Optional[str] = ..., managed_job: _Optional[_Union[ManagedJobInfo, _Mapping]] = ...) -> None: ...
67
+
68
+ class ManagedJobInfo(_message.Message):
69
+ __slots__ = ("name", "pool", "workspace", "entrypoint", "tasks")
70
+ NAME_FIELD_NUMBER: _ClassVar[int]
71
+ POOL_FIELD_NUMBER: _ClassVar[int]
72
+ WORKSPACE_FIELD_NUMBER: _ClassVar[int]
73
+ ENTRYPOINT_FIELD_NUMBER: _ClassVar[int]
74
+ TASKS_FIELD_NUMBER: _ClassVar[int]
75
+ name: str
76
+ pool: str
77
+ workspace: str
78
+ entrypoint: str
79
+ tasks: _containers.RepeatedCompositeFieldContainer[ManagedJobTask]
80
+ def __init__(self, name: _Optional[str] = ..., pool: _Optional[str] = ..., workspace: _Optional[str] = ..., entrypoint: _Optional[str] = ..., tasks: _Optional[_Iterable[_Union[ManagedJobTask, _Mapping]]] = ...) -> None: ...
81
+
82
+ class ManagedJobTask(_message.Message):
83
+ __slots__ = ("task_id", "name", "resources_str", "metadata_json")
84
+ TASK_ID_FIELD_NUMBER: _ClassVar[int]
85
+ NAME_FIELD_NUMBER: _ClassVar[int]
86
+ RESOURCES_STR_FIELD_NUMBER: _ClassVar[int]
87
+ METADATA_JSON_FIELD_NUMBER: _ClassVar[int]
88
+ task_id: int
89
+ name: str
90
+ resources_str: str
91
+ metadata_json: str
92
+ def __init__(self, task_id: _Optional[int] = ..., name: _Optional[str] = ..., resources_str: _Optional[str] = ..., metadata_json: _Optional[str] = ...) -> None: ...
93
+
94
+ class QueueJobResponse(_message.Message):
95
+ __slots__ = ()
96
+ def __init__(self) -> None: ...
97
+
98
+ class UpdateStatusRequest(_message.Message):
99
+ __slots__ = ()
100
+ def __init__(self) -> None: ...
101
+
102
+ class UpdateStatusResponse(_message.Message):
103
+ __slots__ = ()
104
+ def __init__(self) -> None: ...
105
+
106
+ class GetJobQueueRequest(_message.Message):
107
+ __slots__ = ("user_hash", "all_jobs")
108
+ USER_HASH_FIELD_NUMBER: _ClassVar[int]
109
+ ALL_JOBS_FIELD_NUMBER: _ClassVar[int]
110
+ user_hash: str
111
+ all_jobs: bool
112
+ def __init__(self, user_hash: _Optional[str] = ..., all_jobs: bool = ...) -> None: ...
113
+
114
+ class JobInfo(_message.Message):
115
+ __slots__ = ("job_id", "job_name", "username", "submitted_at", "status", "run_timestamp", "start_at", "end_at", "resources", "pid", "log_path", "metadata")
116
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
117
+ JOB_NAME_FIELD_NUMBER: _ClassVar[int]
118
+ USERNAME_FIELD_NUMBER: _ClassVar[int]
119
+ SUBMITTED_AT_FIELD_NUMBER: _ClassVar[int]
120
+ STATUS_FIELD_NUMBER: _ClassVar[int]
121
+ RUN_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
122
+ START_AT_FIELD_NUMBER: _ClassVar[int]
123
+ END_AT_FIELD_NUMBER: _ClassVar[int]
124
+ RESOURCES_FIELD_NUMBER: _ClassVar[int]
125
+ PID_FIELD_NUMBER: _ClassVar[int]
126
+ LOG_PATH_FIELD_NUMBER: _ClassVar[int]
127
+ METADATA_FIELD_NUMBER: _ClassVar[int]
128
+ job_id: int
129
+ job_name: str
130
+ username: str
131
+ submitted_at: float
132
+ status: JobStatus
133
+ run_timestamp: str
134
+ start_at: float
135
+ end_at: float
136
+ resources: str
137
+ pid: int
138
+ log_path: str
139
+ metadata: str
140
+ def __init__(self, job_id: _Optional[int] = ..., job_name: _Optional[str] = ..., username: _Optional[str] = ..., submitted_at: _Optional[float] = ..., status: _Optional[_Union[JobStatus, str]] = ..., run_timestamp: _Optional[str] = ..., start_at: _Optional[float] = ..., end_at: _Optional[float] = ..., resources: _Optional[str] = ..., pid: _Optional[int] = ..., log_path: _Optional[str] = ..., metadata: _Optional[str] = ...) -> None: ...
141
+
142
+ class GetJobQueueResponse(_message.Message):
143
+ __slots__ = ("jobs",)
144
+ JOBS_FIELD_NUMBER: _ClassVar[int]
145
+ jobs: _containers.RepeatedCompositeFieldContainer[JobInfo]
146
+ def __init__(self, jobs: _Optional[_Iterable[_Union[JobInfo, _Mapping]]] = ...) -> None: ...
147
+
148
+ class CancelJobsRequest(_message.Message):
149
+ __slots__ = ("job_ids", "cancel_all", "user_hash")
150
+ JOB_IDS_FIELD_NUMBER: _ClassVar[int]
151
+ CANCEL_ALL_FIELD_NUMBER: _ClassVar[int]
152
+ USER_HASH_FIELD_NUMBER: _ClassVar[int]
153
+ job_ids: _containers.RepeatedScalarFieldContainer[int]
154
+ cancel_all: bool
155
+ user_hash: str
156
+ def __init__(self, job_ids: _Optional[_Iterable[int]] = ..., cancel_all: bool = ..., user_hash: _Optional[str] = ...) -> None: ...
157
+
158
+ class CancelJobsResponse(_message.Message):
159
+ __slots__ = ("cancelled_job_ids",)
160
+ CANCELLED_JOB_IDS_FIELD_NUMBER: _ClassVar[int]
161
+ cancelled_job_ids: _containers.RepeatedScalarFieldContainer[int]
162
+ def __init__(self, cancelled_job_ids: _Optional[_Iterable[int]] = ...) -> None: ...
163
+
164
+ class FailAllInProgressJobsRequest(_message.Message):
165
+ __slots__ = ()
166
+ def __init__(self) -> None: ...
167
+
168
+ class FailAllInProgressJobsResponse(_message.Message):
169
+ __slots__ = ()
170
+ def __init__(self) -> None: ...
171
+
172
+ class TailLogsRequest(_message.Message):
173
+ __slots__ = ("job_id", "managed_job_id", "follow", "tail")
174
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
175
+ MANAGED_JOB_ID_FIELD_NUMBER: _ClassVar[int]
176
+ FOLLOW_FIELD_NUMBER: _ClassVar[int]
177
+ TAIL_FIELD_NUMBER: _ClassVar[int]
178
+ job_id: int
179
+ managed_job_id: int
180
+ follow: bool
181
+ tail: int
182
+ def __init__(self, job_id: _Optional[int] = ..., managed_job_id: _Optional[int] = ..., follow: bool = ..., tail: _Optional[int] = ...) -> None: ...
183
+
184
+ class TailLogsResponse(_message.Message):
185
+ __slots__ = ("log_line", "exit_code")
186
+ LOG_LINE_FIELD_NUMBER: _ClassVar[int]
187
+ EXIT_CODE_FIELD_NUMBER: _ClassVar[int]
188
+ log_line: str
189
+ exit_code: int
190
+ def __init__(self, log_line: _Optional[str] = ..., exit_code: _Optional[int] = ...) -> None: ...
191
+
192
+ class GetJobStatusRequest(_message.Message):
193
+ __slots__ = ("job_ids",)
194
+ JOB_IDS_FIELD_NUMBER: _ClassVar[int]
195
+ job_ids: _containers.RepeatedScalarFieldContainer[int]
196
+ def __init__(self, job_ids: _Optional[_Iterable[int]] = ...) -> None: ...
197
+
198
+ class GetJobStatusResponse(_message.Message):
199
+ __slots__ = ("job_statuses",)
200
+ class JobStatusesEntry(_message.Message):
201
+ __slots__ = ("key", "value")
202
+ KEY_FIELD_NUMBER: _ClassVar[int]
203
+ VALUE_FIELD_NUMBER: _ClassVar[int]
204
+ key: int
205
+ value: JobStatus
206
+ def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[JobStatus, str]] = ...) -> None: ...
207
+ JOB_STATUSES_FIELD_NUMBER: _ClassVar[int]
208
+ job_statuses: _containers.ScalarMap[int, JobStatus]
209
+ def __init__(self, job_statuses: _Optional[_Mapping[int, JobStatus]] = ...) -> None: ...
210
+
211
+ class GetJobSubmittedTimestampRequest(_message.Message):
212
+ __slots__ = ("job_id",)
213
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
214
+ job_id: int
215
+ def __init__(self, job_id: _Optional[int] = ...) -> None: ...
216
+
217
+ class GetJobSubmittedTimestampResponse(_message.Message):
218
+ __slots__ = ("timestamp",)
219
+ TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
220
+ timestamp: float
221
+ def __init__(self, timestamp: _Optional[float] = ...) -> None: ...
222
+
223
+ class GetJobEndedTimestampRequest(_message.Message):
224
+ __slots__ = ("job_id",)
225
+ JOB_ID_FIELD_NUMBER: _ClassVar[int]
226
+ job_id: int
227
+ def __init__(self, job_id: _Optional[int] = ...) -> None: ...
228
+
229
+ class GetJobEndedTimestampResponse(_message.Message):
230
+ __slots__ = ("timestamp",)
231
+ TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
232
+ timestamp: float
233
+ def __init__(self, timestamp: _Optional[float] = ...) -> None: ...
234
+
235
+ class GetLogDirsForJobsRequest(_message.Message):
236
+ __slots__ = ("job_ids",)
237
+ JOB_IDS_FIELD_NUMBER: _ClassVar[int]
238
+ job_ids: _containers.RepeatedScalarFieldContainer[int]
239
+ def __init__(self, job_ids: _Optional[_Iterable[int]] = ...) -> None: ...
240
+
241
+ class GetLogDirsForJobsResponse(_message.Message):
242
+ __slots__ = ("job_log_dirs",)
243
+ class JobLogDirsEntry(_message.Message):
244
+ __slots__ = ("key", "value")
245
+ KEY_FIELD_NUMBER: _ClassVar[int]
246
+ VALUE_FIELD_NUMBER: _ClassVar[int]
247
+ key: int
248
+ value: str
249
+ def __init__(self, key: _Optional[int] = ..., value: _Optional[str] = ...) -> None: ...
250
+ JOB_LOG_DIRS_FIELD_NUMBER: _ClassVar[int]
251
+ job_log_dirs: _containers.ScalarMap[int, str]
252
+ def __init__(self, job_log_dirs: _Optional[_Mapping[int, str]] = ...) -> None: ...