File tree Expand file tree Collapse file tree 5 files changed +47
-9
lines changed Expand file tree Collapse file tree 5 files changed +47
-9
lines changed Original file line number Diff line number Diff line change @@ -134,6 +134,17 @@ def is_schedulable(self) -> bool:
134
134
"""
135
135
return True
136
136
137
+ @property
138
+ def supports_client_side_caching (self ) -> bool :
139
+ """Whether the orchestrator supports client side caching.
140
+
141
+ Returns:
142
+ Whether the orchestrator supports client side caching.
143
+ """
144
+ # The Kubernetes orchestrator starts step pods from a pipeline pod.
145
+ # This is currently not supported when using client-side caching.
146
+ return False
147
+
137
148
138
149
class KubernetesOrchestratorFlavor (BaseOrchestratorFlavor ):
139
150
"""Kubernetes orchestrator flavor."""
Original file line number Diff line number Diff line change @@ -94,6 +94,17 @@ def is_schedulable(self) -> bool:
94
94
"""
95
95
return False
96
96
97
+ @property
98
+ def supports_client_side_caching (self ) -> bool :
99
+ """Whether the orchestrator supports client side caching.
100
+
101
+ Returns:
102
+ Whether the orchestrator supports client side caching.
103
+ """
104
+ # The Lightning orchestrator starts step studios from a pipeline studio.
105
+ # This is currently not supported when using client-side caching.
106
+ return False
107
+
97
108
98
109
class LightningOrchestratorFlavor (BaseOrchestratorFlavor ):
99
110
"""Lightning orchestrator flavor."""
Original file line number Diff line number Diff line change @@ -144,3 +144,15 @@ def is_local(self) -> bool:
144
144
True if this config is for a local component, False otherwise.
145
145
"""
146
146
return False
147
+
148
+ @property
149
+ def supports_client_side_caching (self ) -> bool :
150
+ """Whether the orchestrator supports client side caching.
151
+
152
+ Returns:
153
+ Whether the orchestrator supports client side caching.
154
+ """
155
+ # The Skypilot orchestrator runs the entire pipeline in a single VM, or
156
+ # starts additional VMs from the root VM. Both of those cases are
157
+ # currently not supported when using client-side caching.
158
+ return False
Original file line number Diff line number Diff line change @@ -84,6 +84,15 @@ def is_schedulable(self) -> bool:
84
84
"""
85
85
return False
86
86
87
+ @property
88
+ def supports_client_side_caching (self ) -> bool :
89
+ """Whether the orchestrator supports client side caching.
90
+
91
+ Returns:
92
+ Whether the orchestrator supports client side caching.
93
+ """
94
+ return True
95
+
87
96
88
97
class BaseOrchestrator (StackComponent , ABC ):
89
98
"""Base class for all orchestrators.
@@ -205,6 +214,7 @@ def run(
205
214
206
215
if (
207
216
placeholder_run
217
+ and self .config .supports_client_side_caching
208
218
and not deployment .schedule
209
219
and not prevent_client_side_caching
210
220
):
Original file line number Diff line number Diff line change @@ -60,15 +60,9 @@ def _raise_specific_cloud_exception_if_needed(
60
60
orchestrators : List [ResourcesInfo ],
61
61
container_registries : List [ResourcesInfo ],
62
62
) -> None :
63
- AWS_DOCS = (
64
- "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/aws-service-connector"
65
- )
66
- GCP_DOCS = (
67
- "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/gcp-service-connector"
68
- )
69
- AZURE_DOCS = (
70
- "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/azure-service-connector"
71
- )
63
+ AWS_DOCS = "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/aws-service-connector"
64
+ GCP_DOCS = "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/gcp-service-connector"
65
+ AZURE_DOCS = "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/azure-service-connector"
72
66
73
67
if not artifact_stores :
74
68
error_msg = (
You can’t perform that action at this time.
0 commit comments