@eclipse-che/che-e2e 7.94.0-next-3074f2b → 7.94.0-next-8cb40db
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.
- package/configs/inversify.config.ts +2 -2
- package/dist/configs/inversify.config.js +2 -2
- package/dist/configs/inversify.config.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +1 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js +2 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +1 -1
- package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js.map +1 -1
- package/dist/specs/api/PhpDevFileAPI.spec.js +69 -0
- package/dist/specs/api/PhpDevFileAPI.spec.js.map +1 -0
- package/dist/utils/DevWorkspaceConfigurationHelper.js.map +1 -1
- package/dist/utils/{DevfilesRegistryHelper.js → DevfilesHelper.js} +63 -9
- package/dist/utils/DevfilesHelper.js.map +1 -0
- package/index.ts +1 -1
- package/package.json +1 -1
- package/specs/api/DevfileAcceptanceTestAPI.spec.ts +2 -2
- package/specs/api/EmptyWorkspaceAPI.spec.ts +2 -1
- package/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.ts +2 -2
- package/specs/api/PhpDevFileAPI.spec.ts +76 -0
- package/utils/DevWorkspaceConfigurationHelper.ts +2 -0
- package/utils/{DevfilesRegistryHelper.ts → DevfilesHelper.ts} +77 -6
- package/dist/utils/DevfilesRegistryHelper.js.map +0 -1
|
@@ -47,7 +47,7 @@ import { BASE_TEST_CONSTANTS, Platform } from '../constants/BASE_TEST_CONSTANTS'
|
|
|
47
47
|
import { CheCodeLocatorLoader } from '../pageobjects/ide/CheCodeLocatorLoader';
|
|
48
48
|
import { LocatorLoader } from 'monaco-page-objects/out/locators/loader';
|
|
49
49
|
import { OauthPage } from '../pageobjects/git-providers/OauthPage';
|
|
50
|
-
import {
|
|
50
|
+
import { DevfilesHelper } from '../utils/DevfilesHelper';
|
|
51
51
|
import { Main as Generator } from '@eclipse-che/che-devworkspace-generator/lib/main';
|
|
52
52
|
import { ContainerTerminal, KubernetesCommandLineToolsExecutor } from '../utils/KubernetesCommandLineToolsExecutor';
|
|
53
53
|
import { ShellExecutor } from '../utils/ShellExecutor';
|
|
@@ -84,7 +84,7 @@ e2eContainer.bind<StringUtil>(CLASSES.StringUtil).to(StringUtil);
|
|
|
84
84
|
e2eContainer.bind<ApiUrlResolver>(CLASSES.ApiUrlResolver).to(ApiUrlResolver);
|
|
85
85
|
e2eContainer.bind<WorkspaceHandlingTests>(CLASSES.WorkspaceHandlingTests).to(WorkspaceHandlingTests);
|
|
86
86
|
e2eContainer.bind<RedHatLoginPage>(CLASSES.RedHatLoginPage).to(RedHatLoginPage);
|
|
87
|
-
e2eContainer.bind<
|
|
87
|
+
e2eContainer.bind<DevfilesHelper>(CLASSES.DevfilesRegistryHelper).to(DevfilesHelper);
|
|
88
88
|
e2eContainer.bind<KubernetesCommandLineToolsExecutor>(CLASSES.KubernetesCommandLineToolsExecutor).to(KubernetesCommandLineToolsExecutor);
|
|
89
89
|
e2eContainer.bind<ShellExecutor>(CLASSES.ShellExecutor).to(ShellExecutor);
|
|
90
90
|
e2eContainer.bind<ContainerTerminal>(CLASSES.ContainerTerminal).to(ContainerTerminal);
|
|
@@ -44,7 +44,7 @@ const BASE_TEST_CONSTANTS_1 = require("../constants/BASE_TEST_CONSTANTS");
|
|
|
44
44
|
const CheCodeLocatorLoader_1 = require("../pageobjects/ide/CheCodeLocatorLoader");
|
|
45
45
|
const loader_1 = require("monaco-page-objects/out/locators/loader");
|
|
46
46
|
const OauthPage_1 = require("../pageobjects/git-providers/OauthPage");
|
|
47
|
-
const
|
|
47
|
+
const DevfilesHelper_1 = require("../utils/DevfilesHelper");
|
|
48
48
|
const main_1 = require("@eclipse-che/che-devworkspace-generator/lib/main");
|
|
49
49
|
const KubernetesCommandLineToolsExecutor_1 = require("../utils/KubernetesCommandLineToolsExecutor");
|
|
50
50
|
const ShellExecutor_1 = require("../utils/ShellExecutor");
|
|
@@ -80,7 +80,7 @@ e2eContainer.bind(inversify_types_1.CLASSES.StringUtil).to(StringUtil_1.StringUt
|
|
|
80
80
|
e2eContainer.bind(inversify_types_1.CLASSES.ApiUrlResolver).to(ApiUrlResolver_1.ApiUrlResolver);
|
|
81
81
|
e2eContainer.bind(inversify_types_1.CLASSES.WorkspaceHandlingTests).to(WorkspaceHandlingTests_1.WorkspaceHandlingTests);
|
|
82
82
|
e2eContainer.bind(inversify_types_1.CLASSES.RedHatLoginPage).to(RedHatLoginPage_1.RedHatLoginPage);
|
|
83
|
-
e2eContainer.bind(inversify_types_1.CLASSES.DevfilesRegistryHelper).to(
|
|
83
|
+
e2eContainer.bind(inversify_types_1.CLASSES.DevfilesRegistryHelper).to(DevfilesHelper_1.DevfilesHelper);
|
|
84
84
|
e2eContainer.bind(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor).to(KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor);
|
|
85
85
|
e2eContainer.bind(inversify_types_1.CLASSES.ShellExecutor).to(ShellExecutor_1.ShellExecutor);
|
|
86
86
|
e2eContainer.bind(inversify_types_1.CLASSES.ContainerTerminal).to(KubernetesCommandLineToolsExecutor_1.ContainerTerminal);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inversify.config.js","sourceRoot":"","sources":["../../configs/inversify.config.ts"],"names":[],"mappings":";AAAA;;;;;;;;wEAQwE;;;AAExE,4BAA0B;AAC1B,yCAAsC;AAEtC,yDAAsD;AACtD,uDAAqE;AACrE,4EAAyE;AAEzE,sFAAmF;AAEnF,0GAAuG;AACvG,wDAAqD;AACrD,kEAA+D;AAC/D,oEAAiE;AACjE,kGAA+F;AAC/F,0DAAuD;AACvD,8EAA2E;AAE3E,qIAAkI;AAClI,yFAAsF;AACtF,8EAA2E;AAC3E,8DAA2D;AAC3D,oFAAiF;AACjF,sEAAmE;AAEnE,8EAA2E;AAC3E,4DAAyD;AACzD,oFAAiF;AACjF,0FAAuF;AACvF,sEAAmE;AACnE,wFAAqF;AACrF,oFAAiF;AACjF,oDAAiD;AACjD,6FAA0F;AAC1F,+EAA4E;AAC5E,kEAA+D;AAC/D,0EAAiF;AACjF,kFAA+E;AAC/E,oEAAwE;AACxE,sEAAmE;AACnE,
|
|
1
|
+
{"version":3,"file":"inversify.config.js","sourceRoot":"","sources":["../../configs/inversify.config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -35,7 +35,7 @@ __exportStar(require("./driver/ChromeDriver"), exports);
|
|
|
35
35
|
__exportStar(require("./driver/IDriver"), exports);
|
|
36
36
|
__exportStar(require("./utils/BrowserTabsUtil"), exports);
|
|
37
37
|
__exportStar(require("./utils/DevWorkspaceConfigurationHelper"), exports);
|
|
38
|
-
__exportStar(require("./utils/
|
|
38
|
+
__exportStar(require("./utils/DevfilesHelper"), exports);
|
|
39
39
|
__exportStar(require("./utils/DriverHelper"), exports);
|
|
40
40
|
__exportStar(require("./utils/IContextParams"), exports);
|
|
41
41
|
__exportStar(require("./utils/IKubernetesCommandLineToolsExecutor"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAA8D;AACrD,0CAAe;AACxB,4DAA0C;AAC1C,oDAAkC;AAClC,wDAAsC;AACtC,mDAAiC;AACjC,0DAAwC;AACxC,0EAAwD;AACxD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAA8D;AACrD,0CAAe;AACxB,4DAA0C;AAC1C,oDAAkC;AAClC,wDAAsC;AACtC,mDAAiC;AACjC,0DAAwC;AACxC,0EAAwD;AACxD,yDAAuC;AACvC,uDAAqC;AACrC,yDAAuC;AACvC,8EAA4D;AAC5D,6EAA2D;AAC3D,iDAA+B;AAC/B,wDAAsC;AACtC,wDAAsC;AACtC,qDAAmC;AACnC,gFAA8D;AAC9D,0GAAwF;AACxF,+FAA6E;AAC7E,mEAAiD;AACjD,uEAAqD;AACrD,sEAAoD;AACpD,oEAAkD;AAClD,0EAAwD;AACxD,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,qEAAmD;AACnD,6FAA2E;AAC3E,wEAAsD;AACtD,yEAAuD;AACvD,2EAAyD;AACzD,+EAA6D;AAC7D,+EAA6D;AAC7D,8EAA4D;AAC5D,qFAAmE;AACnE,6EAA2D;AAC3D,mFAAiE;AACjE,iFAA+D;AAC/D,gFAA8D;AAC9D,2FAAyE;AACzE,6EAA2D;AAC3D,+EAA6D;AAC7D,sEAAoD;AACpD,4EAA0D;AAC1D,6DAA2C;AAC3C,sEAAoD;AACpD,yEAAuD;AACvD,iEAA+C;AAC/C,kEAAgD;AAChD,sEAAoD;AACpD,qEAAmD;AACnD,8DAA4C;AAC5C,+DAA6C;AAC7C,8DAA4C;AAC5C,oEAAkD;AAClD,iEAA+C;AAC/C,gEAA8C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevfileAcceptanceTestAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/DevfileAcceptanceTestAPI.spec.ts"],"names":[],"mappings":";;AAUA,iGAA8F;AAE9F,+BAA8B;AAE9B,uDAAoD;AACpD,+CAA4C;AAC5C,qEAA8D;AAC9D,mEAAwD;AAExD,qEAAkE;AAClE,2EAAwE;AACxE,6EAA0E;AAE1E;;;GAGG;AACH,KAAK,CAAC,KAAK;IACV,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"DevfileAcceptanceTestAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/DevfileAcceptanceTestAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,8 +21,9 @@ suite('Empty workspace API test', function () {
|
|
|
21
21
|
suiteSetup(`Create empty workspace with OC client ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, async function () {
|
|
22
22
|
const workspaceName = 'empty-' + Math.floor(Math.random() * 1000);
|
|
23
23
|
const devfileContent = 'schemaVersion: 2.2.0\n' + 'metadata:\n' + ` name: ${workspaceName}\n`;
|
|
24
|
+
const editorContent = '';
|
|
24
25
|
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
25
|
-
devfileContent
|
|
26
|
+
devfileContent, editorContent
|
|
26
27
|
});
|
|
27
28
|
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
28
29
|
devWorkspaceName = devfileContext?.devWorkspace?.metadata?.name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmptyWorkspaceAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/EmptyWorkspaceAPI.spec.ts"],"names":[],"mappings":";;AAUA,+BAA8B;AAE9B,uDAAoD;AACpD,iGAA8F;AAE9F,2EAAwE;AACxE,6EAA0E;AAC1E,qEAA8D;AAC9D,mEAAwD;AAExD,KAAK,CAAC,0BAA0B,EAAE;IACjC,2BAA2B;IAC3B,MAAM,SAAS,GAAuB,uCAAkB,CAAC,qBAAqB,CAAC;IAC/E,IAAI,iBAAyB,CAAC;IAC9B,IAAI,gBAAwB,CAAC;IAC7B,IAAI,+BAAgE,CAAC;IACrE,IAAI,kCAAsE,CAAC;IAC3E,IAAI,cAA8B,CAAC;IACnC,IAAI,gBAAoC,CAAC;IACzC,IAAI,iBAAoC,CAAC;IAEzC,MAAM,aAAa,GAAW,6CAA6C,CAAC;IAE5E,UAAU,CAAC,yCAAyC,yCAAmB,CAAC,gBAAgB,EAAE,EAAE,KAAK;QAChG,MAAM,aAAa,GAAW,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1E,MAAM,cAAc,GAAW,wBAAwB,GAAG,aAAa,GAAG,WAAW,aAAa,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"EmptyWorkspaceAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/EmptyWorkspaceAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InbuiltApplicationDevWorkspacesAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/InbuiltApplicationDevWorkspacesAPI.spec.ts"],"names":[],"mappings":";;AAUA,iGAA8F;AAE9F,+BAA8B;AAC9B,uDAAoD;AAEpD,+CAA4C;AAC5C,qEAA8D;AAC9D,mEAAwD;AACxD,6EAA0E;AAC1E,yEAAsE;AACtE,2EAAwE;AACxE,qEAAkE;AAElE;;;GAGG;AAEH,KAAK,CAAC,KAAK;IACV,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"InbuiltApplicationDevWorkspacesAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/InbuiltApplicationDevWorkspacesAPI.spec.ts"],"names":[],"mappings":";;AAUA,iGAA8F;AAE9F,+BAA8B;AAC9B,uDAAoD;AAEpD,+CAA4C;AAC5C,qEAA8D;AAC9D,mEAAwD;AACxD,6EAA0E;AAC1E,yEAAsE;AACtE,2EAAwE;AACxE,qEAAkE;AAElE;;;GAGG;AAEH,KAAK,CAAC,KAAK;IACV,MAAM,sBAAsB,GAAmB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;IAChG,IAAI,cAAmB,CAAC;IACxB,IAAI,iCAAe,CAAC,mBAAmB,EAAE;QACxC,cAAc,GAAG,MAAM,sBAAsB,CAAC,kCAAkC,CAC/E,IAAI,EACJ,uCAAkB,CAAC,8BAA8B,EAAE,KAAK,CAAC,GAAG,CAAC,CAC7D,CAAC;KACF;IAED,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE;QAC3C,KAAK,CACJ,yCAAyC,aAAa,CAAC,IAAI,YAAY,yCAAmB,CAAC,gBAAgB,EAAE,EAC7G;YACC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjB,IAAI,+BAAgE,CAAC;YACrE,IAAI,kCAAsE,CAAC;YAC3E,IAAI,iBAAoC,CAAC;YACzC,IAAI,kBAAuB,CAAC;YAC5B,IAAI,gBAAoC,CAAC;YACzC,IAAI,iBAAyB,CAAC;YAC9B,IAAI,gBAAwB,CAAC;YAC7B,MAAM,qBAAqB,GAAU,EAAE,CAAC;YAExC,IAAI,CAAC,gCAAgC,EAAE;gBACtC,+BAA+B,GAAG,IAAI,iEAA+B,CAAC,EAAE,CAAC,CAAC;gBAC1E,kBAAkB,GAAG,+BAA+B,CAAC,mCAAmC,CACvF,aAAa,CAAC,+BAA+B,CAC7C,CAAC;gBACF,gBAAgB,GAAG,kBAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACjE,kCAAkC,GAAG,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,kCAAkC,CAAC,CAAC;gBAClG,kCAAkC,CAAC,aAAa,GAAG,gBAAgB,CAAC;gBACpE,iBAAiB,GAAG,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,iBAAiB,CAAC,CAAC;gBAChE,kCAAkC,CAAC,UAAU,EAAE,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,yCAAyC,EAAE;gBAC/C,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE;oBACzE,eAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;iBACvD;qBAAM;oBACN,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAY,EAAQ,EAAE;wBACrF,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,OAAO,EAAE;4BAC1C,eAAM,CAAC,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;4BACjE,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBACpC;oBACF,CAAC,CAAC,CAAC;iBACH;YACF,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,8BAA8B,EAAE;gBACpC,MAAM,MAAM,GAAgB,kCAAkC,CAAC,oCAAoC,CAClG,aAAa,CAAC,+BAA+B,CAC7C,CAAC;gBACF,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC;qBACnB,QAAQ,CAAC,sBAAsB,CAAC;qBAChC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;qBAC5B,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,4CAA4C,EAAE;gBAClD,IAAI,CAAC,OAAO,CAAC,qCAAiB,CAAC,mCAAmC,CAAC,CAAC;gBACpE,IAAA,aAAM,EAAC,kCAAkC,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;YAChG,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,8BAA8B,EAAE;gBACpC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACnF,IAAA,aAAM,EAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,qCAAqC,EAAE;gBAC3C,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpE,IAAA,aAAM,EAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,gBAAgB,IAAI,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAC1G,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,yCAAyC,EAAE;gBAC/C,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,+DAA+D;gBAC5F,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE;oBACvC,eAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;iBACzD;qBAAM;oBACN,qBAAqB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAQ,EAAE;wBAC/C,eAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAE7D,MAAM,aAAa,GAAW,uBAAU,CAAC,0BAA0B,CAClE,MAAM,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAC9D,CAAC;wBACF,eAAM,CAAC,IAAI,CAAC,sCAAsC,aAAa,EAAE,CAAC,CAAC;wBAEnE,MAAM,MAAM,GAAgB,iBAAiB,CAAC,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC5G,IAAA,aAAM,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC7B,CAAC,CAAC,CAAC;iBACH;YACF,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,qBAAqB,EAAE;gBAC3B,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;YACzD,CAAC,CAAC,CAAC;QACJ,CAAC,CACD,CAAC;KACF;IAED,GAAG,EAAE,CAAC;AACP,CAAC,CAAC,EAAE,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
/** *******************************************************************
|
|
7
|
+
* copyright (c) 2023 Red Hat, Inc.
|
|
8
|
+
*
|
|
9
|
+
* This program and the accompanying materials are made
|
|
10
|
+
* available under the terms of the Eclipse Public License 2.0
|
|
11
|
+
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
12
|
+
*
|
|
13
|
+
* SPDX-License-Identifier: EPL-2.0
|
|
14
|
+
**********************************************************************/
|
|
15
|
+
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
16
|
+
const inversify_config_1 = require("../../configs/inversify.config");
|
|
17
|
+
const inversify_types_1 = require("../../configs/inversify.types");
|
|
18
|
+
const DevWorkspaceConfigurationHelper_1 = require("../../utils/DevWorkspaceConfigurationHelper");
|
|
19
|
+
const chai_1 = require("chai");
|
|
20
|
+
const API_TEST_CONSTANTS_1 = require("../../constants/API_TEST_CONSTANTS");
|
|
21
|
+
const yaml_1 = __importDefault(require("yaml"));
|
|
22
|
+
const Logger_1 = require("../../utils/Logger");
|
|
23
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
24
|
+
suite('PHP devfile API test', function () {
|
|
25
|
+
const devfilesRegistryHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DevfilesRegistryHelper);
|
|
26
|
+
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
27
|
+
const devfileID = 'php';
|
|
28
|
+
const containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
|
|
29
|
+
let devWorkspaceConfigurationHelper;
|
|
30
|
+
let devfileContext;
|
|
31
|
+
let devfileContent = '';
|
|
32
|
+
suiteSetup(`Prepare login ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
33
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
34
|
+
});
|
|
35
|
+
test(`Create ${devfileID} workspace`, async function () {
|
|
36
|
+
const randomPref = crypto_1.default.randomBytes(4).toString('hex');
|
|
37
|
+
kubernetesCommandLineToolsExecutor.namespace = API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_NAMESPACE || 'admin-devspaces';
|
|
38
|
+
devfileContent = devfilesRegistryHelper.getDevfileContent(devfileID);
|
|
39
|
+
const editorDevfileContent = devfilesRegistryHelper.obtainCheDevFileEditorFromCheConfigMap('editors-definitions');
|
|
40
|
+
const uniqName = yaml_1.default.parse(devfileContent).metadata.name + randomPref;
|
|
41
|
+
kubernetesCommandLineToolsExecutor.workspaceName = uniqName;
|
|
42
|
+
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
43
|
+
editorContent: editorDevfileContent,
|
|
44
|
+
devfileContent: devfileContent
|
|
45
|
+
});
|
|
46
|
+
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
47
|
+
if (devfileContext.devWorkspace.metadata) {
|
|
48
|
+
devfileContext.devWorkspace.metadata.name = uniqName;
|
|
49
|
+
}
|
|
50
|
+
const devWorkspaceConfigurationYamlString = devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
51
|
+
const output = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
52
|
+
(0, chai_1.expect)(output.stdout).contains('condition met');
|
|
53
|
+
});
|
|
54
|
+
test('Check running application', function () {
|
|
55
|
+
const workdir = yaml_1.default.parse(devfileContent).commands[0].exec.workingDir;
|
|
56
|
+
const commandLine = yaml_1.default.parse(devfileContent).commands[0].exec.commandLine;
|
|
57
|
+
const containerName = yaml_1.default.parse(devfileContent).commands[0].exec.component;
|
|
58
|
+
Logger_1.Logger.info(`workdir from exec section of DevWorkspace file: ${workdir}`);
|
|
59
|
+
Logger_1.Logger.info(`commandLine from exec section of DevWorkspace file: ${commandLine}`);
|
|
60
|
+
const runCommandInBash = `cd ${workdir} && ${commandLine}`;
|
|
61
|
+
const output = containerTerminal.execInContainerCommand(runCommandInBash, containerName);
|
|
62
|
+
(0, chai_1.expect)(output.code).eqls(0);
|
|
63
|
+
(0, chai_1.expect)(output.stdout.trim()).contains('Hello, world!');
|
|
64
|
+
});
|
|
65
|
+
suiteTeardown('Delete workspace', function () {
|
|
66
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=PhpDevFileAPI.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PhpDevFileAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/PhpDevFileAPI.spec.ts"],"names":[],"mappings":";;;;;AAAA;;;;;;;;wEAQwE;AACxE,6EAA0E;AAC1E,qEAA8D;AAC9D,mEAAwD;AAGxD,iGAA8F;AAG9F,+BAA8B;AAC9B,2EAAwE;AACxE,gDAAwB;AACxB,+CAA4C;AAC5C,oDAA4B;AAE5B,KAAK,CAAC,sBAAsB,EAAE;IAC7B,MAAM,sBAAsB,GAAmB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,sBAAsB,CAAC,CAAC;IAChG,MAAM,kCAAkC,GAAuC,+BAAY,CAAC,GAAG,CAC9F,yBAAO,CAAC,kCAAkC,CAC1C,CAAC;IACF,MAAM,SAAS,GAAW,KAAK,CAAC;IAChC,MAAM,iBAAiB,GAAsB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,iBAAiB,CAAC,CAAC;IACzF,IAAI,+BAAgE,CAAC;IACrE,IAAI,cAA8B,CAAC;IACnC,IAAI,cAAc,GAAW,EAAE,CAAC;IAEhC,UAAU,CAAC,iBAAiB,yCAAmB,CAAC,gBAAgB,EAAE,EAAE;QACnE,kCAAkC,CAAC,UAAU,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW,SAAS,YAAY,EAAE,KAAK;QAC3C,MAAM,UAAU,GAAW,gBAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjE,kCAAkC,CAAC,SAAS,GAAG,uCAAkB,CAAC,qBAAqB,IAAI,iBAAiB,CAAC;QAC7G,cAAc,GAAG,sBAAsB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACrE,MAAM,oBAAoB,GAAW,sBAAsB,CAAC,sCAAsC,CAAC,qBAAqB,CAAC,CAAC;QAC1H,MAAM,QAAQ,GAAW,cAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAC;QAC/E,kCAAkC,CAAC,aAAa,GAAG,QAAQ,CAAC;QAE5D,+BAA+B,GAAG,IAAI,iEAA+B,CAAC;YACrE,aAAa,EAAE,oBAAoB;YACnC,cAAc,EAAE,cAAc;SAC9B,CAAC,CAAC;QACH,cAAc,GAAG,MAAM,+BAA+B,CAAC,sBAAsB,EAAE,CAAC;QAChF,IAAI,cAAc,CAAC,YAAY,CAAC,QAAQ,EAAE;YACzC,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC;SACrD;QACD,MAAM,mCAAmC,GACxC,+BAA+B,CAAC,wCAAwC,CAAC,cAAc,CAAC,CAAC;QAC1F,MAAM,MAAM,GAAgB,kCAAkC,CAAC,wBAAwB,CAAC,mCAAmC,CAAC,CAAC;QAC7H,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2BAA2B,EAAE;QACjC,MAAM,OAAO,GAAW,cAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QAC/E,MAAM,WAAW,GAAW,cAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;QACpF,MAAM,aAAa,GAAW,cAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QACpF,eAAM,CAAC,IAAI,CAAC,mDAAmD,OAAO,EAAE,CAAC,CAAC;QAC1E,eAAM,CAAC,IAAI,CAAC,uDAAuD,WAAW,EAAE,CAAC,CAAC;QAClF,MAAM,gBAAgB,GAAW,MAAM,OAAO,OAAO,WAAW,EAAE,CAAC;QACnE,MAAM,MAAM,GAAgB,iBAAiB,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;QACtG,IAAA,aAAM,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,kBAAkB,EAAE;QACjC,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevWorkspaceConfigurationHelper.js","sourceRoot":"","sources":["../../utils/DevWorkspaceConfigurationHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;wEAQwE;AACxE,2EAAqF;AAGrF,gDAAwB;AACxB,6CAA+B;AAC/B,qCAAkC;AAClC,mDAAgD;AAChD,wEAAqE;AACrE,yCAAuC;AAEvC,kEAA2D;AAC3D,gEAAuE;AACvE,8FAAwD;
|
|
1
|
+
{"version":3,"file":"DevWorkspaceConfigurationHelper.js","sourceRoot":"","sources":["../../utils/DevWorkspaceConfigurationHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
9
9
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.DevfilesHelper = void 0;
|
|
13
13
|
/** *******************************************************************
|
|
14
14
|
* copyright (c) 2023 Red Hat, Inc.
|
|
15
15
|
*
|
|
@@ -25,7 +25,55 @@ const yaml_1 = __importDefault(require("yaml"));
|
|
|
25
25
|
const API_TEST_CONSTANTS_1 = require("../constants/API_TEST_CONSTANTS");
|
|
26
26
|
const inversify_1 = require("inversify");
|
|
27
27
|
const BASE_TEST_CONSTANTS_1 = require("../constants/BASE_TEST_CONSTANTS");
|
|
28
|
-
|
|
28
|
+
const inversify_config_1 = require("../configs/inversify.config");
|
|
29
|
+
const inversify_types_1 = require("../configs/inversify.types");
|
|
30
|
+
let DevfilesHelper = class DevfilesHelper {
|
|
31
|
+
getInternalClusterURLToDevFile(devFileName) {
|
|
32
|
+
const devfileSampleURIPrefix = `/dashboard/api/airgap-sample/devfile/download?id=${devFileName}`;
|
|
33
|
+
let serviceClusterIp = '';
|
|
34
|
+
let servicePort = '';
|
|
35
|
+
serviceClusterIp = this.getShellExecutor().executeArbitraryShellScript(`oc get svc devspaces-dashboard -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -o=jsonpath='{.spec.clusterIP}'`);
|
|
36
|
+
servicePort = this.getShellExecutor().executeArbitraryShellScript(`oc get svc devspaces-dashboard -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -o=jsonpath='{.spec.ports[*].port}'`);
|
|
37
|
+
return `http://${serviceClusterIp}:${servicePort}${devfileSampleURIPrefix}`;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* grab devfile content from the Dashboard pod (currently, in the image of dashboard builds with devfile content and we use it for getting devfile description)
|
|
41
|
+
* @param podName
|
|
42
|
+
* @param containerName
|
|
43
|
+
* @param devFileName
|
|
44
|
+
*/
|
|
45
|
+
obtainDevFileContentUsingPod(podName, containerName, devFileName) {
|
|
46
|
+
const clusterURL = this.getInternalClusterURLToDevFile(devFileName);
|
|
47
|
+
this.getShellExecutor().executeCommand(`oc exec -i ${podName} -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -c ${containerName} -- sh -c 'curl -o /tmp/${devFileName}-devfile.yaml ${clusterURL}'`);
|
|
48
|
+
return this.getShellExecutor()
|
|
49
|
+
.executeArbitraryShellScript(`oc exec -i ${podName} -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -c ${containerName} -- cat /tmp/${devFileName}-devfile.yaml`)
|
|
50
|
+
.toString();
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* grab devfile content from the Che config map
|
|
54
|
+
* @param configMapName
|
|
55
|
+
*/
|
|
56
|
+
obtainCheDevFileEditorFromCheConfigMap(configMapName) {
|
|
57
|
+
return this.getShellExecutor().executeCommand(`oc get configmap ${configMapName} -o jsonpath="{.data.che-code\\.yaml}" -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()}`);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* find the Dashboard pod and container name and grab devfile content from it
|
|
61
|
+
* @param devSample
|
|
62
|
+
*/
|
|
63
|
+
getDevfileContent(devSample) {
|
|
64
|
+
const command = `oc get pods -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()}`;
|
|
65
|
+
console.log(`command: ${command}`);
|
|
66
|
+
const podName = this.getShellExecutor()
|
|
67
|
+
.executeArbitraryShellScript(`oc get pods -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} | grep dashboard | awk \'{print $1}\'`)
|
|
68
|
+
.trim();
|
|
69
|
+
const containerName = this.getShellExecutor().executeArbitraryShellScript(`oc get pod -n ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} ${podName} -o jsonpath=\'{.spec.containers[*].name}\'`);
|
|
70
|
+
const devfileContent = this.obtainDevFileContentUsingPod(podName, containerName, devSample);
|
|
71
|
+
return devfileContent;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* @deprecated applicable only for inbuilt devfiles
|
|
75
|
+
* @param sampleNamePatterns
|
|
76
|
+
*/
|
|
29
77
|
async getInbuiltDevfilesRegistryContent(sampleNamePatterns) {
|
|
30
78
|
Logger_1.Logger.trace();
|
|
31
79
|
return this.filterSamples(sampleNamePatterns, await this.getContent(API_TEST_CONSTANTS_1.SUPPORTED_DEVFILE_REGISTRIES.INBUILT_APPLICATION_DEVFILE_REGISTRY_URL()));
|
|
@@ -37,6 +85,12 @@ let DevfilesRegistryHelper = class DevfilesRegistryHelper {
|
|
|
37
85
|
: API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_ACCEPTANCE_TEST_REGISTRY_URL();
|
|
38
86
|
return await this.getContent(url);
|
|
39
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
*
|
|
90
|
+
* @deprecated applicable only for inbuilt devfiles
|
|
91
|
+
* @param isInbuilt
|
|
92
|
+
* @param sampleNamePatterns
|
|
93
|
+
*/
|
|
40
94
|
async collectPathsToDevfilesFromRegistry(isInbuilt, sampleNamePatterns) {
|
|
41
95
|
Logger_1.Logger.debug();
|
|
42
96
|
const devfileSamples = [];
|
|
@@ -86,9 +140,6 @@ let DevfilesRegistryHelper = class DevfilesRegistryHelper {
|
|
|
86
140
|
}
|
|
87
141
|
return devfileSamples;
|
|
88
142
|
}
|
|
89
|
-
async getEditorContent(entry) {
|
|
90
|
-
return await this.getContent(`${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL}/${entry}`);
|
|
91
|
-
}
|
|
92
143
|
filterSamples(sampleNamePatterns, content) {
|
|
93
144
|
if (sampleNamePatterns) {
|
|
94
145
|
const commonSampleNamePattern = new RegExp(sampleNamePatterns.join('|'), 'i');
|
|
@@ -96,6 +147,9 @@ let DevfilesRegistryHelper = class DevfilesRegistryHelper {
|
|
|
96
147
|
}
|
|
97
148
|
return content;
|
|
98
149
|
}
|
|
150
|
+
getShellExecutor() {
|
|
151
|
+
return inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
|
|
152
|
+
}
|
|
99
153
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
100
154
|
async getContent(url, headers) {
|
|
101
155
|
Logger_1.Logger.trace(`${url}`);
|
|
@@ -120,8 +174,8 @@ let DevfilesRegistryHelper = class DevfilesRegistryHelper {
|
|
|
120
174
|
return response?.data;
|
|
121
175
|
}
|
|
122
176
|
};
|
|
123
|
-
|
|
177
|
+
DevfilesHelper = __decorate([
|
|
124
178
|
(0, inversify_1.injectable)()
|
|
125
|
-
],
|
|
126
|
-
exports.
|
|
127
|
-
//# sourceMappingURL=
|
|
179
|
+
], DevfilesHelper);
|
|
180
|
+
exports.DevfilesHelper = DevfilesHelper;
|
|
181
|
+
//# sourceMappingURL=DevfilesHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DevfilesHelper.js","sourceRoot":"","sources":["../../utils/DevfilesHelper.ts"],"names":[],"mappings":"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"}
|
package/index.ts
CHANGED
|
@@ -6,7 +6,7 @@ export * from './driver/ChromeDriver';
|
|
|
6
6
|
export * from './driver/IDriver';
|
|
7
7
|
export * from './utils/BrowserTabsUtil';
|
|
8
8
|
export * from './utils/DevWorkspaceConfigurationHelper';
|
|
9
|
-
export * from './utils/
|
|
9
|
+
export * from './utils/DevfilesHelper';
|
|
10
10
|
export * from './utils/DriverHelper';
|
|
11
11
|
export * from './utils/IContextParams';
|
|
12
12
|
export * from './utils/IKubernetesCommandLineToolsExecutor';
|
package/package.json
CHANGED
|
@@ -16,7 +16,7 @@ import { StringUtil } from '../../utils/StringUtil';
|
|
|
16
16
|
import { Logger } from '../../utils/Logger';
|
|
17
17
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
18
18
|
import { CLASSES } from '../../configs/inversify.types';
|
|
19
|
-
import {
|
|
19
|
+
import { DevfilesHelper } from '../../utils/DevfilesHelper';
|
|
20
20
|
import { MOCHA_CONSTANTS } from '../../constants/MOCHA_CONSTANTS';
|
|
21
21
|
import { API_TEST_CONSTANTS } from '../../constants/API_TEST_CONSTANTS';
|
|
22
22
|
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
@@ -26,7 +26,7 @@ import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
|
26
26
|
* info: https://mochajs.org/#delayed-root-suite
|
|
27
27
|
*/
|
|
28
28
|
void (async function (): Promise<void> {
|
|
29
|
-
const devfilesRegistryHelper:
|
|
29
|
+
const devfilesRegistryHelper: DevfilesHelper = e2eContainer.get(CLASSES.DevfilesRegistryHelper);
|
|
30
30
|
|
|
31
31
|
let devfileSamples: any = [];
|
|
32
32
|
if (
|
|
@@ -34,9 +34,10 @@ suite('Empty workspace API test', function (): void {
|
|
|
34
34
|
suiteSetup(`Create empty workspace with OC client ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, async function (): Promise<void> {
|
|
35
35
|
const workspaceName: string = 'empty-' + Math.floor(Math.random() * 1000);
|
|
36
36
|
const devfileContent: string = 'schemaVersion: 2.2.0\n' + 'metadata:\n' + ` name: ${workspaceName}\n`;
|
|
37
|
+
const editorContent:string='';
|
|
37
38
|
|
|
38
39
|
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper({
|
|
39
|
-
devfileContent
|
|
40
|
+
devfileContent, editorContent
|
|
40
41
|
});
|
|
41
42
|
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
42
43
|
devWorkspaceName = devfileContext?.devWorkspace?.metadata?.name;
|
|
@@ -12,7 +12,7 @@ import { DevWorkspaceConfigurationHelper } from '../../utils/DevWorkspaceConfigu
|
|
|
12
12
|
import { ShellString } from 'shelljs';
|
|
13
13
|
import { expect } from 'chai';
|
|
14
14
|
import { StringUtil } from '../../utils/StringUtil';
|
|
15
|
-
import {
|
|
15
|
+
import { DevfilesHelper } from '../../utils/DevfilesHelper';
|
|
16
16
|
import { Logger } from '../../utils/Logger';
|
|
17
17
|
import { e2eContainer } from '../../configs/inversify.config';
|
|
18
18
|
import { CLASSES } from '../../configs/inversify.types';
|
|
@@ -27,7 +27,7 @@ import { MOCHA_CONSTANTS } from '../../constants/MOCHA_CONSTANTS';
|
|
|
27
27
|
*/
|
|
28
28
|
|
|
29
29
|
void (async function (): Promise<void> {
|
|
30
|
-
const devfilesRegistryHelper:
|
|
30
|
+
const devfilesRegistryHelper: DevfilesHelper = e2eContainer.get(CLASSES.DevfilesRegistryHelper);
|
|
31
31
|
let devfileSamples: any;
|
|
32
32
|
if (MOCHA_CONSTANTS.MOCHA_DELAYED_SUITE) {
|
|
33
33
|
devfileSamples = await devfilesRegistryHelper.collectPathsToDevfilesFromRegistry(
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/** *******************************************************************
|
|
2
|
+
* copyright (c) 2023 Red Hat, Inc.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made
|
|
5
|
+
* available under the terms of the Eclipse Public License 2.0
|
|
6
|
+
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
7
|
+
*
|
|
8
|
+
* SPDX-License-Identifier: EPL-2.0
|
|
9
|
+
**********************************************************************/
|
|
10
|
+
import { BASE_TEST_CONSTANTS } from '../../constants/BASE_TEST_CONSTANTS';
|
|
11
|
+
import { e2eContainer } from '../../configs/inversify.config';
|
|
12
|
+
import { CLASSES } from '../../configs/inversify.types';
|
|
13
|
+
import { DevfilesHelper } from '../../utils/DevfilesHelper';
|
|
14
|
+
import { ContainerTerminal, KubernetesCommandLineToolsExecutor } from '../../utils/KubernetesCommandLineToolsExecutor';
|
|
15
|
+
import { DevWorkspaceConfigurationHelper } from '../../utils/DevWorkspaceConfigurationHelper';
|
|
16
|
+
import { DevfileContext } from '@eclipse-che/che-devworkspace-generator/lib/api/devfile-context';
|
|
17
|
+
import { ShellString } from 'shelljs';
|
|
18
|
+
import { expect } from 'chai';
|
|
19
|
+
import { API_TEST_CONSTANTS } from '../../constants/API_TEST_CONSTANTS';
|
|
20
|
+
import YAML from 'yaml';
|
|
21
|
+
import { Logger } from '../../utils/Logger';
|
|
22
|
+
import crypto from 'crypto';
|
|
23
|
+
|
|
24
|
+
suite('PHP devfile API test', function (): void {
|
|
25
|
+
const devfilesRegistryHelper: DevfilesHelper = e2eContainer.get(CLASSES.DevfilesRegistryHelper);
|
|
26
|
+
const kubernetesCommandLineToolsExecutor: KubernetesCommandLineToolsExecutor = e2eContainer.get(
|
|
27
|
+
CLASSES.KubernetesCommandLineToolsExecutor
|
|
28
|
+
);
|
|
29
|
+
const devfileID: string = 'php';
|
|
30
|
+
const containerTerminal: ContainerTerminal = e2eContainer.get(CLASSES.ContainerTerminal);
|
|
31
|
+
let devWorkspaceConfigurationHelper: DevWorkspaceConfigurationHelper;
|
|
32
|
+
let devfileContext: DevfileContext;
|
|
33
|
+
let devfileContent: string = '';
|
|
34
|
+
|
|
35
|
+
suiteSetup(`Prepare login ${BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function (): void {
|
|
36
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
test(`Create ${devfileID} workspace`, async function (): Promise<void> {
|
|
40
|
+
const randomPref: string = crypto.randomBytes(4).toString('hex');
|
|
41
|
+
kubernetesCommandLineToolsExecutor.namespace = API_TEST_CONSTANTS.TS_API_TEST_NAMESPACE || 'admin-devspaces';
|
|
42
|
+
devfileContent = devfilesRegistryHelper.getDevfileContent(devfileID);
|
|
43
|
+
const editorDevfileContent: string = devfilesRegistryHelper.obtainCheDevFileEditorFromCheConfigMap('editors-definitions');
|
|
44
|
+
const uniqName: string = YAML.parse(devfileContent).metadata.name + randomPref;
|
|
45
|
+
kubernetesCommandLineToolsExecutor.workspaceName = uniqName;
|
|
46
|
+
|
|
47
|
+
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper({
|
|
48
|
+
editorContent: editorDevfileContent,
|
|
49
|
+
devfileContent: devfileContent
|
|
50
|
+
});
|
|
51
|
+
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
52
|
+
if (devfileContext.devWorkspace.metadata) {
|
|
53
|
+
devfileContext.devWorkspace.metadata.name = uniqName;
|
|
54
|
+
}
|
|
55
|
+
const devWorkspaceConfigurationYamlString: string =
|
|
56
|
+
devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
57
|
+
const output: ShellString = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
58
|
+
expect(output.stdout).contains('condition met');
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
test('Check running application', function (): void {
|
|
62
|
+
const workdir: string = YAML.parse(devfileContent).commands[0].exec.workingDir;
|
|
63
|
+
const commandLine: string = YAML.parse(devfileContent).commands[0].exec.commandLine;
|
|
64
|
+
const containerName: string = YAML.parse(devfileContent).commands[0].exec.component;
|
|
65
|
+
Logger.info(`workdir from exec section of DevWorkspace file: ${workdir}`);
|
|
66
|
+
Logger.info(`commandLine from exec section of DevWorkspace file: ${commandLine}`);
|
|
67
|
+
const runCommandInBash: string = `cd ${workdir} && ${commandLine}`;
|
|
68
|
+
const output: ShellString = containerTerminal.execInContainerCommand(runCommandInBash, containerName);
|
|
69
|
+
expect(output.code).eqls(0);
|
|
70
|
+
expect(output.stdout.trim()).contains('Hello, world!');
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
suiteTeardown('Delete workspace', function (): void {
|
|
74
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
75
|
+
});
|
|
76
|
+
});
|
|
@@ -20,6 +20,7 @@ import { IContextParams } from './IContextParams';
|
|
|
20
20
|
import { e2eContainer } from '../configs/inversify.config';
|
|
21
21
|
import { CLASSES, EXTERNAL_CLASSES } from '../configs/inversify.types';
|
|
22
22
|
import getDecorators from 'inversify-inject-decorators';
|
|
23
|
+
import {DevfilesHelper} from "./DevfilesHelper";
|
|
23
24
|
|
|
24
25
|
const { lazyInject } = getDecorators(e2eContainer);
|
|
25
26
|
|
|
@@ -98,6 +99,7 @@ export class DevWorkspaceConfigurationHelper {
|
|
|
98
99
|
|
|
99
100
|
return content;
|
|
100
101
|
}
|
|
102
|
+
|
|
101
103
|
patchDevWorkspaceConfigWithBuildContainerAttribute(devfileContextDevWorkspace: any): void {
|
|
102
104
|
Logger.debug();
|
|
103
105
|
devfileContextDevWorkspace.spec.template.attributes = YAML.parse(`
|
|
@@ -13,9 +13,76 @@ import YAML from 'yaml';
|
|
|
13
13
|
import { API_TEST_CONSTANTS, SUPPORTED_DEVFILE_REGISTRIES } from '../constants/API_TEST_CONSTANTS';
|
|
14
14
|
import { injectable } from 'inversify';
|
|
15
15
|
import { BASE_TEST_CONSTANTS, Platform } from '../constants/BASE_TEST_CONSTANTS';
|
|
16
|
+
import { ShellExecutor } from './ShellExecutor';
|
|
17
|
+
import { e2eContainer } from '../configs/inversify.config';
|
|
18
|
+
import { CLASSES } from '../configs/inversify.types';
|
|
16
19
|
|
|
17
20
|
@injectable()
|
|
18
|
-
export class
|
|
21
|
+
export class DevfilesHelper {
|
|
22
|
+
public getInternalClusterURLToDevFile(devFileName: string): string {
|
|
23
|
+
const devfileSampleURIPrefix: string = `/dashboard/api/airgap-sample/devfile/download?id=${devFileName}`;
|
|
24
|
+
let serviceClusterIp: string = '';
|
|
25
|
+
let servicePort: string = '';
|
|
26
|
+
serviceClusterIp = this.getShellExecutor().executeArbitraryShellScript(
|
|
27
|
+
`oc get svc devspaces-dashboard -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -o=jsonpath='{.spec.clusterIP}'`
|
|
28
|
+
);
|
|
29
|
+
servicePort = this.getShellExecutor().executeArbitraryShellScript(
|
|
30
|
+
`oc get svc devspaces-dashboard -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -o=jsonpath='{.spec.ports[*].port}'`
|
|
31
|
+
);
|
|
32
|
+
return `http://${serviceClusterIp}:${servicePort}${devfileSampleURIPrefix}`;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* grab devfile content from the Dashboard pod (currently, in the image of dashboard builds with devfile content and we use it for getting devfile description)
|
|
37
|
+
* @param podName
|
|
38
|
+
* @param containerName
|
|
39
|
+
* @param devFileName
|
|
40
|
+
*/
|
|
41
|
+
public obtainDevFileContentUsingPod(podName: string, containerName: string, devFileName: string): string {
|
|
42
|
+
const clusterURL: string = this.getInternalClusterURLToDevFile(devFileName);
|
|
43
|
+
this.getShellExecutor().executeCommand(
|
|
44
|
+
`oc exec -i ${podName} -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -c ${containerName} -- sh -c 'curl -o /tmp/${devFileName}-devfile.yaml ${clusterURL}'`
|
|
45
|
+
);
|
|
46
|
+
return this.getShellExecutor()
|
|
47
|
+
.executeArbitraryShellScript(
|
|
48
|
+
`oc exec -i ${podName} -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} -c ${containerName} -- cat /tmp/${devFileName}-devfile.yaml`
|
|
49
|
+
)
|
|
50
|
+
.toString();
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* grab devfile content from the Che config map
|
|
55
|
+
* @param configMapName
|
|
56
|
+
*/
|
|
57
|
+
public obtainCheDevFileEditorFromCheConfigMap(configMapName: string): string {
|
|
58
|
+
return this.getShellExecutor().executeCommand(
|
|
59
|
+
`oc get configmap ${configMapName} -o jsonpath="{.data.che-code\\.yaml}" -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()}`
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* find the Dashboard pod and container name and grab devfile content from it
|
|
65
|
+
* @param devSample
|
|
66
|
+
*/
|
|
67
|
+
public getDevfileContent(devSample: string): string {
|
|
68
|
+
const command: string = `oc get pods -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()}`;
|
|
69
|
+
console.log(`command: ${command}`);
|
|
70
|
+
const podName: string = this.getShellExecutor()
|
|
71
|
+
.executeArbitraryShellScript(
|
|
72
|
+
`oc get pods -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} | grep dashboard | awk \'{print $1}\'`
|
|
73
|
+
)
|
|
74
|
+
.trim();
|
|
75
|
+
const containerName: string = this.getShellExecutor().executeArbitraryShellScript(
|
|
76
|
+
`oc get pod -n ${BASE_TEST_CONSTANTS.TS_PLATFORM}-${BASE_TEST_CONSTANTS.TESTING_APPLICATION_NAME()} ${podName} -o jsonpath=\'{.spec.containers[*].name}\'`
|
|
77
|
+
);
|
|
78
|
+
const devfileContent: string = this.obtainDevFileContentUsingPod(podName, containerName, devSample);
|
|
79
|
+
return devfileContent;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* @deprecated applicable only for inbuilt devfiles
|
|
84
|
+
* @param sampleNamePatterns
|
|
85
|
+
*/
|
|
19
86
|
async getInbuiltDevfilesRegistryContent(sampleNamePatterns?: string[]): Promise<any[]> {
|
|
20
87
|
Logger.trace();
|
|
21
88
|
|
|
@@ -35,6 +102,12 @@ export class DevfilesRegistryHelper {
|
|
|
35
102
|
return await this.getContent(url);
|
|
36
103
|
}
|
|
37
104
|
|
|
105
|
+
/**
|
|
106
|
+
*
|
|
107
|
+
* @deprecated applicable only for inbuilt devfiles
|
|
108
|
+
* @param isInbuilt
|
|
109
|
+
* @param sampleNamePatterns
|
|
110
|
+
*/
|
|
38
111
|
async collectPathsToDevfilesFromRegistry(isInbuilt: boolean, sampleNamePatterns?: string[]): Promise<object[]> {
|
|
39
112
|
Logger.debug();
|
|
40
113
|
|
|
@@ -86,10 +159,6 @@ export class DevfilesRegistryHelper {
|
|
|
86
159
|
return devfileSamples;
|
|
87
160
|
}
|
|
88
161
|
|
|
89
|
-
async getEditorContent(entry: string): Promise<any> {
|
|
90
|
-
return await this.getContent(`${BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL}/${entry}`);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
162
|
private filterSamples(sampleNamePatterns: string[] | undefined, content: any): Promise<any[]> {
|
|
94
163
|
if (sampleNamePatterns) {
|
|
95
164
|
const commonSampleNamePattern: RegExp = new RegExp(sampleNamePatterns.join('|'), 'i');
|
|
@@ -97,7 +166,9 @@ export class DevfilesRegistryHelper {
|
|
|
97
166
|
}
|
|
98
167
|
return content;
|
|
99
168
|
}
|
|
100
|
-
|
|
169
|
+
private getShellExecutor(): ShellExecutor {
|
|
170
|
+
return e2eContainer.get(CLASSES.ShellExecutor);
|
|
171
|
+
}
|
|
101
172
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
102
173
|
private async getContent(url: string, headers?: object): Promise<AxiosResponse> {
|
|
103
174
|
Logger.trace(`${url}`);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DevfilesRegistryHelper.js","sourceRoot":"","sources":["../../utils/DevfilesRegistryHelper.ts"],"names":[],"mappings":"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"}
|