File tree Expand file tree Collapse file tree 2 files changed +25
-4
lines changed
Expand file tree Collapse file tree 2 files changed +25
-4
lines changed Original file line number Diff line number Diff line change @@ -16,9 +16,30 @@ const localize = nls.loadMessageBundle()
1616
1717export async function openHyperPodRemoteConnection ( node : SagemakerDevSpaceNode ) : Promise < void > {
1818 await startHyperpodSpaceCommand ( node )
19+ await waitForDevSpaceRunning ( node )
1920 await connectToHyperPodDevSpace ( node )
2021}
2122
23+ async function waitForDevSpaceRunning ( node : SagemakerDevSpaceNode ) : Promise < void > {
24+ const kubectlClient = node . getParent ( ) . getKubectlClient ( node . hpCluster . clusterName )
25+ if ( ! kubectlClient ) {
26+ getLogger ( ) . error ( `No kubectlClient available for cluster: ${ node . hpCluster . clusterName } ` )
27+ return
28+ }
29+ const timeout = 5 * 60 * 1000 // 5 minutes
30+ const startTime = Date . now ( )
31+
32+ while ( Date . now ( ) - startTime < timeout ) {
33+ const status = await kubectlClient . getHyperpodSpaceStatus ( node . devSpace )
34+ if ( status === 'Running' ) {
35+ return
36+ }
37+ await new Promise ( ( resolve ) => setTimeout ( resolve , 5000 ) )
38+ }
39+
40+ throw new Error ( 'Timeout waiting for dev space to reach Running status' )
41+ }
42+
2243export async function connectToHyperPodDevSpace ( node : SagemakerDevSpaceNode ) : Promise < void > {
2344 const logger = getLogger ( )
2445
Original file line number Diff line number Diff line change @@ -73,13 +73,13 @@ export class KubectlClient {
7373 void vscode . window . showErrorMessage (
7474 `You do not have permission to view ${ eksCluster . name } or its spaces. Please contact your administrator.`
7575 )
76- throw new Error (
77- `Error : User has insufficient permissions to view EKS cluster (${ eksCluster . name } ) or its spaces.`
76+ getLogger ( ) . warn (
77+ `[Warning] : User has insufficient permissions to view EKS cluster (${ eksCluster . name } ) or its spaces.`
7878 )
7979 }
8080
81- getLogger ( ) . error (
82- `Error : Unavailable spaces for EKS Cluster (${ eksCluster . name } ): ${ error } \nStack trace: ${ ( error as Error ) . stack } `
81+ getLogger ( ) . warn (
82+ `[Warning] : Unavailable spaces for EKS Cluster (${ eksCluster . name } ): ${ error } \nStack trace: ${ ( error as Error ) . stack } `
8383 )
8484 }
8585 return [ ]
You can’t perform that action at this time.
0 commit comments