@eclipse-che/che-e2e 7.68.0-dev-8aa6599 → 7.68.0-dev-ce66a36
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/build/dockerfiles/Dockerfile +1 -1
- package/constants/TestConstants.ts +10 -2
- package/dist/constants/TestConstants.js +9 -2
- package/dist/constants/TestConstants.js.map +1 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +0 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +1 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js +61 -0
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +1 -0
- package/dist/utils/DevWorkspaceConfigurationHelper.js +21 -1
- package/dist/utils/DevWorkspaceConfigurationHelper.js.map +1 -1
- package/package.json +1 -1
- package/specs/api/DevfileAcceptanceTestAPI.spec.ts +0 -1
- package/specs/api/EmptyWorkspaceAPI.spec.ts +73 -0
- package/utils/DevWorkspaceConfigurationHelper.ts +28 -2
- package/dist/specs/api/CloneGitRepoAPI.spec.js +0 -61
- package/dist/specs/api/CloneGitRepoAPI.spec.js.map +0 -1
- package/specs/api/CloneGitRepoAPI.spec.ts +0 -73
|
@@ -239,9 +239,17 @@ export const TestConstants: any = {
|
|
|
239
239
|
|
|
240
240
|
TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL: process.env.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL || KubernetesCommandLineTool.OC,
|
|
241
241
|
|
|
242
|
-
|
|
242
|
+
// 'quay.io/devfile/universal-developer-image:latest'
|
|
243
|
+
// is default assigned by DevWorkspaceConfigurationHelper.generateDevfileContext() using @eclipse-che/che-devworkspace-generator
|
|
244
|
+
TS_API_TEST_UDI_IMAGE: process.env.TS_API_TEST_UDI_IMAGE || undefined,
|
|
243
245
|
|
|
244
|
-
|
|
246
|
+
// https://eclipse-che.github.io/che-plugin-registry/main/v3/plugins/che-incubator/che-code/latest/devfile.yaml
|
|
247
|
+
// is default assigned by DevWorkspaceConfigurationHelper.generateDevfileContext() using @eclipse-che/che-devworkspace-generator
|
|
248
|
+
TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI: process.env.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI || undefined,
|
|
249
|
+
|
|
250
|
+
// https://eclipse-che.github.io/che-plugin-registry/main/v3
|
|
251
|
+
// is default assigned by DevWorkspaceConfigurationHelper.generateDevfileContext() using @eclipse-che/che-devworkspace-generator
|
|
252
|
+
TS_API_TEST_PLUGIN_REGISTRY_URL: process.env.TS_API_TEST_PLUGIN_REGISTRY_URL || undefined,
|
|
245
253
|
|
|
246
254
|
TS_API_TEST_NAMESPACE: process.env.TS_API_TEST_NAMESPACE || undefined,
|
|
247
255
|
|
|
@@ -191,8 +191,15 @@ exports.TestConstants = {
|
|
|
191
191
|
| The api tests related constants
|
|
192
192
|
----------------------------------------------*/
|
|
193
193
|
TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL: process.env.TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL || KubernetesCommandLineTool.OC,
|
|
194
|
-
|
|
195
|
-
|
|
194
|
+
// 'quay.io/devfile/universal-developer-image:latest'
|
|
195
|
+
// is default assigned by DevWorkspaceConfigurationHelper.generateDevfileContext() using @eclipse-che/che-devworkspace-generator
|
|
196
|
+
TS_API_TEST_UDI_IMAGE: process.env.TS_API_TEST_UDI_IMAGE || undefined,
|
|
197
|
+
// https://eclipse-che.github.io/che-plugin-registry/main/v3/plugins/che-incubator/che-code/latest/devfile.yaml
|
|
198
|
+
// is default assigned by DevWorkspaceConfigurationHelper.generateDevfileContext() using @eclipse-che/che-devworkspace-generator
|
|
199
|
+
TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI: process.env.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI || undefined,
|
|
200
|
+
// https://eclipse-che.github.io/che-plugin-registry/main/v3
|
|
201
|
+
// is default assigned by DevWorkspaceConfigurationHelper.generateDevfileContext() using @eclipse-che/che-devworkspace-generator
|
|
202
|
+
TS_API_TEST_PLUGIN_REGISTRY_URL: process.env.TS_API_TEST_PLUGIN_REGISTRY_URL || undefined,
|
|
196
203
|
TS_API_TEST_NAMESPACE: process.env.TS_API_TEST_NAMESPACE || undefined,
|
|
197
204
|
// choose from repo https://github.com/eclipse-che/che-devfile-registry/tree/main/devfiles file as raw
|
|
198
205
|
TS_API_TEST_LINK_TO_META_YAML: process.env.TS_API_TEST_LINK_TO_META_YAML || 'https://raw.githubusercontent.com/eclipse-che/che-devfile-registry/main/devfiles/java-web-spring/meta.yaml'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestConstants.js","sourceRoot":"","sources":["../../constants/TestConstants.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TestConstants.js","sourceRoot":"","sources":["../../constants/TestConstants.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,6 @@ suite(`Devfile acceptance test`, async function () {
|
|
|
16
16
|
devfileUrl = await GitUtil_1.GitUtil.getProjectGitLinkFromLinkToMetaYaml(TestConstants_1.TestConstants.TS_API_TEST_LINK_TO_META_YAML);
|
|
17
17
|
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
18
18
|
devfileUrl,
|
|
19
|
-
projects: []
|
|
20
19
|
});
|
|
21
20
|
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
22
21
|
devWorkspaceName = (_b = (_a = devfileContext === null || devfileContext === void 0 ? void 0 : devfileContext.devWorkspace) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevfileAcceptanceTestAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/DevfileAcceptanceTestAPI.spec.ts"],"names":[],"mappings":";;AAAA,uGAAoG;AACpG,iGAA8F;AAE9F,+BAA8B;AAE9B,iEAA8D;AAC9D,qDAAkD;AAElD,KAAK,CAAC,yBAAyB,EAAE,KAAK;IAClC,IAAI,UAAkB,CAAC;IACvB,IAAI,+BAAgE,CAAC;IACrE,IAAI,kCAAsE,CAAC;IAC3E,IAAI,cAA8B,CAAC;IACnC,IAAI,gBAAoC,CAAC;IAEzC,UAAU,CAAC,+CAA+C,EAAE,KAAK;;QAC7D,UAAU,GAAG,MAAM,iBAAO,CAAC,mCAAmC,CAAC,6BAAa,CAAC,6BAA6B,CAAC,CAAC;QAE5G,+BAA+B,GAAG,IAAI,iEAA+B,CAAC;YAClE,UAAU;
|
|
1
|
+
{"version":3,"file":"DevfileAcceptanceTestAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/DevfileAcceptanceTestAPI.spec.ts"],"names":[],"mappings":";;AAAA,uGAAoG;AACpG,iGAA8F;AAE9F,+BAA8B;AAE9B,iEAA8D;AAC9D,qDAAkD;AAElD,KAAK,CAAC,yBAAyB,EAAE,KAAK;IAClC,IAAI,UAAkB,CAAC;IACvB,IAAI,+BAAgE,CAAC;IACrE,IAAI,kCAAsE,CAAC;IAC3E,IAAI,cAA8B,CAAC;IACnC,IAAI,gBAAoC,CAAC;IAEzC,UAAU,CAAC,+CAA+C,EAAE,KAAK;;QAC7D,UAAU,GAAG,MAAM,iBAAO,CAAC,mCAAmC,CAAC,6BAAa,CAAC,6BAA6B,CAAC,CAAC;QAE5G,+BAA+B,GAAG,IAAI,iEAA+B,CAAC;YAClE,UAAU;SACb,CAAC,CAAC;QACH,cAAc,GAAG,MAAM,+BAA+B,CAAC,sBAAsB,EAAE,CAAC;QAChF,gBAAgB,eAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,YAAY,0CAAE,QAAQ,0CAAE,IAAI,CAAC;QAEhE,kCAAkC,GAAG,IAAI,uEAAkC,CAAC,gBAAgB,CAAC,CAAC;QAC9F,kCAAkC,CAAC,UAAU,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qBAAqB,EAAE,KAAK;QAC7B,MAAM,mCAAmC,GAAW,MAAM,+BAA+B,CAAC,wCAAwC,CAAC,cAAc,CAAC,CAAC;QACnJ,MAAM,WAAW,GAAgB,kCAAkC,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,CAAC;QAE9I,aAAM,CAAC,WAAW,CAAC,MAAM,CAAC;aACrB,QAAQ,CAAC,sBAAsB,CAAC;aAChC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;aAC5B,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAEvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,KAAK;QACpD,aAAM,CAAC,kCAAkC,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACnG,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,qBAAqB,EAAE,KAAK;QACtC,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
4
|
+
const chai_1 = require("chai");
|
|
5
|
+
const GitUtil_1 = require("../../utils/vsc/GitUtil");
|
|
6
|
+
const TestConstants_1 = require("../../constants/TestConstants");
|
|
7
|
+
const DevWorkspaceConfigurationHelper_1 = require("../../utils/DevWorkspaceConfigurationHelper");
|
|
8
|
+
suite(`Empty workspace API test`, async function () {
|
|
9
|
+
// works only for root user
|
|
10
|
+
const namespace = TestConstants_1.TestConstants.TS_API_TEST_NAMESPACE;
|
|
11
|
+
let clonedProjectName;
|
|
12
|
+
let containerWorkDir;
|
|
13
|
+
let devWorkspaceConfigurationHelper;
|
|
14
|
+
let kubernetesCommandLineToolsExecutor;
|
|
15
|
+
let devfileContext;
|
|
16
|
+
let devWorkspaceName;
|
|
17
|
+
let containerTerminal;
|
|
18
|
+
const gitRepository = 'https://github.com/crw-qe/web-nodejs-sample';
|
|
19
|
+
suiteSetup('Create empty workspace with OC client', async function () {
|
|
20
|
+
var _a, _b;
|
|
21
|
+
const workspaceName = 'empty-' + Math.floor(Math.random() * 1000);
|
|
22
|
+
const devfileContent = 'schemaVersion: 2.2.0\n' +
|
|
23
|
+
'metadata:\n' +
|
|
24
|
+
` name: ${workspaceName}\n`;
|
|
25
|
+
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
26
|
+
devfileContent,
|
|
27
|
+
});
|
|
28
|
+
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
29
|
+
devWorkspaceName = (_b = (_a = devfileContext === null || devfileContext === void 0 ? void 0 : devfileContext.devWorkspace) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.name;
|
|
30
|
+
kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor(devWorkspaceName, namespace);
|
|
31
|
+
containerTerminal = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor.ContainerTerminal(kubernetesCommandLineToolsExecutor);
|
|
32
|
+
});
|
|
33
|
+
test('Create empty workspace', async function () {
|
|
34
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
35
|
+
const devWorkspaceConfigurationYamlString = await devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
36
|
+
const output = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
37
|
+
chai_1.expect(output.stdout).contains('condition met');
|
|
38
|
+
});
|
|
39
|
+
suite('Clone public repo without previous setup', function () {
|
|
40
|
+
test('Check if public repo can be cloned', function () {
|
|
41
|
+
containerWorkDir = containerTerminal.pwd().stdout.replace('\n', '');
|
|
42
|
+
const cloneOutput = containerTerminal.gitClone(gitRepository);
|
|
43
|
+
chai_1.expect(cloneOutput.stdout + cloneOutput.stderr).includes('Cloning');
|
|
44
|
+
});
|
|
45
|
+
test('Check if project was created', function () {
|
|
46
|
+
clonedProjectName = GitUtil_1.GitUtil.getProjectNameFromGitUrl(gitRepository);
|
|
47
|
+
chai_1.expect(containerTerminal.ls().stdout).includes(clonedProjectName);
|
|
48
|
+
});
|
|
49
|
+
test('Check if files were imported ', function () {
|
|
50
|
+
chai_1.expect(containerTerminal.ls(`${containerWorkDir}/${clonedProjectName}`).stdout)
|
|
51
|
+
.includes(TestConstants_1.TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
52
|
+
});
|
|
53
|
+
suiteTeardown('Delete cloned project', function () {
|
|
54
|
+
containerTerminal.removeFolder(`${clonedProjectName}`);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
suiteTeardown('Delete workspace', function () {
|
|
58
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=EmptyWorkspaceAPI.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyWorkspaceAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/EmptyWorkspaceAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,8 @@ const main_1 = require("@eclipse-che/che-devworkspace-generator/lib/main");
|
|
|
27
27
|
const yaml_1 = __importDefault(require("yaml"));
|
|
28
28
|
const axios = __importStar(require("axios"));
|
|
29
29
|
const Logger_1 = require("./Logger");
|
|
30
|
+
const TestConstants_1 = require("../constants/TestConstants");
|
|
31
|
+
const ShellExecutor_1 = require("./ShellExecutor");
|
|
30
32
|
class DevWorkspaceConfigurationHelper {
|
|
31
33
|
constructor(params) {
|
|
32
34
|
this.generator = new main_1.Main();
|
|
@@ -34,11 +36,29 @@ class DevWorkspaceConfigurationHelper {
|
|
|
34
36
|
if (!(params.editorPath || params.editorEntry || params.editorContent)) {
|
|
35
37
|
params.editorEntry = 'che-incubator/che-code/latest';
|
|
36
38
|
}
|
|
39
|
+
// check if one or both has value
|
|
40
|
+
if (TestConstants_1.TestConstants.TS_API_TEST_UDI_IMAGE || params.defaultComponentImage) {
|
|
41
|
+
params.injectDefaultComponent = 'true';
|
|
42
|
+
// check if not explicitly passed than assign value from the constants
|
|
43
|
+
if (!params.defaultComponentImage) {
|
|
44
|
+
params.defaultComponentImage = TestConstants_1.TestConstants.TS_API_TEST_UDI_IMAGE;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// assign value from the constants if not explicitly passed
|
|
48
|
+
if (TestConstants_1.TestConstants.TS_API_TEST_PLUGIN_REGISTRY_URL && !params.pluginRegistryUrl) {
|
|
49
|
+
params.pluginRegistryUrl = TestConstants_1.TestConstants.TS_API_TEST_PLUGIN_REGISTRY_URL;
|
|
50
|
+
}
|
|
51
|
+
if (TestConstants_1.TestConstants.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI && !params.editorContent) {
|
|
52
|
+
params.editorContent = ShellExecutor_1.ShellExecutor.curl(TestConstants_1.TestConstants.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI).stdout;
|
|
53
|
+
}
|
|
37
54
|
this.params = params;
|
|
38
55
|
}
|
|
39
56
|
async generateDevfileContext() {
|
|
40
57
|
Logger_1.Logger.debug(`${this.constructor.name}.${this.generateDevfileContext.name}`);
|
|
41
|
-
|
|
58
|
+
if (!this.params.projects) {
|
|
59
|
+
this.params.projects = [];
|
|
60
|
+
}
|
|
61
|
+
return await this.generator.generateDevfileContext(Object.assign(Object.assign({}, this.params), { projects: this.params.projects }), axios.default);
|
|
42
62
|
}
|
|
43
63
|
// write templates and then DevWorkspace in a single file
|
|
44
64
|
async getDevWorkspaceConfigurationYamlAsString(context) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevWorkspaceConfigurationHelper.js","sourceRoot":"","sources":["../../utils/DevWorkspaceConfigurationHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2EAAqF;AAGrF,gDAAwB;AACxB,6CAA+B;AAC/B,qCAAkC;
|
|
1
|
+
{"version":3,"file":"DevWorkspaceConfigurationHelper.js","sourceRoot":"","sources":["../../utils/DevWorkspaceConfigurationHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2EAAqF;AAGrF,gDAAwB;AACxB,6CAA+B;AAC/B,qCAAkC;AAClC,8DAA2D;AAC3D,mDAAgD;AAwBhD,MAAa,+BAA+B;IAIxC,YAAY,MAAsB;QAH1B,cAAS,GAAc,IAAI,WAAS,EAAE,CAAC;QAI3C,yBAAyB;QACzB,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,aAAa,CAAC,EAAE;YACpE,MAAM,CAAC,WAAW,GAAG,+BAA+B,CAAC;SACxD;QACD,iCAAiC;QACjC,IAAI,6BAAa,CAAC,qBAAqB,IAAI,MAAM,CAAC,qBAAqB,EAAE;YACrE,MAAM,CAAC,sBAAsB,GAAG,MAAM,CAAC;YACvC,sEAAsE;YACtE,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE;gBAC/B,MAAM,CAAC,qBAAqB,GAAG,6BAAa,CAAC,qBAAqB,CAAC;aACtE;SACJ;QACD,2DAA2D;QAC3D,IAAI,6BAAa,CAAC,+BAA+B,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE;YAC5E,MAAM,CAAC,iBAAiB,GAAG,6BAAa,CAAC,+BAA+B,CAAC;SAC5E;QACD,IAAI,6BAAa,CAAC,uCAAuC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;YAChF,MAAM,CAAC,aAAa,GAAG,6BAAa,CAAC,IAAI,CAAC,6BAAa,CAAC,uCAAuC,CAAC,CAAC,MAAM,CAAC;SAC3G;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,sBAAsB;QACxB,eAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;SAC7B;QACD,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,sBAAsB,iCAEvC,IAAI,CAAC,MAAM,KACd,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,KAElC,KAAK,CAAC,OAAc,CACvB,CAAC;IACN,CAAC;IAED,yDAAyD;IACzD,KAAK,CAAC,wCAAwC,CAAC,OAAuB;QAClE,eAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,wCAAwC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,MAAM,eAAe,GAAU,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAC5D,CAAC,QAAsC,EAAE,EAAE,CAAC,cAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CACvE,CAAC;QACF,eAAe,CAAC,IAAI,CAAC,cAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;QAE3D,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CACJ;AAnDD,0EAmDC"}
|
package/package.json
CHANGED
|
@@ -18,7 +18,6 @@ suite(`Devfile acceptance test`, async function (): Promise<void> {
|
|
|
18
18
|
|
|
19
19
|
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper({
|
|
20
20
|
devfileUrl,
|
|
21
|
-
projects: []
|
|
22
21
|
});
|
|
23
22
|
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
24
23
|
devWorkspaceName = devfileContext?.devWorkspace?.metadata?.name;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { KubernetesCommandLineToolsExecutor } from '../../utils/KubernetesCommandLineToolsExecutor';
|
|
2
|
+
import { expect } from 'chai';
|
|
3
|
+
import { ShellString } from 'shelljs';
|
|
4
|
+
import { GitUtil } from '../../utils/vsc/GitUtil';
|
|
5
|
+
import { TestConstants } from '../../constants/TestConstants';
|
|
6
|
+
import { DevWorkspaceConfigurationHelper } from '../../utils/DevWorkspaceConfigurationHelper';
|
|
7
|
+
import { DevfileContext } from '@eclipse-che/che-devworkspace-generator/lib/api/devfile-context';
|
|
8
|
+
|
|
9
|
+
suite(`Empty workspace API test`, async function (): Promise<void> {
|
|
10
|
+
// works only for root user
|
|
11
|
+
const namespace: string = TestConstants.TS_API_TEST_NAMESPACE;
|
|
12
|
+
let clonedProjectName: string;
|
|
13
|
+
let containerWorkDir: string;
|
|
14
|
+
let devWorkspaceConfigurationHelper: DevWorkspaceConfigurationHelper;
|
|
15
|
+
let kubernetesCommandLineToolsExecutor: KubernetesCommandLineToolsExecutor;
|
|
16
|
+
let devfileContext: DevfileContext;
|
|
17
|
+
let devWorkspaceName: string | undefined;
|
|
18
|
+
let containerTerminal: KubernetesCommandLineToolsExecutor.ContainerTerminal;
|
|
19
|
+
|
|
20
|
+
const gitRepository: string = 'https://github.com/crw-qe/web-nodejs-sample';
|
|
21
|
+
|
|
22
|
+
suiteSetup('Create empty workspace with OC client', async function (): Promise<void> {
|
|
23
|
+
const workspaceName: string = 'empty-' + Math.floor(Math.random() * 1000);
|
|
24
|
+
const devfileContent: string =
|
|
25
|
+
'schemaVersion: 2.2.0\n' +
|
|
26
|
+
'metadata:\n' +
|
|
27
|
+
` name: ${workspaceName}\n`;
|
|
28
|
+
|
|
29
|
+
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper({
|
|
30
|
+
devfileContent,
|
|
31
|
+
});
|
|
32
|
+
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
33
|
+
devWorkspaceName = devfileContext?.devWorkspace?.metadata?.name;
|
|
34
|
+
kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor(devWorkspaceName, namespace);
|
|
35
|
+
containerTerminal = new KubernetesCommandLineToolsExecutor.ContainerTerminal(kubernetesCommandLineToolsExecutor);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
test('Create empty workspace', async function (): Promise<void> {
|
|
39
|
+
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
40
|
+
const devWorkspaceConfigurationYamlString: string = await devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
41
|
+
const output: ShellString = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
42
|
+
expect(output.stdout).contains('condition met');
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
suite('Clone public repo without previous setup', function (): void {
|
|
46
|
+
|
|
47
|
+
test('Check if public repo can be cloned', function (): void {
|
|
48
|
+
containerWorkDir = containerTerminal.pwd().stdout.replace('\n', '');
|
|
49
|
+
const cloneOutput: ShellString = containerTerminal.gitClone(gitRepository);
|
|
50
|
+
expect(cloneOutput.stdout + cloneOutput.stderr).includes('Cloning');
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
test('Check if project was created', function (): void {
|
|
54
|
+
clonedProjectName = GitUtil.getProjectNameFromGitUrl(gitRepository);
|
|
55
|
+
expect(containerTerminal.ls().stdout).includes(clonedProjectName);
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
test('Check if files were imported ', function (): void {
|
|
59
|
+
expect(containerTerminal.ls(`${containerWorkDir}/${clonedProjectName}`).stdout)
|
|
60
|
+
.includes(TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
suiteTeardown('Delete cloned project', function (): void {
|
|
64
|
+
containerTerminal.removeFolder(`${clonedProjectName}`);
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
suiteTeardown('Delete workspace', function (): void {
|
|
69
|
+
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
|
|
@@ -4,6 +4,13 @@ import { V1alpha2DevWorkspaceTemplate } from '@devfile/api';
|
|
|
4
4
|
import YAML from 'yaml';
|
|
5
5
|
import * as axios from 'axios';
|
|
6
6
|
import { Logger } from './Logger';
|
|
7
|
+
import { TestConstants } from '../constants/TestConstants';
|
|
8
|
+
import { ShellExecutor } from './ShellExecutor';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* to see more about IContextParams and generateDevfileContext(params) check README.md in "@eclipse-che/che-devworkspace-generator;
|
|
12
|
+
* tests/e2e/node_modules/@eclipse-che/che-devworkspace-generator/README.md
|
|
13
|
+
*/
|
|
7
14
|
|
|
8
15
|
interface IContextParams {
|
|
9
16
|
devfilePath?: string | undefined;
|
|
@@ -14,7 +21,7 @@ interface IContextParams {
|
|
|
14
21
|
editorContent?: string | undefined;
|
|
15
22
|
editorEntry?: string | undefined;
|
|
16
23
|
pluginRegistryUrl?: string | undefined;
|
|
17
|
-
projects
|
|
24
|
+
projects?: {
|
|
18
25
|
name: string;
|
|
19
26
|
location: string;
|
|
20
27
|
}[];
|
|
@@ -31,14 +38,33 @@ export class DevWorkspaceConfigurationHelper {
|
|
|
31
38
|
if (!(params.editorPath || params.editorEntry || params.editorContent)) {
|
|
32
39
|
params.editorEntry = 'che-incubator/che-code/latest';
|
|
33
40
|
}
|
|
41
|
+
// check if one or both has value
|
|
42
|
+
if (TestConstants.TS_API_TEST_UDI_IMAGE || params.defaultComponentImage) {
|
|
43
|
+
params.injectDefaultComponent = 'true';
|
|
44
|
+
// check if not explicitly passed than assign value from the constants
|
|
45
|
+
if (!params.defaultComponentImage) {
|
|
46
|
+
params.defaultComponentImage = TestConstants.TS_API_TEST_UDI_IMAGE;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// assign value from the constants if not explicitly passed
|
|
50
|
+
if (TestConstants.TS_API_TEST_PLUGIN_REGISTRY_URL && !params.pluginRegistryUrl) {
|
|
51
|
+
params.pluginRegistryUrl = TestConstants.TS_API_TEST_PLUGIN_REGISTRY_URL;
|
|
52
|
+
}
|
|
53
|
+
if (TestConstants.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI && !params.editorContent) {
|
|
54
|
+
params.editorContent = ShellExecutor.curl(TestConstants.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI).stdout;
|
|
55
|
+
}
|
|
34
56
|
this.params = params;
|
|
35
57
|
}
|
|
36
58
|
|
|
37
59
|
async generateDevfileContext(): Promise<DevfileContext> {
|
|
38
60
|
Logger.debug(`${this.constructor.name}.${this.generateDevfileContext.name}`);
|
|
61
|
+
if (!this.params.projects) {
|
|
62
|
+
this.params.projects = [];
|
|
63
|
+
}
|
|
39
64
|
return await this.generator.generateDevfileContext(
|
|
40
65
|
{
|
|
41
|
-
...this.params
|
|
66
|
+
...this.params,
|
|
67
|
+
projects: this.params.projects
|
|
42
68
|
},
|
|
43
69
|
axios.default as any
|
|
44
70
|
);
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const KubernetesCommandLineToolsExecutor_1 = require("../../utils/KubernetesCommandLineToolsExecutor");
|
|
4
|
-
const chai_1 = require("chai");
|
|
5
|
-
const GitUtil_1 = require("../../utils/vsc/GitUtil");
|
|
6
|
-
const TestConstants_1 = require("../../constants/TestConstants");
|
|
7
|
-
const gitRepository = 'https://github.com/crw-qe/web-nodejs-sample';
|
|
8
|
-
suite(`Test cloning of repo "${gitRepository}" into empty workspace.`, async function () {
|
|
9
|
-
// works only for root user
|
|
10
|
-
const namespace = TestConstants_1.TestConstants.TS_API_TEST_NAMESPACE ? TestConstants_1.TestConstants.TS_API_TEST_NAMESPACE : undefined;
|
|
11
|
-
const workspaceName = 'empty-' + Math.floor(Math.random() * 1000);
|
|
12
|
-
let clonedProjectName;
|
|
13
|
-
let containerWorkDir = '';
|
|
14
|
-
const kubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor(workspaceName, namespace);
|
|
15
|
-
const containerTerminal = new KubernetesCommandLineToolsExecutor_1.KubernetesCommandLineToolsExecutor.ContainerTerminal(kubernetesCommandLineToolsExecutor);
|
|
16
|
-
const emptyYaml = 'apiVersion: workspace.devfile.io/v1alpha2\n' +
|
|
17
|
-
'kind: DevWorkspace\n' +
|
|
18
|
-
'metadata:\n' +
|
|
19
|
-
` name: ${workspaceName}\n` +
|
|
20
|
-
'spec:\n' +
|
|
21
|
-
' started: true\n' +
|
|
22
|
-
' template:\n' +
|
|
23
|
-
' components:\n' +
|
|
24
|
-
' - container:\n' +
|
|
25
|
-
` image: ${TestConstants_1.TestConstants.TS_API_TEST_UDI_IMAGE}\n` +
|
|
26
|
-
' name: universal-developer-image\n' +
|
|
27
|
-
' contributions:\n' +
|
|
28
|
-
' - name: che-code\n' +
|
|
29
|
-
` uri: ${TestConstants_1.TestConstants.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI}\n` +
|
|
30
|
-
' components:\n' +
|
|
31
|
-
' - name: che-code-runtime-description\n' +
|
|
32
|
-
' container:\n' +
|
|
33
|
-
' env:\n' +
|
|
34
|
-
' - name: CODE_HOST\n' +
|
|
35
|
-
' value: 0.0.0.0';
|
|
36
|
-
suiteSetup('Create empty workspace with OC client', function () {
|
|
37
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
38
|
-
kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(emptyYaml);
|
|
39
|
-
});
|
|
40
|
-
suiteTeardown('Delete workspace', function () {
|
|
41
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
42
|
-
});
|
|
43
|
-
suite('Clone public repo without previous setup', function () {
|
|
44
|
-
suiteTeardown('Delete cloned project', function () {
|
|
45
|
-
containerTerminal.removeFolder(`${clonedProjectName}`);
|
|
46
|
-
});
|
|
47
|
-
test('Check if public repo can be cloned', function () {
|
|
48
|
-
containerWorkDir = containerTerminal.pwd().stdout.replace('\n', '');
|
|
49
|
-
const cloneOutput = containerTerminal.gitClone(gitRepository);
|
|
50
|
-
chai_1.expect(cloneOutput.stdout + cloneOutput.stderr).includes('Cloning');
|
|
51
|
-
});
|
|
52
|
-
test('Check if project was created', function () {
|
|
53
|
-
clonedProjectName = GitUtil_1.GitUtil.getProjectNameFromGitUrl(gitRepository);
|
|
54
|
-
chai_1.expect(containerTerminal.ls().stdout).includes(clonedProjectName);
|
|
55
|
-
});
|
|
56
|
-
test('Check if files were imported ', function () {
|
|
57
|
-
chai_1.expect(containerTerminal.ls(`${containerWorkDir}/${clonedProjectName}`).stdout).includes(TestConstants_1.TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
58
|
-
});
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
//# sourceMappingURL=CloneGitRepoAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CloneGitRepoAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/CloneGitRepoAPI.spec.ts"],"names":[],"mappings":";;AAAA,uGAAoG;AACpG,+BAA8B;AAE9B,qDAAkD;AAClD,iEAA8D;AAG9D,MAAM,aAAa,GAAW,6CAA6C,CAAC;AAE5E,KAAK,CAAC,yBAAyB,aAAa,yBAAyB,EAAE,KAAK;IACxE,2BAA2B;IAC3B,MAAM,SAAS,GAAW,6BAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,6BAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;IAChH,MAAM,aAAa,GAAW,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1E,IAAI,iBAAyB,CAAC;IAC9B,IAAI,gBAAgB,GAAW,EAAE,CAAC;IAElC,MAAM,kCAAkC,GAAuC,IAAI,uEAAkC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAChJ,MAAM,iBAAiB,GAAyD,IAAI,uEAAkC,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;IAE7K,MAAM,SAAS,GACX,6CAA6C;QAC7C,sBAAsB;QACtB,aAAa;QACb,WAAW,aAAa,IAAI;QAC5B,SAAS;QACT,mBAAmB;QACnB,eAAe;QACf,mBAAmB;QACnB,sBAAsB;QACtB,oBAAoB,6BAAa,CAAC,qBAAqB,IAAI;QAC3D,2CAA2C;QAC3C,oBAAoB;QACpB,wBAAwB;QACxB,cAAc,6BAAa,CAAC,uCAAuC,IAAI;QACvE,qBAAqB;QACrB,gDAAgD;QAChD,wBAAwB;QACxB,oBAAoB;QACpB,mCAAmC;QACnC,gCAAgC,CAAC;IAErC,UAAU,CAAC,uCAAuC,EAAE;QAChD,kCAAkC,CAAC,UAAU,EAAE,CAAC;QAChD,kCAAkC,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,kBAAkB,EAAE;QAC9B,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,0CAA0C,EAAE;QAC9C,aAAa,CAAC,uBAAuB,EAAE;YACnC,iBAAiB,CAAC,YAAY,CAAC,GAAG,iBAAiB,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oCAAoC,EAAE;YACvC,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpE,MAAM,WAAW,GAAgB,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC3E,aAAM,CAAC,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE;YACjC,iBAAiB,GAAG,iBAAO,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC;YACpE,aAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+BAA+B,EAAE;YAClC,aAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG,gBAAgB,IAAI,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,6BAAa,CAAC,kCAAkC,CAAC,CAAC;QAC/I,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { KubernetesCommandLineToolsExecutor } from '../../utils/KubernetesCommandLineToolsExecutor';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
import { ShellString } from 'shelljs';
|
|
4
|
-
import { GitUtil } from '../../utils/vsc/GitUtil';
|
|
5
|
-
import { TestConstants } from '../../constants/TestConstants';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const gitRepository: string = 'https://github.com/crw-qe/web-nodejs-sample';
|
|
9
|
-
|
|
10
|
-
suite(`Test cloning of repo "${gitRepository}" into empty workspace.`, async function (): Promise<void> {
|
|
11
|
-
// works only for root user
|
|
12
|
-
const namespace: string = TestConstants.TS_API_TEST_NAMESPACE ? TestConstants.TS_API_TEST_NAMESPACE : undefined;
|
|
13
|
-
const workspaceName: string = 'empty-' + Math.floor(Math.random() * 1000);
|
|
14
|
-
let clonedProjectName: string;
|
|
15
|
-
let containerWorkDir: string = '';
|
|
16
|
-
|
|
17
|
-
const kubernetesCommandLineToolsExecutor: KubernetesCommandLineToolsExecutor = new KubernetesCommandLineToolsExecutor(workspaceName, namespace);
|
|
18
|
-
const containerTerminal: KubernetesCommandLineToolsExecutor.ContainerTerminal = new KubernetesCommandLineToolsExecutor.ContainerTerminal(kubernetesCommandLineToolsExecutor);
|
|
19
|
-
|
|
20
|
-
const emptyYaml: string =
|
|
21
|
-
'apiVersion: workspace.devfile.io/v1alpha2\n' +
|
|
22
|
-
'kind: DevWorkspace\n' +
|
|
23
|
-
'metadata:\n' +
|
|
24
|
-
` name: ${workspaceName}\n` +
|
|
25
|
-
'spec:\n' +
|
|
26
|
-
' started: true\n' +
|
|
27
|
-
' template:\n' +
|
|
28
|
-
' components:\n' +
|
|
29
|
-
' - container:\n' +
|
|
30
|
-
` image: ${TestConstants.TS_API_TEST_UDI_IMAGE}\n` +
|
|
31
|
-
' name: universal-developer-image\n' +
|
|
32
|
-
' contributions:\n' +
|
|
33
|
-
' - name: che-code\n' +
|
|
34
|
-
` uri: ${TestConstants.TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI}\n` +
|
|
35
|
-
' components:\n' +
|
|
36
|
-
' - name: che-code-runtime-description\n' +
|
|
37
|
-
' container:\n' +
|
|
38
|
-
' env:\n' +
|
|
39
|
-
' - name: CODE_HOST\n' +
|
|
40
|
-
' value: 0.0.0.0';
|
|
41
|
-
|
|
42
|
-
suiteSetup('Create empty workspace with OC client', function (): void {
|
|
43
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
44
|
-
kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(emptyYaml);
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
suiteTeardown('Delete workspace', function (): void {
|
|
48
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
suite('Clone public repo without previous setup', function (): void {
|
|
52
|
-
suiteTeardown('Delete cloned project', function (): void {
|
|
53
|
-
containerTerminal.removeFolder(`${clonedProjectName}`);
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
test('Check if public repo can be cloned', function (): void {
|
|
57
|
-
containerWorkDir = containerTerminal.pwd().stdout.replace('\n', '');
|
|
58
|
-
const cloneOutput: ShellString = containerTerminal.gitClone(gitRepository);
|
|
59
|
-
expect(cloneOutput.stdout + cloneOutput.stderr).includes('Cloning');
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
test('Check if project was created', function (): void {
|
|
63
|
-
clonedProjectName = GitUtil.getProjectNameFromGitUrl(gitRepository);
|
|
64
|
-
expect(containerTerminal.ls().stdout).includes(clonedProjectName);
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
test('Check if files were imported ', function (): void {
|
|
68
|
-
expect(containerTerminal.ls(`${containerWorkDir}/${clonedProjectName}`).stdout).includes(TestConstants.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
|