@eclipse-che/che-e2e 7.121.0-next-e9dc673 → 7.121.0-next
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/index.ts +5 -5
- package/package.json +1 -1
- package/dist/configs/inversify.config.js +0 -121
- package/dist/configs/inversify.config.js.map +0 -1
- package/dist/configs/inversify.types.js +0 -73
- package/dist/configs/inversify.types.js.map +0 -1
- package/dist/configs/mocharc.js +0 -42
- package/dist/configs/mocharc.js.map +0 -1
- package/dist/constants/API_TEST_CONSTANTS.js +0 -60
- package/dist/constants/API_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/BASE_TEST_CONSTANTS.js +0 -109
- package/dist/constants/BASE_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/CHROME_DRIVER_CONSTANTS.js +0 -40
- package/dist/constants/CHROME_DRIVER_CONSTANTS.js.map +0 -1
- package/dist/constants/EDITOR_CONSTANTS.js +0 -114
- package/dist/constants/EDITOR_CONSTANTS.js.map +0 -1
- package/dist/constants/FACTORY_TEST_CONSTANTS.js +0 -87
- package/dist/constants/FACTORY_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/MOCHA_CONSTANTS.js +0 -24
- package/dist/constants/MOCHA_CONSTANTS.js.map +0 -1
- package/dist/constants/MONACO_CONSTANTS.js +0 -25
- package/dist/constants/MONACO_CONSTANTS.js.map +0 -1
- package/dist/constants/OAUTH_CONSTANTS.js +0 -53
- package/dist/constants/OAUTH_CONSTANTS.js.map +0 -1
- package/dist/constants/PLUGIN_TEST_CONSTANTS.js +0 -19
- package/dist/constants/PLUGIN_TEST_CONSTANTS.js.map +0 -1
- package/dist/constants/REPORTER_CONSTANTS.js +0 -123
- package/dist/constants/REPORTER_CONSTANTS.js.map +0 -1
- package/dist/constants/TIMEOUT_CONSTANTS.js +0 -101
- package/dist/constants/TIMEOUT_CONSTANTS.js.map +0 -1
- package/dist/driver/ChromeDriver.js +0 -77
- package/dist/driver/ChromeDriver.js.map +0 -1
- package/dist/driver/IDriver.js +0 -3
- package/dist/driver/IDriver.js.map +0 -1
- package/dist/index.js +0 -98
- package/dist/index.js.map +0 -1
- package/dist/pageobjects/dashboard/CreateWorkspace.js +0 -181
- package/dist/pageobjects/dashboard/CreateWorkspace.js.map +0 -1
- package/dist/pageobjects/dashboard/Dashboard.js +0 -208
- package/dist/pageobjects/dashboard/Dashboard.js.map +0 -1
- package/dist/pageobjects/dashboard/TrustAuthorPopup.js +0 -61
- package/dist/pageobjects/dashboard/TrustAuthorPopup.js.map +0 -1
- package/dist/pageobjects/dashboard/UserPreferences.js +0 -268
- package/dist/pageobjects/dashboard/UserPreferences.js.map +0 -1
- package/dist/pageobjects/dashboard/Workspaces.js +0 -242
- package/dist/pageobjects/dashboard/Workspaces.js.map +0 -1
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js +0 -186
- package/dist/pageobjects/dashboard/workspace-details/WorkspaceDetails.js.map +0 -1
- package/dist/pageobjects/git-providers/OauthPage.js +0 -218
- package/dist/pageobjects/git-providers/OauthPage.js.map +0 -1
- package/dist/pageobjects/ide/AiCodeSignInDialog.js +0 -55
- package/dist/pageobjects/ide/AiCodeSignInDialog.js.map +0 -1
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js +0 -108
- package/dist/pageobjects/ide/CheCodeLocatorLoader.js.map +0 -1
- package/dist/pageobjects/ide/CommandPalette.js +0 -117
- package/dist/pageobjects/ide/CommandPalette.js.map +0 -1
- package/dist/pageobjects/ide/ExplorerView.js +0 -108
- package/dist/pageobjects/ide/ExplorerView.js.map +0 -1
- package/dist/pageobjects/ide/ExtensionsView.js +0 -162
- package/dist/pageobjects/ide/ExtensionsView.js.map +0 -1
- package/dist/pageobjects/ide/GitHubExtensionDialog.js +0 -66
- package/dist/pageobjects/ide/GitHubExtensionDialog.js.map +0 -1
- package/dist/pageobjects/ide/NotificationHandler.js +0 -83
- package/dist/pageobjects/ide/NotificationHandler.js.map +0 -1
- package/dist/pageobjects/ide/RestrictedModeButton.js +0 -57
- package/dist/pageobjects/ide/RestrictedModeButton.js.map +0 -1
- package/dist/pageobjects/ide/SourceControlView.js +0 -52
- package/dist/pageobjects/ide/SourceControlView.js.map +0 -1
- package/dist/pageobjects/ide/ViewsMoreActionsButton.js +0 -73
- package/dist/pageobjects/ide/ViewsMoreActionsButton.js.map +0 -1
- package/dist/pageobjects/login/interfaces/ICheLoginPage.js +0 -12
- package/dist/pageobjects/login/interfaces/ICheLoginPage.js.map +0 -1
- package/dist/pageobjects/login/interfaces/IOcpLoginPage.js +0 -12
- package/dist/pageobjects/login/interfaces/IOcpLoginPage.js.map +0 -1
- package/dist/pageobjects/login/kubernetes/DexLoginPage.js +0 -69
- package/dist/pageobjects/login/kubernetes/DexLoginPage.js.map +0 -1
- package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js +0 -50
- package/dist/pageobjects/login/kubernetes/KubernetesLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/OcpLoginPage.js +0 -88
- package/dist/pageobjects/login/openshift/OcpLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js +0 -73
- package/dist/pageobjects/login/openshift/OcpRedHatLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/OcpUserLoginPage.js +0 -53
- package/dist/pageobjects/login/openshift/OcpUserLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/RedHatLoginPage.js +0 -85
- package/dist/pageobjects/login/openshift/RedHatLoginPage.js.map +0 -1
- package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js +0 -65
- package/dist/pageobjects/login/openshift/RegularUserOcpCheLoginPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpApplicationPage.js +0 -60
- package/dist/pageobjects/openshift/OcpApplicationPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js +0 -92
- package/dist/pageobjects/openshift/OcpImportFromGitPage.js.map +0 -1
- package/dist/pageobjects/openshift/OcpMainPage.js +0 -140
- package/dist/pageobjects/openshift/OcpMainPage.js.map +0 -1
- package/dist/pageobjects/webterminal/WebTerminalPage.js +0 -182
- package/dist/pageobjects/webterminal/WebTerminalPage.js.map +0 -1
- package/dist/specs/MochaHooks.js +0 -142
- package/dist/specs/MochaHooks.js.map +0 -1
- package/dist/specs/SmokeTest.spec.js +0 -58
- package/dist/specs/SmokeTest.spec.js.map +0 -1
- package/dist/specs/api/AnsibleDevFileAPI.spec.js +0 -256
- package/dist/specs/api/AnsibleDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js +0 -147
- package/dist/specs/api/BuildPushRunPodmanContainerAPI.spec.js.map +0 -1
- package/dist/specs/api/ContainerOverridesAPI.spec.js +0 -40
- package/dist/specs/api/ContainerOverridesAPI.spec.js.map +0 -1
- package/dist/specs/api/CppDevFileAPI.spec.js +0 -87
- package/dist/specs/api/CppDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js +0 -99
- package/dist/specs/api/DevfileAcceptanceTestAPI.spec.js.map +0 -1
- package/dist/specs/api/DotnetDevFileAPI.spec.js +0 -89
- package/dist/specs/api/DotnetDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js +0 -60
- package/dist/specs/api/EmptyWorkspaceAPI.spec.js.map +0 -1
- package/dist/specs/api/GoDevFileAPI.spec.js +0 -82
- package/dist/specs/api/GoDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js +0 -97
- package/dist/specs/api/InbuiltApplicationDevWorkspacesAPI.spec.js.map +0 -1
- package/dist/specs/api/JBossEapDevFileAPI.spec.js +0 -127
- package/dist/specs/api/JBossEapDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/LombokDevFileAPI.spec.js +0 -81
- package/dist/specs/api/LombokDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js +0 -81
- package/dist/specs/api/NodeJSMongoDBDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js +0 -130
- package/dist/specs/api/NodeJsExpressDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/PhpDevFileAPI.spec.js +0 -71
- package/dist/specs/api/PhpDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/PodOverridesAPI.spec.js +0 -46
- package/dist/specs/api/PodOverridesAPI.spec.js.map +0 -1
- package/dist/specs/api/PythonDevFileAPI.spec.js +0 -71
- package/dist/specs/api/PythonDevFileAPI.spec.js.map +0 -1
- package/dist/specs/api/QuarkusDevFileAPI.spec.js +0 -97
- package/dist/specs/api/QuarkusDevFileAPI.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/Documentation.spec.js +0 -118
- package/dist/specs/dashboard-samples/Documentation.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js +0 -60
- package/dist/specs/dashboard-samples/EmptyWorkspace.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/Quarkus.spec.js +0 -64
- package/dist/specs/dashboard-samples/Quarkus.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js +0 -345
- package/dist/specs/dashboard-samples/RecommendedExtensions.spec.js.map +0 -1
- package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js +0 -171
- package/dist/specs/dashboard-samples/StartWorkspaceUsingDesktopEditors.spec.js.map +0 -1
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js +0 -155
- package/dist/specs/devconsole-intergration/DevConsoleIntegration.spec.js.map +0 -1
- package/dist/specs/factory/Factory.spec.js +0 -183
- package/dist/specs/factory/Factory.spec.js.map +0 -1
- package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js +0 -63
- package/dist/specs/factory/FactoryWithGitRepoOptions.spec.js.map +0 -1
- package/dist/specs/factory/NoSetupRepoFactory.spec.js +0 -212
- package/dist/specs/factory/NoSetupRepoFactory.spec.js.map +0 -1
- package/dist/specs/factory/RefusedOAuthFactory.spec.js +0 -239
- package/dist/specs/factory/RefusedOAuthFactory.spec.js.map +0 -1
- package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js +0 -202
- package/dist/specs/factory/SshUrlNoOauthPatFactory.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js +0 -77
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistedName.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js +0 -106
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromEmptyWorkspaceSample.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js +0 -113
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromGitUrl.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js +0 -116
- package/dist/specs/miscellaneous/CreateWorkspaceWithExistingNameFromSample.spec.js.map +0 -1
- package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js +0 -205
- package/dist/specs/miscellaneous/CustomOpenVSXRegistry.spec.js.map +0 -1
- package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js +0 -129
- package/dist/specs/miscellaneous/ExtensionActivationTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js +0 -121
- package/dist/specs/miscellaneous/KubedockPodmanPersistUserHomeTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js +0 -103
- package/dist/specs/miscellaneous/KubedockPodmanTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js +0 -111
- package/dist/specs/miscellaneous/PredefinedNamespace.spec.js.map +0 -1
- package/dist/specs/miscellaneous/RenameWorkspace.spec.js +0 -116
- package/dist/specs/miscellaneous/RenameWorkspace.spec.js.map +0 -1
- package/dist/specs/miscellaneous/RevokeOauth.spec.js +0 -29
- package/dist/specs/miscellaneous/RevokeOauth.spec.js.map +0 -1
- package/dist/specs/miscellaneous/UserPreferencesTest.spec.js +0 -26
- package/dist/specs/miscellaneous/UserPreferencesTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js +0 -78
- package/dist/specs/miscellaneous/UserSecretsInWorkspace.spec.js.map +0 -1
- package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js +0 -196
- package/dist/specs/miscellaneous/VsixInstallationDisableTest.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js +0 -208
- package/dist/specs/miscellaneous/WorkspaceBackupRestore.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js +0 -84
- package/dist/specs/miscellaneous/WorkspaceIdleTimeout.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js +0 -84
- package/dist/specs/miscellaneous/WorkspaceRunTimeout.spec.js.map +0 -1
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js +0 -101
- package/dist/specs/miscellaneous/WorkspaceWithParent.spec.js.map +0 -1
- package/dist/specs/web-terminal/WebTerminalTest.spec.js +0 -47
- package/dist/specs/web-terminal/WebTerminalTest.spec.js.map +0 -1
- package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js +0 -82
- package/dist/specs/web-terminal/WebTerminalUnderAdmin.spec.js.map +0 -1
- package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js +0 -78
- package/dist/specs/web-terminal/WebTerminalUnderRegularUser.spec.js.map +0 -1
- package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js +0 -13
- package/dist/suites/devfile-acceptance-test-suite/DynamicallyGeneratingAPITest.suite.js.map +0 -1
- package/dist/suites/disconnected-ocp/APITest.suite.js +0 -14
- package/dist/suites/disconnected-ocp/APITest.suite.js.map +0 -1
- package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js +0 -13
- package/dist/suites/disconnected-ocp/DynamicallyGeneratingAPITest.suite.js.map +0 -1
- package/dist/suites/disconnected-ocp/UITest.suite.js +0 -19
- package/dist/suites/disconnected-ocp/UITest.suite.js.map +0 -1
- package/dist/suites/online-ocp/APITest.suite.js +0 -15
- package/dist/suites/online-ocp/APITest.suite.js.map +0 -1
- package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js +0 -13
- package/dist/suites/online-ocp/DynamicallyGeneratingAPITest.suite.js.map +0 -1
- package/dist/suites/online-ocp/UITest.suite.js +0 -23
- package/dist/suites/online-ocp/UITest.suite.js.map +0 -1
- package/dist/tests-library/LoginTests.js +0 -76
- package/dist/tests-library/LoginTests.js.map +0 -1
- package/dist/tests-library/ProjectAndFileTests.js +0 -230
- package/dist/tests-library/ProjectAndFileTests.js.map +0 -1
- package/dist/tests-library/WorkspaceHandlingTests.js +0 -219
- package/dist/tests-library/WorkspaceHandlingTests.js.map +0 -1
- package/dist/utils/BrowserTabsUtil.js +0 -124
- package/dist/utils/BrowserTabsUtil.js.map +0 -1
- package/dist/utils/CheReporter.js +0 -238
- package/dist/utils/CheReporter.js.map +0 -1
- package/dist/utils/DevWorkspaceConfigurationHelper.js +0 -145
- package/dist/utils/DevWorkspaceConfigurationHelper.js.map +0 -1
- package/dist/utils/DevfilesHelper.js +0 -177
- package/dist/utils/DevfilesHelper.js.map +0 -1
- package/dist/utils/DriverHelper.js +0 -609
- package/dist/utils/DriverHelper.js.map +0 -1
- package/dist/utils/IContextParams.js +0 -12
- package/dist/utils/IContextParams.js.map +0 -1
- package/dist/utils/IKubernetesCommandLineToolsExecutor.js +0 -3
- package/dist/utils/IKubernetesCommandLineToolsExecutor.js.map +0 -1
- package/dist/utils/KubernetesCommandLineToolsExecutor.js +0 -338
- package/dist/utils/KubernetesCommandLineToolsExecutor.js.map +0 -1
- package/dist/utils/Logger.js +0 -146
- package/dist/utils/Logger.js.map +0 -1
- package/dist/utils/ScreenCatcher.js +0 -114
- package/dist/utils/ScreenCatcher.js.map +0 -1
- package/dist/utils/ShellExecutor.js +0 -47
- package/dist/utils/ShellExecutor.js.map +0 -1
- package/dist/utils/StringUtil.js +0 -107
- package/dist/utils/StringUtil.js.map +0 -1
- package/dist/utils/request-handlers/CheApiRequestHandler.js +0 -128
- package/dist/utils/request-handlers/CheApiRequestHandler.js.map +0 -1
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js +0 -55
- package/dist/utils/request-handlers/headers/CheMultiuserAuthorizationHeaderHandler.js.map +0 -1
- package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js +0 -12
- package/dist/utils/request-handlers/headers/IAuthorizationHeaderHandler.js.map +0 -1
- package/dist/utils/workspace/ApiUrlResolver.js +0 -117
- package/dist/utils/workspace/ApiUrlResolver.js.map +0 -1
- package/dist/utils/workspace/ITestWorkspaceUtil.js +0 -12
- package/dist/utils/workspace/ITestWorkspaceUtil.js.map +0 -1
- package/dist/utils/workspace/TestWorkspaceUtil.js +0 -202
- package/dist/utils/workspace/TestWorkspaceUtil.js.map +0 -1
- package/dist/utils/workspace/WorkspaceStatus.js +0 -19
- package/dist/utils/workspace/WorkspaceStatus.js.map +0 -1
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/** *******************************************************************
|
|
4
|
-
* copyright (c) 2025 Red Hat, Inc.
|
|
5
|
-
*
|
|
6
|
-
* This program and the accompanying materials are made
|
|
7
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
8
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
9
|
-
*
|
|
10
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
11
|
-
**********************************************************************/
|
|
12
|
-
const chai_1 = require("chai");
|
|
13
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
14
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
15
|
-
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
16
|
-
const WorkspaceHandlingTests_1 = require("../../tests-library/WorkspaceHandlingTests");
|
|
17
|
-
const MochaHooks_1 = require("../MochaHooks");
|
|
18
|
-
const FACTORY_TEST_CONSTANTS_1 = require("../../constants/FACTORY_TEST_CONSTANTS");
|
|
19
|
-
suite(`Test podman build container functionality ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
20
|
-
const projectAndFileTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ProjectAndFileTests);
|
|
21
|
-
const workspaceHandlingTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.WorkspaceHandlingTests);
|
|
22
|
-
const loginTests = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.LoginTests);
|
|
23
|
-
const browserTabsUtil = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.BrowserTabsUtil);
|
|
24
|
-
const testWorkspaceUtil = inversify_config_1.e2eContainer.get(inversify_types_1.TYPES.WorkspaceUtil);
|
|
25
|
-
const dashboard = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.Dashboard);
|
|
26
|
-
const shellExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
|
|
27
|
-
let kubernetesCommandLineToolsExecutor;
|
|
28
|
-
let workspaceName = '';
|
|
29
|
-
let originalBuildCapabilitiesSetting = '';
|
|
30
|
-
let devSpacesNamespace = '';
|
|
31
|
-
let cheClusterName = '';
|
|
32
|
-
/**
|
|
33
|
-
* test requires the following files to be present in the workspace root:
|
|
34
|
-
* - A Dockerfile named Dockerfile.${ARCH} with content:
|
|
35
|
-
* FROM scratch
|
|
36
|
-
* COPY hello /hello
|
|
37
|
-
* CMD ["/hello"]
|
|
38
|
-
* - A compiled 'hello' binary, that prints "Hello from Kubedock!" to output.
|
|
39
|
-
*
|
|
40
|
-
* Used to build and run a container in a pod for verifying Podman functionality.
|
|
41
|
-
*/
|
|
42
|
-
const buildPushScript = `
|
|
43
|
-
export ARCH=$(uname -m)
|
|
44
|
-
export DATE=$(date +"%m%d%y")
|
|
45
|
-
export USER=$(oc whoami)
|
|
46
|
-
export TKN=$(oc whoami -t)
|
|
47
|
-
export REG="image-registry.openshift-image-registry.svc:5000"
|
|
48
|
-
export PROJECT=$(oc project -q)
|
|
49
|
-
export IMG="\${REG}/\${PROJECT}/hello:\${DATE}"
|
|
50
|
-
cd $PROJECT_SOURCE
|
|
51
|
-
|
|
52
|
-
podman login --tls-verify=false --username "\${USER}" --password "\${TKN}" "\${REG}"
|
|
53
|
-
podman build -t "\${IMG}" -f Dockerfile.\${ARCH} .
|
|
54
|
-
podman push --tls-verify=false "\${IMG}"
|
|
55
|
-
`;
|
|
56
|
-
const runTestScript = `
|
|
57
|
-
export DATE=$(date +"%m%d%y")
|
|
58
|
-
export REG="image-registry.openshift-image-registry.svc:5000"
|
|
59
|
-
export PROJECT=$(oc project -q)
|
|
60
|
-
export IMG="\${REG}/\${PROJECT}/hello:\${DATE}"
|
|
61
|
-
|
|
62
|
-
oc delete pod test-hello-pod --ignore-not-found
|
|
63
|
-
oc run test-hello-pod --restart=Never --image="\${IMG}"
|
|
64
|
-
|
|
65
|
-
if ! oc wait --for=jsonpath='{.status.phase}'=Succeeded pod/test-hello-pod --timeout=60s; then
|
|
66
|
-
PHASE=$(oc get pod test-hello-pod -o jsonpath='{.status.phase}')
|
|
67
|
-
if [[ "$PHASE" == "Failed" ]]; then
|
|
68
|
-
oc describe pod test-hello-pod
|
|
69
|
-
exit 1
|
|
70
|
-
fi
|
|
71
|
-
fi
|
|
72
|
-
|
|
73
|
-
oc logs test-hello-pod
|
|
74
|
-
`;
|
|
75
|
-
const factoryUrl = BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.IS_CLUSTER_DISCONNECTED()
|
|
76
|
-
? FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_AIRGAP_FACTORY_GIT_REPO_URL ||
|
|
77
|
-
'https://gh.crw-qe.com/test-automation-only/dockerfile-hello-world'
|
|
78
|
-
: FACTORY_TEST_CONSTANTS_1.FACTORY_TEST_CONSTANTS.TS_SELENIUM_FACTORY_GIT_REPO_URL || 'https://github.com/crw-qe/dockerfile-hello-world';
|
|
79
|
-
suiteSetup('Setup DevSpaces with container build capabilities enabled', function () {
|
|
80
|
-
kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
81
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
82
|
-
// get the namespace where DevSpaces is installed
|
|
83
|
-
const getDevSpacesNamespaceCommand = 'oc get checluster --all-namespaces -o jsonpath="{.items[0].metadata.namespace}"';
|
|
84
|
-
devSpacesNamespace = shellExecutor.executeCommand(getDevSpacesNamespaceCommand).stdout.trim();
|
|
85
|
-
// get the name of the CheCluster
|
|
86
|
-
const getCheClusterNameCommand = `oc get checluster -n ${devSpacesNamespace} -o jsonpath='{.items[0].metadata.name}'`;
|
|
87
|
-
cheClusterName = shellExecutor.executeCommand(getCheClusterNameCommand).stdout.trim();
|
|
88
|
-
// get the original value of disableContainerBuildCapabilities
|
|
89
|
-
const getOriginalSettingCommand = `oc get checluster/${cheClusterName} -n ${devSpacesNamespace} -o jsonpath='{.spec.devEnvironments.disableContainerBuildCapabilities}'`;
|
|
90
|
-
originalBuildCapabilitiesSetting = shellExecutor.executeCommand(getOriginalSettingCommand).stdout.trim();
|
|
91
|
-
// patch the CheCluster to enable container build capabilities
|
|
92
|
-
const patchCommand = `oc patch checluster/${cheClusterName} -n ${devSpacesNamespace} --type=merge -p '{"spec":{"devEnvironments":{"disableContainerBuildCapabilities":false}}}'`;
|
|
93
|
-
const patchResult = shellExecutor.executeCommand(patchCommand);
|
|
94
|
-
(0, chai_1.expect)(patchResult.code).to.equal(0, 'Failed to patch CheCluster to enable container build capabilities');
|
|
95
|
-
});
|
|
96
|
-
suiteSetup('Login into DevSpaces', async function () {
|
|
97
|
-
await loginTests.loginIntoChe();
|
|
98
|
-
});
|
|
99
|
-
test(`Create and open new workspace from: ${factoryUrl}`, async function () {
|
|
100
|
-
await workspaceHandlingTests.createAndOpenWorkspaceFromGitRepository(factoryUrl);
|
|
101
|
-
await workspaceHandlingTests.obtainWorkspaceNameFromStartingPage();
|
|
102
|
-
workspaceName = WorkspaceHandlingTests_1.WorkspaceHandlingTests.getWorkspaceName();
|
|
103
|
-
(0, chai_1.expect)(workspaceName, 'Workspace name was not detected').not.empty;
|
|
104
|
-
(0, MochaHooks_1.registerRunningWorkspace)(workspaceName);
|
|
105
|
-
});
|
|
106
|
-
test('Wait for workspace readiness', async function () {
|
|
107
|
-
await projectAndFileTests.waitWorkspaceReadinessForCheCodeEditor();
|
|
108
|
-
});
|
|
109
|
-
test('Check the project files were imported', async function () {
|
|
110
|
-
const projectSection = await projectAndFileTests.getProjectViewSession();
|
|
111
|
-
(0, chai_1.expect)(await projectAndFileTests.getProjectTreeItem(projectSection, 'Dockerfile.x86_64'), 'Dockerfile not found in the project tree').not.undefined;
|
|
112
|
-
await projectAndFileTests.performTrustDialogs();
|
|
113
|
-
});
|
|
114
|
-
test('Build and push container image from workspace', function () {
|
|
115
|
-
kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
116
|
-
kubernetesCommandLineToolsExecutor.workspaceName = workspaceName;
|
|
117
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
118
|
-
kubernetesCommandLineToolsExecutor.getPodAndContainerNames();
|
|
119
|
-
kubernetesCommandLineToolsExecutor.execInContainerCommand(buildPushScript);
|
|
120
|
-
});
|
|
121
|
-
test('Verify container image can be used in a pod', function () {
|
|
122
|
-
const runTestScriptOutput = kubernetesCommandLineToolsExecutor.execInContainerCommand(runTestScript);
|
|
123
|
-
(0, chai_1.expect)(runTestScriptOutput.stdout).to.include('Hello from Kubedock!', 'Expected "Hello from Kubedock!" message not found in logs');
|
|
124
|
-
});
|
|
125
|
-
suiteTeardown('Open dashboard and close all other tabs', async function () {
|
|
126
|
-
await dashboard.openDashboard();
|
|
127
|
-
await browserTabsUtil.closeAllTabsExceptCurrent();
|
|
128
|
-
});
|
|
129
|
-
suiteTeardown('Stop and delete the workspace by API', async function () {
|
|
130
|
-
await testWorkspaceUtil.stopAndDeleteWorkspaceByName(workspaceName);
|
|
131
|
-
});
|
|
132
|
-
suiteTeardown('Unregister running workspace', function () {
|
|
133
|
-
(0, MochaHooks_1.registerRunningWorkspace)('');
|
|
134
|
-
});
|
|
135
|
-
suiteTeardown('Restore DevSpaces container build capabilities setting', function () {
|
|
136
|
-
kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
137
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
138
|
-
// default to false if value wasn't found
|
|
139
|
-
const validSetting = ['true', 'false'].includes(originalBuildCapabilitiesSetting)
|
|
140
|
-
? originalBuildCapabilitiesSetting
|
|
141
|
-
: 'false';
|
|
142
|
-
const restorePatchCommand = `oc patch checluster/${cheClusterName} -n ${devSpacesNamespace} --type=merge -p '{"spec":{"devEnvironments":{"disableContainerBuildCapabilities":${validSetting}}}}'`;
|
|
143
|
-
const restorePatchResult = shellExecutor.executeCommand(restorePatchCommand);
|
|
144
|
-
(0, chai_1.expect)(restorePatchResult.code).to.equal(0, 'Failed to restore CheCluster container build capabilities setting');
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
//# sourceMappingURL=BuildPushRunPodmanContainerAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BuildPushRunPodmanContainerAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/BuildPushRunPodmanContainerAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +0,0 @@
|
|
|
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
|
-
const fs_1 = __importDefault(require("fs"));
|
|
7
|
-
const path_1 = __importDefault(require("path"));
|
|
8
|
-
const yaml_1 = __importDefault(require("yaml"));
|
|
9
|
-
const chai_1 = require("chai");
|
|
10
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
11
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
12
|
-
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
13
|
-
suite(`Test defining container overrides via attribute ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
14
|
-
const pathToSampleFile = path_1.default.resolve('resources/container-overrides.yaml');
|
|
15
|
-
const workspaceName = yaml_1.default.parse(fs_1.default.readFileSync(pathToSampleFile, 'utf8')).metadata.name;
|
|
16
|
-
const kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
17
|
-
kubernetesCommandLineToolsExecutor.workspaceName = workspaceName;
|
|
18
|
-
const shellExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ShellExecutor);
|
|
19
|
-
suiteSetup('Login into OC client', function () {
|
|
20
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
21
|
-
});
|
|
22
|
-
suiteTeardown('Delete DevWorkspace', function () {
|
|
23
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
24
|
-
});
|
|
25
|
-
test('Apply container-overrides sample as DevWorkspace with OC client', function () {
|
|
26
|
-
kubernetesCommandLineToolsExecutor.applyYamlConfigurationAsFile(pathToSampleFile);
|
|
27
|
-
shellExecutor.wait(5);
|
|
28
|
-
});
|
|
29
|
-
test('Check that fields are overridden in the Deployment for DevWorkspace', function () {
|
|
30
|
-
const devWorkspaceFullYamlOutput = yaml_1.default.parse(kubernetesCommandLineToolsExecutor.getDevWorkspaceYamlConfiguration());
|
|
31
|
-
(0, chai_1.expect)(devWorkspaceFullYamlOutput.spec.template.components[0].attributes['container-overrides']).eqls({
|
|
32
|
-
resources: {
|
|
33
|
-
limits: {
|
|
34
|
-
'nvidia.com/gpu': '1'
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
//# sourceMappingURL=ContainerOverridesAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ContainerOverridesAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/ContainerOverridesAPI.spec.ts"],"names":[],"mappings":";;;;;AAUA,4CAAoB;AACpB,gDAAwB;AACxB,gDAAwB;AACxB,+BAA8B;AAE9B,qEAA8D;AAC9D,mEAAwD;AACxD,6EAA0E;AAE1E,KAAK,CAAC,mDAAmD,yCAAmB,CAAC,gBAAgB,EAAE,EAAE;IAChG,MAAM,gBAAgB,GAAW,cAAI,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;IACpF,MAAM,aAAa,GAAW,cAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClG,MAAM,kCAAkC,GAAuC,+BAAY,CAAC,GAAG,CAC9F,yBAAO,CAAC,kCAAkC,CAC1C,CAAC;IACF,kCAAkC,CAAC,aAAa,GAAG,aAAa,CAAC;IACjE,MAAM,aAAa,GAAkB,+BAAY,CAAC,GAAG,CAAC,yBAAO,CAAC,aAAa,CAAC,CAAC;IAE7E,UAAU,CAAC,sBAAsB,EAAE;QAClC,kCAAkC,CAAC,UAAU,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,qBAAqB,EAAE;QACpC,kCAAkC,CAAC,kBAAkB,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iEAAiE,EAAE;QACvE,kCAAkC,CAAC,4BAA4B,CAAC,gBAAgB,CAAC,CAAC;QAClF,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qEAAqE,EAAE;QAC3E,MAAM,0BAA0B,GAAQ,cAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,gCAAgC,EAAE,CAAC,CAAC;QAC1H,IAAA,aAAM,EAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC;YACrG,SAAS,EAAE;gBACV,MAAM,EAAE;oBACP,gBAAgB,EAAE,GAAG;iBACrB;aACD;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/** *******************************************************************
|
|
3
|
-
* copyright (c) 2024 Red Hat, Inc.
|
|
4
|
-
*
|
|
5
|
-
* This program and the accompanying materials are made
|
|
6
|
-
* available under the terms of the Eclipse Public License 2.0
|
|
7
|
-
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
|
8
|
-
*
|
|
9
|
-
* SPDX-License-Identifier: EPL-2.0
|
|
10
|
-
**********************************************************************/
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
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('Cpp 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 = 'cpp';
|
|
28
|
-
const containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
|
|
29
|
-
let devWorkspaceConfigurationHelper;
|
|
30
|
-
let devfileContext;
|
|
31
|
-
let devfileContent = '';
|
|
32
|
-
let devfileName = '';
|
|
33
|
-
const workDirPath = 'c-plus-plus/strings';
|
|
34
|
-
const fileName = 'knuth_morris_pratt.cpp';
|
|
35
|
-
const tasksJsonPath = 'c-plus-plus/.vscode/tasks.json';
|
|
36
|
-
suiteSetup(`Prepare login ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
37
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
38
|
-
});
|
|
39
|
-
test(`Create ${devfileID} workspace`, async function () {
|
|
40
|
-
const randomPref = crypto_1.default.randomBytes(4).toString('hex');
|
|
41
|
-
kubernetesCommandLineToolsExecutor.namespace = API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_NAMESPACE;
|
|
42
|
-
devfileContent = devfilesRegistryHelper.getDevfileContent(devfileID);
|
|
43
|
-
const editorDevfileContent = devfilesRegistryHelper.obtainCheDevFileEditorFromCheConfigMap('editors-definitions');
|
|
44
|
-
devfileName = yaml_1.default.parse(devfileContent).metadata.name;
|
|
45
|
-
const uniqueName = yaml_1.default.parse(devfileContent).metadata.name + randomPref;
|
|
46
|
-
kubernetesCommandLineToolsExecutor.workspaceName = uniqueName;
|
|
47
|
-
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
48
|
-
editorContent: editorDevfileContent,
|
|
49
|
-
devfileContent: devfileContent
|
|
50
|
-
});
|
|
51
|
-
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
52
|
-
if (devfileContext.devWorkspace.metadata) {
|
|
53
|
-
devfileContext.devWorkspace.metadata.name = uniqueName;
|
|
54
|
-
}
|
|
55
|
-
const devWorkspaceConfigurationYamlString = devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
56
|
-
const output = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
57
|
-
(0, chai_1.expect)(output.stdout).contains('condition met');
|
|
58
|
-
});
|
|
59
|
-
test('Check commands', function () {
|
|
60
|
-
let output;
|
|
61
|
-
const toolsComponent = yaml_1.default.parse(devfileContent).components.find((component) => component.name === 'tools');
|
|
62
|
-
const containerName = toolsComponent ? toolsComponent.name : 'Component not found';
|
|
63
|
-
Logger_1.Logger.info(`container from components section of Devfile:: ${containerName}`);
|
|
64
|
-
const tasksJsonContent = containerTerminal.execInContainerCommand(`cat ${tasksJsonPath}`, containerName).stdout;
|
|
65
|
-
const parsedJson = yaml_1.default.parse(tasksJsonContent);
|
|
66
|
-
Logger_1.Logger.info('"Check \'build current algorithm\' command"');
|
|
67
|
-
const buildTaskCommand = parsedJson.tasks[0].command;
|
|
68
|
-
const buildCommand = buildTaskCommand.replaceAll('${file}', fileName).replaceAll(/'/g, '"');
|
|
69
|
-
Logger_1.Logger.info(`commandLine from tasks.json file of project: ${buildCommand}`);
|
|
70
|
-
const runCommandInBash = `cd ${workDirPath} && ${buildCommand}`;
|
|
71
|
-
output = containerTerminal.execInContainerCommand(runCommandInBash, containerName);
|
|
72
|
-
(0, chai_1.expect)(output.code).eqls(0);
|
|
73
|
-
(0, chai_1.expect)(output.stdout.trim()).contains('Build complete');
|
|
74
|
-
Logger_1.Logger.info('"Check \'run current algorithm\' command"');
|
|
75
|
-
const runTaskCommand = parsedJson.tasks[1].command;
|
|
76
|
-
const runCommand = runTaskCommand.replaceAll('${file}', fileName).replaceAll(/'/g, '"');
|
|
77
|
-
Logger_1.Logger.info(`commandLine from tasks.json file of project: ${runCommand}`);
|
|
78
|
-
const runCommandInBash2 = `cd ${workDirPath} && ${runCommand}`;
|
|
79
|
-
output = containerTerminal.execInContainerCommand(runCommandInBash2, containerName);
|
|
80
|
-
(0, chai_1.expect)(output.code).eqls(0);
|
|
81
|
-
(0, chai_1.expect)(output.stdout.trim()).contains('Found');
|
|
82
|
-
});
|
|
83
|
-
suiteTeardown('Delete workspace', function () {
|
|
84
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace(devfileName);
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
//# sourceMappingURL=CppDevFileAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CppDevFileAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/CppDevFileAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const DevWorkspaceConfigurationHelper_1 = require("../../utils/DevWorkspaceConfigurationHelper");
|
|
4
|
-
const chai_1 = require("chai");
|
|
5
|
-
const StringUtil_1 = require("../../utils/StringUtil");
|
|
6
|
-
const Logger_1 = require("../../utils/Logger");
|
|
7
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
8
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
9
|
-
const MOCHA_CONSTANTS_1 = require("../../constants/MOCHA_CONSTANTS");
|
|
10
|
-
const API_TEST_CONSTANTS_1 = require("../../constants/API_TEST_CONSTANTS");
|
|
11
|
-
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
12
|
-
/**
|
|
13
|
-
* dynamically generating tests
|
|
14
|
-
* info: https://mochajs.org/#delayed-root-suite
|
|
15
|
-
*/
|
|
16
|
-
void (async function () {
|
|
17
|
-
const devfilesRegistryHelper = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.DevfilesRegistryHelper);
|
|
18
|
-
let devfileSamples = [];
|
|
19
|
-
if (MOCHA_CONSTANTS_1.MOCHA_CONSTANTS.MOCHA_DELAYED_SUITE &&
|
|
20
|
-
!API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_ACCEPTANCE_TEST_REGISTRY_URL().includes(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_BASE_URL)) {
|
|
21
|
-
devfileSamples = await devfilesRegistryHelper.collectPathsToDevfilesFromRegistry(false);
|
|
22
|
-
}
|
|
23
|
-
for (const devfileSample of devfileSamples) {
|
|
24
|
-
suite(`Devfile acceptance test suite for ${devfileSample.name}`, function () {
|
|
25
|
-
this.bail(false);
|
|
26
|
-
this.timeout(1500000); // 25 minutes because build of Quarkus sample takes 20+ minutes
|
|
27
|
-
let devWorkspaceConfigurationHelper;
|
|
28
|
-
let kubernetesCommandLineToolsExecutor;
|
|
29
|
-
let containerTerminal;
|
|
30
|
-
let devfileContext;
|
|
31
|
-
let devWorkspaceName;
|
|
32
|
-
let clonedProjectName;
|
|
33
|
-
let containerWorkDir;
|
|
34
|
-
const devfilesBuildCommands = [];
|
|
35
|
-
test('Get DevWorkspace configuration', async function () {
|
|
36
|
-
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
37
|
-
devfileUrl: devfileSample.link
|
|
38
|
-
});
|
|
39
|
-
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
40
|
-
devWorkspaceName = devfileContext?.devWorkspace?.metadata?.name;
|
|
41
|
-
kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
42
|
-
kubernetesCommandLineToolsExecutor.workspaceName = devWorkspaceName;
|
|
43
|
-
containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
|
|
44
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
45
|
-
});
|
|
46
|
-
test('Collect build commands from the devfile', function () {
|
|
47
|
-
if (devfileContext.devfile.commands === undefined) {
|
|
48
|
-
Logger_1.Logger.info('Devfile does not contains any commands.');
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
devfileContext.devfile?.commands?.forEach((command) => {
|
|
52
|
-
if (command.exec?.group?.kind === 'build') {
|
|
53
|
-
Logger_1.Logger.debug(`Build command found: ${command.exec.commandLine}`);
|
|
54
|
-
devfilesBuildCommands.push(command);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
test('Create DevWorkspace', function () {
|
|
60
|
-
const devWorkspaceConfigurationYamlString = devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
61
|
-
const applyOutput = kubernetesCommandLineToolsExecutor.applyYamlConfigurationAsStringOutput(devWorkspaceConfigurationYamlString);
|
|
62
|
-
(0, chai_1.expect)(applyOutput.stdout)
|
|
63
|
-
.contains('devworkspacetemplate')
|
|
64
|
-
.and.contains('devworkspace')
|
|
65
|
-
.and.contains.oneOf(['created', 'configured']);
|
|
66
|
-
});
|
|
67
|
-
test('Wait until DevWorkspace has status "ready"', function () {
|
|
68
|
-
(0, chai_1.expect)(kubernetesCommandLineToolsExecutor.waitDevWorkspace().stdout).contains('condition met');
|
|
69
|
-
});
|
|
70
|
-
test('Check if project was created', function () {
|
|
71
|
-
clonedProjectName = StringUtil_1.StringUtil.getProjectNameFromGitUrl(devfileSample.link);
|
|
72
|
-
(0, chai_1.expect)(containerTerminal.ls().stdout).includes(clonedProjectName);
|
|
73
|
-
});
|
|
74
|
-
test('Check if project files are imported', function () {
|
|
75
|
-
containerWorkDir = containerTerminal.pwd().stdout.replace('\n', '');
|
|
76
|
-
(0, chai_1.expect)(containerTerminal.ls(`${containerWorkDir}/${clonedProjectName}`).stdout).includes('devfile.yaml');
|
|
77
|
-
});
|
|
78
|
-
test('Check if build commands returns success', function () {
|
|
79
|
-
if (devfilesBuildCommands.length === 0) {
|
|
80
|
-
Logger_1.Logger.info('Devfile does not contains build commands.');
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
devfilesBuildCommands.forEach((command) => {
|
|
84
|
-
Logger_1.Logger.info(`command.exec: ${JSON.stringify(command.exec)}`);
|
|
85
|
-
const commandString = StringUtil_1.StringUtil.updateCommandEnvsToShStyle(`cd ${command.exec.workingDir} && ${command.exec.commandLine}`);
|
|
86
|
-
Logger_1.Logger.info(`Full build command to be executed: ${commandString}`);
|
|
87
|
-
const output = containerTerminal.execInContainerCommand(commandString, command.exec.component);
|
|
88
|
-
(0, chai_1.expect)(output.code).eqls(0);
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
test('Delete DevWorkspace', function () {
|
|
93
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
run();
|
|
98
|
-
})();
|
|
99
|
-
//# sourceMappingURL=DevfileAcceptanceTestAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DevfileAcceptanceTestAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/DevfileAcceptanceTestAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,89 +0,0 @@
|
|
|
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) 2024 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('Dotnet 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 = 'dotnet';
|
|
28
|
-
const containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
|
|
29
|
-
let devWorkspaceConfigurationHelper;
|
|
30
|
-
let devfileContext;
|
|
31
|
-
let devfileContent = '';
|
|
32
|
-
let devfileName = '';
|
|
33
|
-
suiteSetup(`Prepare login ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
34
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
35
|
-
});
|
|
36
|
-
test(`Create ${devfileID} workspace`, async function () {
|
|
37
|
-
const randomPref = crypto_1.default.randomBytes(4).toString('hex');
|
|
38
|
-
kubernetesCommandLineToolsExecutor.namespace = API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_NAMESPACE;
|
|
39
|
-
devfileContent = devfilesRegistryHelper.getDevfileContent(devfileID);
|
|
40
|
-
const editorDevfileContent = devfilesRegistryHelper.obtainCheDevFileEditorFromCheConfigMap('editors-definitions');
|
|
41
|
-
devfileName = yaml_1.default.parse(devfileContent).metadata.name;
|
|
42
|
-
const uniqueName = yaml_1.default.parse(devfileContent).metadata.name + randomPref;
|
|
43
|
-
kubernetesCommandLineToolsExecutor.workspaceName = uniqueName;
|
|
44
|
-
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
45
|
-
editorContent: editorDevfileContent,
|
|
46
|
-
devfileContent: devfileContent
|
|
47
|
-
});
|
|
48
|
-
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
49
|
-
if (devfileContext.devWorkspace.metadata) {
|
|
50
|
-
devfileContext.devWorkspace.metadata.name = uniqueName;
|
|
51
|
-
}
|
|
52
|
-
const devWorkspaceConfigurationYamlString = devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
53
|
-
const output = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
54
|
-
(0, chai_1.expect)(output.stdout).contains('condition met');
|
|
55
|
-
});
|
|
56
|
-
test('Check devfile commands', function () {
|
|
57
|
-
const workdir = yaml_1.default.parse(devfileContent).commands[0].exec.workingDir;
|
|
58
|
-
const containerName = yaml_1.default.parse(devfileContent).commands[0].exec.component;
|
|
59
|
-
const updateCommandLine = yaml_1.default.parse(devfileContent).commands[0].exec.commandLine;
|
|
60
|
-
Logger_1.Logger.info(`workdir from exec section of DevFile: ${workdir}`);
|
|
61
|
-
Logger_1.Logger.info(`containerName from exec section of DevFile: ${containerName}`);
|
|
62
|
-
Logger_1.Logger.info('"Test \'update-dependencies\' command execution"');
|
|
63
|
-
Logger_1.Logger.info(`commandLine from exec section of DevFile file: ${updateCommandLine}`);
|
|
64
|
-
const runCommandInBash = `cd ${workdir} && ${updateCommandLine}`;
|
|
65
|
-
const output = containerTerminal.execInContainerCommand(runCommandInBash, containerName);
|
|
66
|
-
(0, chai_1.expect)(output.code).eqls(0);
|
|
67
|
-
(0, chai_1.expect)(output.stdout.trim()).contains('Restored /projects/dotnet-web-simple/web.csproj');
|
|
68
|
-
Logger_1.Logger.info('"Test \'build\' command execution"');
|
|
69
|
-
const buildCommandLine = yaml_1.default.parse(devfileContent).commands[1].exec.commandLine;
|
|
70
|
-
Logger_1.Logger.info(`commandLine from exec section of DevFile: ${buildCommandLine}`);
|
|
71
|
-
const runCommandInBash2 = `cd ${workdir} && ${buildCommandLine}`;
|
|
72
|
-
const output2 = containerTerminal.execInContainerCommand(runCommandInBash2, containerName);
|
|
73
|
-
(0, chai_1.expect)(output2.code).eqls(0);
|
|
74
|
-
(0, chai_1.expect)(output2.stdout.trim()).contains('Build succeeded');
|
|
75
|
-
Logger_1.Logger.info('"Test \'run\' command execution"');
|
|
76
|
-
const runCommandLine = yaml_1.default.parse(devfileContent).commands[2].exec.commandLine;
|
|
77
|
-
Logger_1.Logger.info(`commandLine from exec section of DevFile: ${runCommandLine}`);
|
|
78
|
-
const runCommandInBash3 = `cd ${workdir} && sh -c "(${runCommandLine} > server.log 2>&1 &) && sleep 20s && exit"`;
|
|
79
|
-
const output3 = containerTerminal.execInContainerCommand(runCommandInBash3, containerName);
|
|
80
|
-
(0, chai_1.expect)(output3.code).eqls(0);
|
|
81
|
-
const logOutput = containerTerminal.execInContainerCommand(`cat ${workdir}/server.log`, containerName);
|
|
82
|
-
Logger_1.Logger.info(`Log output: ${logOutput.stdout}`);
|
|
83
|
-
(0, chai_1.expect)(logOutput.stdout.trim()).contains('Content root path: /projects/dotnet-web-simple');
|
|
84
|
-
});
|
|
85
|
-
suiteTeardown('Delete DevWorkspace', function () {
|
|
86
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace(devfileName);
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
//# sourceMappingURL=DotnetDevFileAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DotnetDevFileAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/DotnetDevFileAPI.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const chai_1 = require("chai");
|
|
4
|
-
const StringUtil_1 = require("../../utils/StringUtil");
|
|
5
|
-
const DevWorkspaceConfigurationHelper_1 = require("../../utils/DevWorkspaceConfigurationHelper");
|
|
6
|
-
const API_TEST_CONSTANTS_1 = require("../../constants/API_TEST_CONSTANTS");
|
|
7
|
-
const BASE_TEST_CONSTANTS_1 = require("../../constants/BASE_TEST_CONSTANTS");
|
|
8
|
-
const inversify_config_1 = require("../../configs/inversify.config");
|
|
9
|
-
const inversify_types_1 = require("../../configs/inversify.types");
|
|
10
|
-
suite('Empty workspace API test', function () {
|
|
11
|
-
// works only for root user
|
|
12
|
-
const namespace = API_TEST_CONSTANTS_1.API_TEST_CONSTANTS.TS_API_TEST_NAMESPACE;
|
|
13
|
-
let clonedProjectName;
|
|
14
|
-
let containerWorkDir;
|
|
15
|
-
let devWorkspaceConfigurationHelper;
|
|
16
|
-
let kubernetesCommandLineToolsExecutor;
|
|
17
|
-
let devfileContext;
|
|
18
|
-
let devWorkspaceName;
|
|
19
|
-
let containerTerminal;
|
|
20
|
-
const gitRepository = 'https://github.com/crw-qe/web-nodejs-sample';
|
|
21
|
-
suiteSetup(`Create empty workspace with OC client ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, async function () {
|
|
22
|
-
const workspaceName = 'empty-' + Math.floor(Math.random() * 1000);
|
|
23
|
-
const devfileContent = 'schemaVersion: 2.2.0\n' + 'metadata:\n' + ` name: ${workspaceName}\n`;
|
|
24
|
-
const editorContent = '';
|
|
25
|
-
devWorkspaceConfigurationHelper = new DevWorkspaceConfigurationHelper_1.DevWorkspaceConfigurationHelper({
|
|
26
|
-
devfileContent,
|
|
27
|
-
editorContent
|
|
28
|
-
});
|
|
29
|
-
devfileContext = await devWorkspaceConfigurationHelper.generateDevfileContext();
|
|
30
|
-
devWorkspaceName = devfileContext?.devWorkspace?.metadata?.name;
|
|
31
|
-
kubernetesCommandLineToolsExecutor = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.KubernetesCommandLineToolsExecutor);
|
|
32
|
-
kubernetesCommandLineToolsExecutor.workspaceName = devWorkspaceName;
|
|
33
|
-
kubernetesCommandLineToolsExecutor.namespace = namespace;
|
|
34
|
-
containerTerminal = inversify_config_1.e2eContainer.get(inversify_types_1.CLASSES.ContainerTerminal);
|
|
35
|
-
});
|
|
36
|
-
test('Create empty workspace', function () {
|
|
37
|
-
kubernetesCommandLineToolsExecutor.loginToOcp();
|
|
38
|
-
const devWorkspaceConfigurationYamlString = devWorkspaceConfigurationHelper.getDevWorkspaceConfigurationYamlAsString(devfileContext);
|
|
39
|
-
const output = kubernetesCommandLineToolsExecutor.applyAndWaitDevWorkspace(devWorkspaceConfigurationYamlString);
|
|
40
|
-
(0, chai_1.expect)(output.stdout).contains('condition met');
|
|
41
|
-
});
|
|
42
|
-
suite(`Clone public repo without previous setup ${BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TEST_ENVIRONMENT}`, function () {
|
|
43
|
-
test('Check if public repo can be cloned', function () {
|
|
44
|
-
containerWorkDir = containerTerminal.pwd().stdout.replace('\n', '');
|
|
45
|
-
const cloneOutput = containerTerminal.gitClone(gitRepository);
|
|
46
|
-
(0, chai_1.expect)(cloneOutput.stdout + cloneOutput.stderr).includes('Cloning');
|
|
47
|
-
});
|
|
48
|
-
test('Check if project was created', function () {
|
|
49
|
-
clonedProjectName = StringUtil_1.StringUtil.getProjectNameFromGitUrl(gitRepository);
|
|
50
|
-
(0, chai_1.expect)(containerTerminal.ls().stdout).includes(clonedProjectName);
|
|
51
|
-
});
|
|
52
|
-
test('Check if project files are imported', function () {
|
|
53
|
-
(0, chai_1.expect)(containerTerminal.ls(`${containerWorkDir}/${clonedProjectName}`).stdout).includes(BASE_TEST_CONSTANTS_1.BASE_TEST_CONSTANTS.TS_SELENIUM_PROJECT_ROOT_FILE_NAME);
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
suiteTeardown('Delete workspace', function () {
|
|
57
|
-
kubernetesCommandLineToolsExecutor.deleteDevWorkspace();
|
|
58
|
-
});
|
|
59
|
-
});
|
|
60
|
-
//# sourceMappingURL=EmptyWorkspaceAPI.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EmptyWorkspaceAPI.spec.js","sourceRoot":"","sources":["../../../specs/api/EmptyWorkspaceAPI.spec.ts"],"names":[],"mappings":"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"}
|