Skip to content

Commit b3a715c

Browse files
arkaprava08Arkaprava De
andauthored
(bug fix): Skipping sagemaker extension activation for non sagemaker environments (#212)
Co-authored-by: Arkaprava De <arkaprav@amazon.com>
1 parent b660ea9 commit b3a715c

File tree

5 files changed

+31
-11
lines changed

5 files changed

+31
-11
lines changed

patched-vscode/extensions/sagemaker-extension/src/extension.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,13 @@ function renderExtensionAutoUpgradeDisabledNotification() {
164164

165165
export function activate(context: vscode.ExtensionContext) {
166166

167+
// this extension will only activate within a sagemaker app
168+
const isSageMakerApp = !!process.env?.SAGEMAKER_APP_TYPE_LOWERCASE;
169+
if (!isSageMakerApp) {
170+
console.log('Skipping activation of Sagemaker Extension...');
171+
return;
172+
}
173+
167174
// TODO: log activation of extension
168175
console.log('Activating Sagemaker Extension...');
169176

patched-vscode/extensions/sagemaker-extensions-sync/src/constants.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// constants
2-
export const PERSISTENT_VOLUME_EXTENSIONS_DIR = "/home/sagemaker-user/sagemaker-code-editor-server-data/extensions";
3-
export const IMAGE_EXTENSIONS_DIR = "/opt/amazon/sagemaker/sagemaker-code-editor-server-data/extensions";
2+
export const PERSISTENT_VOLUME_EXTENSIONS_DIR = process.env.PERSISTENT_VOLUME_EXTENSIONS_DIR || "/home/sagemaker-user/sagemaker-code-editor-server-data/extensions";
3+
export const IMAGE_EXTENSIONS_DIR = process.env.IMAGE_EXTENSIONS_DIR || "/opt/amazon/sagemaker/sagemaker-code-editor-server-data/extensions";
44
export const LOG_PREFIX = "[sagemaker-extensions-sync]";
55

66
export class ExtensionInfo {

patched-vscode/extensions/sagemaker-extensions-sync/src/extension.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,12 @@ export async function activate() {
1919
// this extension will only activate within a sagemaker app
2020
const isSageMakerApp = !!process.env?.SAGEMAKER_APP_TYPE_LOWERCASE;
2121
if (!isSageMakerApp) {
22+
console.log('Skipping activation of Sagemaker Extension Sync...');
2223
return;
2324
}
2425

26+
console.log('Activating Sagemaker Extension Sync...');
27+
2528
// get installed extensions. this could be different from pvExtensions b/c vscode sometimes doesn't delete the assets
2629
// for an old extension when uninstalling or changing versions
2730
const installedExtensions = new Set(await getInstalledExtensions());

patches/sagemaker-extension.diff

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Index: sagemaker-code-editor/vscode/extensions/sagemaker-extension/src/extension
22
===================================================================
33
--- /dev/null
44
+++ sagemaker-code-editor/vscode/extensions/sagemaker-extension/src/extension.ts
5-
@@ -0,0 +1,172 @@
5+
@@ -0,0 +1,179 @@
66
+import * as vscode from 'vscode';
77
+import * as fs from 'fs';
88
+import { SessionWarning } from "./sessionWarning";
@@ -160,6 +160,13 @@ Index: sagemaker-code-editor/vscode/extensions/sagemaker-extension/src/extension
160160
+
161161
+export function activate(context: vscode.ExtensionContext) {
162162
+
163+
+ // this extension will only activate within a sagemaker app
164+
+ const isSageMakerApp = !!process.env?.SAGEMAKER_APP_TYPE_LOWERCASE;
165+
+ if (!isSageMakerApp) {
166+
+ console.log('Skipping activation of Sagemaker Extension...');
167+
+ return;
168+
+ }
169+
+
163170
+ // TODO: log activation of extension
164171
+ console.log('Activating Sagemaker Extension...');
165172
+
@@ -303,14 +310,14 @@ Index: sagemaker-code-editor/vscode/build/gulpfile.extensions.js
303310
===================================================================
304311
--- sagemaker-code-editor.orig/vscode/build/gulpfile.extensions.js
305312
+++ sagemaker-code-editor/vscode/build/gulpfile.extensions.js
306-
@@ -63,6 +63,7 @@ const compilations = [
307-
'extensions/references-view/tsconfig.json',
308-
'extensions/search-result/tsconfig.json',
309-
'extensions/simple-browser/tsconfig.json',
313+
@@ -60,6 +60,7 @@ const compilations = [
314+
'extensions/references-view/tsconfig.json',
315+
'extensions/search-result/tsconfig.json',
316+
'extensions/simple-browser/tsconfig.json',
310317
+ 'extensions/sagemaker-extension/tsconfig.json',
311-
'extensions/tunnel-forwarding/tsconfig.json',
312-
'extensions/typescript-language-features/test-workspace/tsconfig.json',
313-
'extensions/typescript-language-features/web/tsconfig.json',
318+
'extensions/tunnel-forwarding/tsconfig.json',
319+
'extensions/typescript-language-features/test-workspace/tsconfig.json',
320+
'extensions/typescript-language-features/web/tsconfig.json',
314321
Index: sagemaker-code-editor/vscode/extensions/sagemaker-extension/README.md
315322
===================================================================
316323
--- /dev/null

patches/sagemaker-extensions-sync.patch

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ Index: sagemaker-code-editor/vscode/extensions/sagemaker-extensions-sync/src/ext
180180
===================================================================
181181
--- /dev/null
182182
+++ sagemaker-code-editor/vscode/extensions/sagemaker-extensions-sync/src/extension.ts
183-
@@ -0,0 +1,100 @@
183+
@@ -0,0 +1,103 @@
184184
+import * as process from "process";
185185
+import * as vscode from 'vscode';
186186
+
@@ -202,9 +202,12 @@ Index: sagemaker-code-editor/vscode/extensions/sagemaker-extensions-sync/src/ext
202202
+ // this extension will only activate within a sagemaker app
203203
+ const isSageMakerApp = !!process.env?.SAGEMAKER_APP_TYPE_LOWERCASE;
204204
+ if (!isSageMakerApp) {
205+
+ console.log('Skipping activation of Sagemaker Extension Sync...');
205206
+ return;
206207
+ }
207208
+
209+
+ console.log('Activating Sagemaker Extension Sync...');
210+
+
208211
+ // get installed extensions. this could be different from pvExtensions b/c vscode sometimes doesn't delete the assets
209212
+ // for an old extension when uninstalling or changing versions
210213
+ const installedExtensions = new Set(await getInstalledExtensions());

0 commit comments

Comments
 (0)