Skip to content

Commit

Permalink
Merge pull request #3826 from zowe/user/markackert/node-v20-test
Browse files Browse the repository at this point in the history
Node v20 Tests
  • Loading branch information
MarkAckert authored May 15, 2024
2 parents 2b08d66 + b198f80 commit dca1c2f
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 2 deletions.
4 changes: 4 additions & 0 deletions .github/scripts/cicd_test/make_matrix.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ case $install_test_choice in
test_force_system="zzow08"
;;

"z/OS node v20")
test_file="$ZOS_NODE_V20_TESTFILE"
;;

"Non-strict Verify External Certificate")
test_file="$NON_STRICT_VERIFY_EXTERNAL_CERTIFICATE_TESTFILE"
;;
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/cicd-test-readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ Background: CICD testing relies on a `zowe.pax` or `zowe-smpe.zip` (for SMPE ins
When running CICD integration tests during RC stage, the following string will be parsed into the Github Actions matrix. As a result, a total of 21 independent jobs will be spawned.

```
basic/install.ts(zzow06,zzow07,zzow08);basic/install-ptf.ts(zzow06,zzow07,zzow08);basic/install-ext.ts(zzow07);extended/keyring.ts(zzow06,zzow07,zzow08);extended/node-versions/node-v18.ts(zzow06,zzow07,zzow08);extended/certificates/nonstrict-verify-external-certificate.ts(zzow06)
basic/install.ts(zzow06,zzow07,zzow08);basic/install-ptf.ts(zzow06,zzow07,zzow08);basic/install-ext.ts(zzow07);extended/keyring.ts(zzow06,zzow07,zzow08);extended/node-versions/node-v18.ts(zzow06,zzow07,zzow08);extended/node-versions/node-v20.ts(zzow06,zzow07,zzow08);extended/certificates/nonstrict-verify-external-certificate.ts(zzow06)
```

Total elapsed time when running in parallel is approximately 3.5 hours on paper idealy if all parallel jobs are executing at the same time. In reality, from numerous tests performed, total elapsed time is around 4 hours.
Expand All @@ -122,6 +122,7 @@ Selected test running elapsed time:
| Convenience Pax | 53m |
| SMPE PTF | 68m |
| z/OS node v18 | 45m |
| z/OS node v20 | 45m |
| Keyring | 53m |
| Non-strict Verify External Certificate | 51m |
| Extensions | 67m
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/cicd-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ on:
- Extensions
- Keyring
- z/OS node v18
- z/OS node v20
- Non-strict Verify External Certificate
- Install PTF Twice
- VSAM Caching Storage Method
Expand Down Expand Up @@ -74,14 +75,15 @@ env:
EXTENSIONS_TESTFILE: basic/install-ext.ts
KEYRING_TESTFILE: extended/keyring.ts
ZOS_NODE_V18_TESTFILE: extended/node-versions/node-v18.ts
ZOS_NODE_V20_TESTFILE: extended/node-versions/node-v20.ts
NON_STRICT_VERIFY_EXTERNAL_CERTIFICATE_TESTFILE: extended/certificates/nonstrict-verify-external-certificate.ts
INSTALL_PTF_TWICE_TESTFILE: extended/install-ptf-two-times.ts
VSAM_CACHING_STORAGE_METHOD_TESTFILE: extended/caching-storages/vsam-storage.ts
INFINISPAN_CACHING_STORAGE_METHOD_TESTFILE: extended/caching-storages/infinispan-storage.ts
CONFIG_MANAGER_TESTFILE: extended/config-manager/enable-config-manager.ts
GENERAL_API_DOCUMENTATION_TESTFILE: basic/install-api-gen.ts
ZOWE_NIGHTLY_TESTS_FULL: basic/install.ts(all);basic/install-ptf.ts(all)
ZOWE_RELEASE_TESTS_FULL: basic/install.ts(all);basic/install-ptf.ts(all);basic/install-ext.ts(any);extended/keyring.ts(all);extended/node-versions/node-v18.ts(zzow08):extended/certificates/nonstrict-verify-external-certificate.ts(any);extended/caching-storages/infinispan-storage.ts(any);extended/config-manager/enable-config-manager.ts(any)
ZOWE_RELEASE_TESTS_FULL: basic/install.ts(all);basic/install-ptf.ts(all);basic/install-ext.ts(any);extended/keyring.ts(all);extended/node-versions/node-v18.ts(zzow08);extended/node-versions/node-v20.ts(any);extended/certificates/nonstrict-verify-external-certificate.ts(any);extended/caching-storages/infinispan-storage.ts(any);extended/config-manager/enable-config-manager.ts(any)

jobs:
display-dispatch-event-id:
Expand Down Expand Up @@ -292,6 +294,9 @@ jobs:
case 'z/OS node v18':
eta = 45
break;
case 'z/OS node v20':
eta = 45
break;
case 'Infinispan Caching Storage Method':
eta = 51
break;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
/**
* This program and the accompanying materials are made available under the terms of the
* Eclipse Public License v2.0 which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-v20.html
*
* SPDX-License-Identifier: EPL-2.0
*
* Copyright IBM Corporation 2022
*/

import {
checkMandatoryEnvironmentVariables,
installAndVerifyConvenienceBuild,
showZoweRuntimeLogs,
} from '../../../utils';
import { TEST_TIMEOUT_CONVENIENCE_BUILD } from '../../../constants';

const testServer = process.env.TEST_SERVER;
const testSuiteName = 'Test convenience build installation with node.js v20';
describe(testSuiteName, () => {
beforeAll(() => {
// validate variables
checkMandatoryEnvironmentVariables([
'ZOWE_BUILD_LOCAL',
]);
});

test('install and verify', async () => {
await installAndVerifyConvenienceBuild(
testSuiteName,
testServer,
{
'zowe_build_local': process.env['ZOWE_BUILD_LOCAL'],
'zowe_custom_for_test': 'true',
'zos_node_home': '/ZOWE/node/node-v20.11.0',
'zowe_lock_keystore': 'false',
}
);
}, TEST_TIMEOUT_CONVENIENCE_BUILD);

afterAll(async () => {
await showZoweRuntimeLogs(testServer);
})
});

0 comments on commit dca1c2f

Please sign in to comment.