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:
134134 """
135135 return True
136136
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+
137148
138149class KubernetesOrchestratorFlavor (BaseOrchestratorFlavor ):
139150 """Kubernetes orchestrator flavor."""
Original file line number Diff line number Diff line change @@ -94,6 +94,17 @@ def is_schedulable(self) -> bool:
9494 """
9595 return False
9696
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+
97108
98109class LightningOrchestratorFlavor (BaseOrchestratorFlavor ):
99110 """Lightning orchestrator flavor."""
Original file line number Diff line number Diff line change @@ -144,3 +144,15 @@ def is_local(self) -> bool:
144144 True if this config is for a local component, False otherwise.
145145 """
146146 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:
8484 """
8585 return False
8686
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+
8796
8897class BaseOrchestrator (StackComponent , ABC ):
8998 """Base class for all orchestrators.
@@ -205,6 +214,7 @@ def run(
205214
206215 if (
207216 placeholder_run
217+ and self .config .supports_client_side_caching
208218 and not deployment .schedule
209219 and not prevent_client_side_caching
210220 ):
Original file line number Diff line number Diff line change @@ -60,15 +60,9 @@ def _raise_specific_cloud_exception_if_needed(
6060 orchestrators : List [ResourcesInfo ],
6161 container_registries : List [ResourcesInfo ],
6262) -> 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"
7266
7367 if not artifact_stores :
7468 error_msg = (
You can’t perform that action at this time.
0 commit comments