anyscale 0.26.67__py3-none-any.whl → 0.26.68__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.
- anyscale/client/README.md +20 -0
- anyscale/client/openapi_client/__init__.py +15 -0
- anyscale/client/openapi_client/api/default_api.py +656 -0
- anyscale/client/openapi_client/models/__init__.py +15 -0
- anyscale/client/openapi_client/models/lineage_artifact.py +383 -0
- anyscale/client/openapi_client/models/lineage_artifact_sort_field.py +101 -0
- anyscale/client/openapi_client/models/lineage_artifact_type.py +100 -0
- anyscale/client/openapi_client/models/lineage_direction.py +101 -0
- anyscale/client/openapi_client/models/lineage_graph.py +179 -0
- anyscale/client/openapi_client/models/lineage_graph_node.py +439 -0
- anyscale/client/openapi_client/models/lineage_node_type.py +100 -0
- anyscale/client/openapi_client/models/lineage_workload.py +355 -0
- anyscale/client/openapi_client/models/lineage_workload_sort_field.py +101 -0
- anyscale/client/openapi_client/models/lineage_workload_type.py +101 -0
- anyscale/client/openapi_client/models/lineageartifact_list_response.py +147 -0
- anyscale/client/openapi_client/models/lineageartifact_response.py +121 -0
- anyscale/client/openapi_client/models/lineagegraph_response.py +121 -0
- anyscale/client/openapi_client/models/lineageworkload_list_response.py +147 -0
- anyscale/client/openapi_client/models/lineageworkload_response.py +121 -0
- anyscale/commands/setup_k8s.py +460 -40
- anyscale/controllers/cloud_controller.py +10 -10
- anyscale/controllers/kubernetes_verifier.py +57 -11
- anyscale/version.py +1 -1
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/METADATA +1 -1
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/RECORD +30 -15
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/WHEEL +0 -0
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/entry_points.txt +0 -0
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/licenses/LICENSE +0 -0
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/licenses/NOTICE +0 -0
- {anyscale-0.26.67.dist-info → anyscale-0.26.68.dist-info}/top_level.txt +0 -0
@@ -789,20 +789,59 @@ class OperatorVerifier:
|
|
789
789
|
|
790
790
|
def _fetch_config_data(self, local_port: int) -> OperatorConfigData:
|
791
791
|
"""Fetch config data from operator."""
|
792
|
-
|
793
|
-
|
794
|
-
timeout=HTTP_REQUEST_TIMEOUT,
|
795
|
-
)
|
792
|
+
max_retries = 6
|
793
|
+
retry_delay = 5
|
796
794
|
|
797
|
-
|
798
|
-
|
795
|
+
for attempt in range(max_retries):
|
796
|
+
response = requests.get(
|
797
|
+
f"http://localhost:{local_port}{OPERATOR_CONFIG_ENDPOINT}",
|
798
|
+
timeout=HTTP_REQUEST_TIMEOUT,
|
799
|
+
)
|
799
800
|
|
800
|
-
|
801
|
-
|
802
|
-
|
803
|
-
|
804
|
-
|
801
|
+
config_data = None
|
802
|
+
config_error = None
|
803
|
+
|
804
|
+
if response.status_code == 200:
|
805
|
+
try:
|
806
|
+
config_data = response.json()
|
807
|
+
|
808
|
+
# Check if iamIdentity is present in the config
|
809
|
+
# This is necessary because the operator may not have the iamIdentity field
|
810
|
+
# immediately available after startup while it is being bootstrapped (connecting to KCP, storing registry secrets, etc.)
|
811
|
+
if config_data and "iamIdentity" in config_data:
|
812
|
+
return OperatorConfigData(
|
813
|
+
status_code=response.status_code,
|
814
|
+
response_text=response.text,
|
815
|
+
config_data=config_data,
|
816
|
+
config_error=config_error,
|
817
|
+
)
|
818
|
+
|
819
|
+
# If iamIdentity is missing and we have retries left, wait and retry
|
820
|
+
if attempt < max_retries - 1:
|
821
|
+
self.log.info(
|
822
|
+
f"Operator config endpoint returned 200 but iamIdentity not found. "
|
823
|
+
f"Retrying in {retry_delay} seconds... (attempt {attempt + 1}/{max_retries})"
|
824
|
+
)
|
825
|
+
time.sleep(retry_delay)
|
826
|
+
continue
|
827
|
+
else:
|
828
|
+
# Last attempt and still no iamIdentity, return what we have
|
829
|
+
self.log.warning(
|
830
|
+
f"iamIdentity not found after {max_retries} attempts"
|
831
|
+
)
|
832
|
+
|
833
|
+
except json.JSONDecodeError as e:
|
834
|
+
config_error = str(e)
|
835
|
+
else:
|
836
|
+
# Non-200 status code, return immediately without retrying
|
837
|
+
return OperatorConfigData(
|
838
|
+
status_code=response.status_code,
|
839
|
+
response_text=response.text,
|
840
|
+
config_data=config_data,
|
841
|
+
config_error=config_error,
|
842
|
+
)
|
805
843
|
|
844
|
+
# Return the last response (this will have config_data but no iamIdentity)
|
806
845
|
return OperatorConfigData(
|
807
846
|
status_code=response.status_code,
|
808
847
|
response_text=response.text,
|
@@ -1375,6 +1414,13 @@ class KubernetesCloudDeploymentVerifier:
|
|
1375
1414
|
):
|
1376
1415
|
cloud_deployment.file_storage = FileStorage(**cloud_deployment.file_storage)
|
1377
1416
|
|
1417
|
+
if cloud_deployment.kubernetes_config is not None and isinstance(
|
1418
|
+
cloud_deployment.kubernetes_config, dict
|
1419
|
+
):
|
1420
|
+
cloud_deployment.kubernetes_config = OpenAPIKubernetesConfig(
|
1421
|
+
**cloud_deployment.kubernetes_config
|
1422
|
+
)
|
1423
|
+
|
1378
1424
|
try:
|
1379
1425
|
return self._run_verification_steps(cloud_deployment)
|
1380
1426
|
|
anyscale/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "0.26.
|
1
|
+
__version__ = "0.26.68"
|
@@ -28,7 +28,7 @@ anyscale/snapshot.py,sha256=UGJT5C1s_4xmQxjWODK5DFpGxHRBX5jOCdSCqXESH8E,1685
|
|
28
28
|
anyscale/tables.py,sha256=TV4F2uLnwehvbkAfaP7iuLlT2wLIo6ORH2LVdRGXW5g,2840
|
29
29
|
anyscale/telemetry.py,sha256=U90C2Vgx48z9PMTI6EbzHFbP3jWnDUutbIfMPBb8-SI,14711
|
30
30
|
anyscale/util.py,sha256=3jfGH2CyDmXrSg-3owSF7F8FnqKbLJ-aHUbepyCKuqQ,42903
|
31
|
-
anyscale/version.py,sha256=
|
31
|
+
anyscale/version.py,sha256=lpQs-Szxlm150B9mnwXj1al8clhb5Zo-ZL5AiFSuzk8,24
|
32
32
|
anyscale/workspace_utils.py,sha256=OViE88CnIF5ruVxd3kazQ0Mf2BxqtMq6wx-XQ5A2cp8,1204
|
33
33
|
anyscale/_private/anyscale_client/README.md,sha256=kSfI2Jfw5RHZWYtu0di3XtdSCx0d2pSwKMfjmDvw7Tg,3770
|
34
34
|
anyscale/_private/anyscale_client/__init__.py,sha256=807Blx3RHQeS8BmKZcsOQQ4dYoKlCnpm6Bdsif2CrHg,337
|
@@ -106,7 +106,7 @@ anyscale/background/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
|
|
106
106
|
anyscale/background/job_runner.py,sha256=LTuv9JOahyv6C9i7DLQAONgQF6--FfYZEmJrKy-sUG8,2687
|
107
107
|
anyscale/client/.gitignore,sha256=JZyvYEtT2DCSK9V5Joi6lQofhMik4PXiJRCWsg7SvqI,807
|
108
108
|
anyscale/client/.openapi-generator-ignore,sha256=pu2PTide7pJtJ-DFLzDy0cTYQJRlrB-8RRH3zGLeUds,1040
|
109
|
-
anyscale/client/README.md,sha256=
|
109
|
+
anyscale/client/README.md,sha256=yVThjY7_FVCDVT5NRRJ-05L9BheiL0Kr01CVnSie_6I,131991
|
110
110
|
anyscale/client/git_push.sh,sha256=EDCZOTTiLxbtPHmiU63qC99rGH67B7dhdPZdNUKivF0,1827
|
111
111
|
anyscale/client/requirements.txt,sha256=dkVKYUStC5h_g_87SH7pRdhXCj7ySozAJMGAFEzGgFc,126
|
112
112
|
anyscale/client/setup.cfg,sha256=l7bdKSIedeBhhoDtupsBwx1xPrlBf2yYeTH7a8kMga4,28
|
@@ -114,14 +114,14 @@ anyscale/client/setup.py,sha256=tSxqw1kAL1B9adnrnOarjnQfSbwGmnTr_kg8ZXhlm5A,1109
|
|
114
114
|
anyscale/client/test-requirements.txt,sha256=sTjmDTj5W9fh1ZAeo8UT2EBdeGDBNttj_PHiPBXg1D4,111
|
115
115
|
anyscale/client/tox.ini,sha256=M6L3UmvAdvU65LsoAF-Oi7oRjwZlCJZn8I7ofdXn5Ok,156
|
116
116
|
anyscale/client/.openapi-generator/VERSION,sha256=J0RzX-4u4jfin1kviKtmncjUePyjHm2kyvmkobOrt_E,5
|
117
|
-
anyscale/client/openapi_client/__init__.py,sha256=
|
117
|
+
anyscale/client/openapi_client/__init__.py,sha256=mOXEUcUD_s5VokuYaTXHOhFQKSvsFWVZ7kxmmJp5SMo,59881
|
118
118
|
anyscale/client/openapi_client/api_client.py,sha256=d8Un6j2Ny2vlS2qBXPVFj6_ql0k36DFahpWt_28TfCk,25563
|
119
119
|
anyscale/client/openapi_client/configuration.py,sha256=Dd5XrlHwv-wxnf0C35PG_-HBQoY3Yaz6hKrmkZz-m0E,12363
|
120
120
|
anyscale/client/openapi_client/exceptions.py,sha256=3egwsXQG2j_vARbqgBxUO1xSltAhpfiHTYVP7VXTvU0,3792
|
121
121
|
anyscale/client/openapi_client/rest.py,sha256=Ehj37v7GHW6SXV067Hze5HE42ayKaGi6a6ZlkR7u3Lg,12501
|
122
122
|
anyscale/client/openapi_client/api/__init__.py,sha256=i8u7BI2xX1GrXTL3hN0pKpYIlnT-D_uDxH2ElOfYG1I,141
|
123
|
-
anyscale/client/openapi_client/api/default_api.py,sha256=
|
124
|
-
anyscale/client/openapi_client/models/__init__.py,sha256=
|
123
|
+
anyscale/client/openapi_client/api/default_api.py,sha256=JGRjn6bzNkl2ysAD-cNlfloEioWDI3KXzZdROJjUU_U,2151488
|
124
|
+
anyscale/client/openapi_client/models/__init__.py,sha256=M51ftYXV7OZ-7DiL_hWnQXKH18zDvIjwYA4vgB0YFx4,59391
|
125
125
|
anyscale/client/openapi_client/models/access_config.py,sha256=b2mA0qtuTA5PFbp6C61Jc_T2zUMaojM1v32IhZo0MfY,3648
|
126
126
|
anyscale/client/openapi_client/models/actor_status.py,sha256=6xyX_aIqURj2raBdY9DmBxsdDACFrqqYvElGiM6YG2E,2813
|
127
127
|
anyscale/client/openapi_client/models/admin_create_user.py,sha256=9DPr8D0lKgoEZ3Z2kGsAd8L7ocFCiP6woOGLVs8SRb8,7251
|
@@ -481,6 +481,21 @@ anyscale/client/openapi_client/models/kubernetes_manager_registration_response.p
|
|
481
481
|
anyscale/client/openapi_client/models/kubernetesmanagerregistrationresponse_response.py,sha256=8UH867yGDAOgZrfXdkRzVkfTLViyTRQIZFBFd0vghu0,3825
|
482
482
|
anyscale/client/openapi_client/models/lb_resource.py,sha256=UAjfCjXZAvAn64WSltl-VWw1WyjMrCi73A1jtY2F4To,3739
|
483
483
|
anyscale/client/openapi_client/models/lbresource_response.py,sha256=AgJpUmMDDuF6ohHI2LbPoXICUKeBKWskgjaOcr59t8E,3528
|
484
|
+
anyscale/client/openapi_client/models/lineage_artifact.py,sha256=1ACZuH2FaYMW3XFGAX-IyupnvwngguaTeRfA3hTeoSE,12118
|
485
|
+
anyscale/client/openapi_client/models/lineage_artifact_sort_field.py,sha256=pOicxc4zT9fjSKG58AAiacJzo335d5y2SUdShrSm8dI,2922
|
486
|
+
anyscale/client/openapi_client/models/lineage_artifact_type.py,sha256=rZV5nndrPi0P75fpsg6ZnGRDUxwk0OFWNef22840Kl0,2854
|
487
|
+
anyscale/client/openapi_client/models/lineage_direction.py,sha256=tvIjSwnt4MSxuczUBI_KlI7gHiMCB76skHSdx_N8oIc,2848
|
488
|
+
anyscale/client/openapi_client/models/lineage_graph.py,sha256=yn34T-j0-PWdvIMCTemoOLyGZ5UQgu2HYnimmODd_Ys,5216
|
489
|
+
anyscale/client/openapi_client/models/lineage_graph_node.py,sha256=KWGpK42UCjEhe7bhR79CIJmuZdRL3NP4pwC0ig7Fs6E,13946
|
490
|
+
anyscale/client/openapi_client/models/lineage_node_type.py,sha256=bi8gje1x01FtL0l1PzN76aQbBCeOkLWk_e2YXd3jdwY,2850
|
491
|
+
anyscale/client/openapi_client/models/lineage_workload.py,sha256=F_iwZlFliVRPROmTwQZ_kwrzJ4kevnXfTY6q40ro3dk,11115
|
492
|
+
anyscale/client/openapi_client/models/lineage_workload_sort_field.py,sha256=u5seM0kQtRVrEAhbQ38MlMvGYbIBTwUB52Yc7pyr7n0,2922
|
493
|
+
anyscale/client/openapi_client/models/lineage_workload_type.py,sha256=kjZlfsIo6rRarGpnahuZEX1zM-qyqe3drQb1QO3xkZI,2914
|
494
|
+
anyscale/client/openapi_client/models/lineageartifact_list_response.py,sha256=t4QnqXbEkoADCzpm4q23EP9VPQueTLWKmDUJ6msKZZE,4422
|
495
|
+
anyscale/client/openapi_client/models/lineageartifact_response.py,sha256=VEkgCnS8A65Ia6opIQLeAVYPakrI5M0tNVRq-VZ8BQc,3583
|
496
|
+
anyscale/client/openapi_client/models/lineagegraph_response.py,sha256=YwM0XPkLdrWL5hTKYT1FzMTPvOJDJHAQaWqHmkXmHzk,3550
|
497
|
+
anyscale/client/openapi_client/models/lineageworkload_list_response.py,sha256=q6aoNXijJ7oggjGym0YkWtm_L55FCCUp4M86PbZLOGI,4422
|
498
|
+
anyscale/client/openapi_client/models/lineageworkload_response.py,sha256=ORICo_b71QEmKnT4EapJ02unA0AFf8y0_0JjNG9ROOA,3583
|
484
499
|
anyscale/client/openapi_client/models/list_databricks_connections.py,sha256=XRCO-FYXXWEcQ7qm1gL4uu7XP_1HSiwAx-AoNB4AtJA,3749
|
485
500
|
anyscale/client/openapi_client/models/list_machine_pools_response.py,sha256=lH_AGSraAalhusdwbb31uSCNBobNIdTA8mTVPkA_X7Y,3842
|
486
501
|
anyscale/client/openapi_client/models/list_machines_response.py,sha256=8aS1GNXSzf_j9MaKoRjWxJ-7xQoe1_4wS5oX3qUZEi0,3607
|
@@ -859,7 +874,7 @@ anyscale/commands/schedule_commands.py,sha256=Bw2aKp_w6xcuRSVVi9FLdUjRVCr8_v4Tt2
|
|
859
874
|
anyscale/commands/service_account_commands.py,sha256=JlppTmcaDofJn7TYqd3PW4hDGykdEN56fr0PT3qgBIg,3271
|
860
875
|
anyscale/commands/service_commands.py,sha256=DBrPkW7JH3kCsr038aQStm7AF1u-n80sLjwc2Hjifks,34014
|
861
876
|
anyscale/commands/session_commands_hidden.py,sha256=APEypnUB1yV2Rr6wdSFWy1vQbAnn-lOn0rU2enF5JdM,6200
|
862
|
-
anyscale/commands/setup_k8s.py,sha256=
|
877
|
+
anyscale/commands/setup_k8s.py,sha256=MGiCtRrkMEDcQa0C7Sc_3YZKzwaABuAk82k3URGXz8Q,58248
|
863
878
|
anyscale/commands/user_commands.py,sha256=C-i1dGpdhboywN_2XgPS2BekKx2y6LZq8c8gvS0S-tY,1259
|
864
879
|
anyscale/commands/util.py,sha256=fIob29G1jZ4VU9PKVSJnT6hqX7wAqsS4L9sApsMZcNs,8585
|
865
880
|
anyscale/commands/workspace_commands.py,sha256=5JoF5xftkwkxHidp8xyj9POrlZE_WxwSKtZGnKCbDV4,18597
|
@@ -879,7 +894,7 @@ anyscale/connect_utils/start_interactive_session.py,sha256=m-RCH0e_bQBF6dAOskbP9
|
|
879
894
|
anyscale/controllers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
880
895
|
anyscale/controllers/auth_controller.py,sha256=hDY2sPvUP8pvh8PnlDYH5rCHjQes2v3b_KBVjMbrzeE,5127
|
881
896
|
anyscale/controllers/base_controller.py,sha256=1QFJoScFUV7YTzpKarhwPOc1SvI-xqX3TZmwxKonW6I,1998
|
882
|
-
anyscale/controllers/cloud_controller.py,sha256=
|
897
|
+
anyscale/controllers/cloud_controller.py,sha256=1mZIQ4OVIu0mQ4ibKVw8pJskiNzf0ZdDnc4FIGBS8IE,202079
|
883
898
|
anyscale/controllers/cloud_file_storage_utils.py,sha256=ifaqClEybTgxhqGWHYoH1vrlbxwjRuO-De_3666R2O4,6987
|
884
899
|
anyscale/controllers/cloud_functional_verification_controller.py,sha256=uro10r981CTlt2zlisUCmNYljbrYBiWzh7vrqrcur3I,33475
|
885
900
|
anyscale/controllers/cluster_controller.py,sha256=Sb5wVjrjpycg5iqmENAVtZ4iy9Kr6kM97_ck-KH85LM,28745
|
@@ -889,7 +904,7 @@ anyscale/controllers/config_controller.py,sha256=VsfdARHxo4tMLfeiYkTNOMGW3sIcNhV
|
|
889
904
|
anyscale/controllers/experimental_integrations_controller.py,sha256=_22_hAQCJIMg3E10s8xajoFF6Lf1HqVlAdAVt0Rh2DY,3889
|
890
905
|
anyscale/controllers/job_controller.py,sha256=sNQGzSLtp6e8PSbrmMrW_dp3pYytS8KCGcE-YjaNz5I,25425
|
891
906
|
anyscale/controllers/jobs_bg_controller.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
892
|
-
anyscale/controllers/kubernetes_verifier.py,sha256=
|
907
|
+
anyscale/controllers/kubernetes_verifier.py,sha256=0mGeE8i8ptWdGwVDOFFWuxMzqXpYNVZeDixbSUuKx2k,61300
|
893
908
|
anyscale/controllers/list_controller.py,sha256=oaOS6oo2TKPpXhGjs_laxuIVKinv3FwYfHt1CIzeTuU,11621
|
894
909
|
anyscale/controllers/logs_controller.py,sha256=x5GBUVdPYhbWRA3RfMQZJi3hBS2i35RkgzROfmY47h4,17647
|
895
910
|
anyscale/controllers/machine_controller.py,sha256=WauNi7Spzt2TFZrIN4PwULzgJZBVDFlytzFqpDQ106w,1188
|
@@ -1174,10 +1189,10 @@ anyscale/workspace/__init__.py,sha256=Innbm5ZhCyADEVBiYSo_vbpKwUNcMzVSAfxIGKOYe6
|
|
1174
1189
|
anyscale/workspace/commands.py,sha256=b1sqNseoPj-1VXznqQOLe0V_a663bOTvJX-TaOMJa1Y,14590
|
1175
1190
|
anyscale/workspace/models.py,sha256=uiMqoJRQNRgTcOIIsysSrtlHMtnI7paUWS34EN626Cg,10016
|
1176
1191
|
anyscale/workspace/_private/workspace_sdk.py,sha256=2CMeYfJt0UtIFCocDn1ukw1iI5esKHdopLe6duEs-qE,27599
|
1177
|
-
anyscale-0.26.
|
1178
|
-
anyscale-0.26.
|
1179
|
-
anyscale-0.26.
|
1180
|
-
anyscale-0.26.
|
1181
|
-
anyscale-0.26.
|
1182
|
-
anyscale-0.26.
|
1183
|
-
anyscale-0.26.
|
1192
|
+
anyscale-0.26.68.dist-info/licenses/LICENSE,sha256=UOPu974Wzsna6frFv1mu4VrZgNdZT7lbcNPzo5ue3qs,3494
|
1193
|
+
anyscale-0.26.68.dist-info/licenses/NOTICE,sha256=gHqDhSnUYlRXX-mDOL5FtE7774oiKyV_HO80qM3r9Xo,196
|
1194
|
+
anyscale-0.26.68.dist-info/METADATA,sha256=HkQPlzY48CjPRep1GyHX3OdjWnHzBKpNKXPFZQhxxN4,3231
|
1195
|
+
anyscale-0.26.68.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
1196
|
+
anyscale-0.26.68.dist-info/entry_points.txt,sha256=NqO18sCZn6zG6J0S38itjcN00s7aE3C3v3k5lMAfCLk,51
|
1197
|
+
anyscale-0.26.68.dist-info/top_level.txt,sha256=g3NVNS8Oh0NZwbFFgeX696C5MZZkS5dqV2NqcsbDRJE,9
|
1198
|
+
anyscale-0.26.68.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|