From 0da9c971445d982453a565c4a4284e96a2f6e6b1 Mon Sep 17 00:00:00 2001 From: Ivan Medina Date: Mon, 24 Aug 2026 09:28:25 -0300 Subject: [PATCH] feat(ci): release shared-OpenSSL packages for ppc64le and s390x MONGOSH-1681 PR #2779 added the ppc64le/s390x shared-OpenSSL build variants by editing .evergreen.yml directly. That file is generated by `npm run update-evergreen-config` from .evergreen/evergreen.yml.in and the generators in .evergreen/build-variants/, so the next automated regeneration on main reverted all of it. It also only made the binaries compile; nothing packaged, signed or published them, because that side is driven by config/release-package-matrix.js. This redoes the change at the source level: - compile-build-variants.js: openssl11/openssl3 compile variants for linux-ppc64le (rhel8-power-small) and linux-s390x (rhel7-zseries-large), mirroring the existing x64/arm64 entries. - e2e-tests-build-variants.js: matching e2e variants on rhel9-power-small and rhel9-zseries-small. - release-package-matrix.js: tgz + rpm entries for the four new executableOsIds, which is what generates the package_artifact_*, sign_artifact_*, verify_artifact_* and barque publishing tasks. Reuses the existing ppc64le/s390x descriptions and serverLikeTargetLists, and the same packageType spelling as x64/arm64 so the download centre groups them correctly. - evergreen.yml.in: attach the generated pkg_test_rpmextract_* smoke tests to the existing ppc64le/s390x smoke-test variants. OpenSSL 1.1 packages are tested on RHEL 8 and OpenSSL 3 on RHEL 9, matching the OpenSSL each release actually ships; RHEL 7 s390x keeps only the static build. Without this the tasks are generated but attached to no variant, so they never run. - Regenerated .evergreen.yml (44 new tasks, no existing task removed). ALL_PACKAGE_VARIANTS grows from 26 to 34, so the two hardcoded counts in the build package tests are updated; the build-variant assertion is broadened to loop over the OpenSSL tags instead of only the untagged names. The compile-artifact.sh and signable-compiler.ts fixes from #2779 are in source files and survived, so they are not repeated here. --- .evergreen.yml | 1150 +++++++++++++++-- .../build-variants/compile-build-variants.js | 24 + .../e2e-tests-build-variants.js | 28 + .evergreen/evergreen.yml.in | 4 + config/release-package-matrix.js | 88 ++ .../build/src/config/build-variant.spec.ts | 8 +- packages/build/src/publish-mongosh.spec.ts | 10 +- 7 files changed, 1173 insertions(+), 139 deletions(-) diff --git a/.evergreen.yml b/.evergreen.yml index b1e63d9b76..4efd3f1666 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -4631,6 +4631,20 @@ functions: local_file: src/.sbom/mongosh-linux-ppc64le-first-party-deps.json remote_file: mongosh/binaries/${revision}/${revision_order_id}/mongosh-linux-ppc64le-first-party-deps.json bucket: mciuploads + - command: s3.get + params: + aws_key: ${aws_key} + aws_secret: ${aws_secret} + local_file: src/.sbom/mongosh-linux-ppc64le-openssl11-first-party-deps.json + remote_file: mongosh/binaries/${revision}/${revision_order_id}/mongosh-linux-ppc64le-openssl11-first-party-deps.json + bucket: mciuploads + - command: s3.get + params: + aws_key: ${aws_key} + aws_secret: ${aws_secret} + local_file: src/.sbom/mongosh-linux-ppc64le-openssl3-first-party-deps.json + remote_file: mongosh/binaries/${revision}/${revision_order_id}/mongosh-linux-ppc64le-openssl3-first-party-deps.json + bucket: mciuploads - command: s3.get params: aws_key: ${aws_key} @@ -4638,6 +4652,20 @@ functions: local_file: src/.sbom/mongosh-linux-s390x-first-party-deps.json remote_file: mongosh/binaries/${revision}/${revision_order_id}/mongosh-linux-s390x-first-party-deps.json bucket: mciuploads + - command: s3.get + params: + aws_key: ${aws_key} + aws_secret: ${aws_secret} + local_file: src/.sbom/mongosh-linux-s390x-openssl11-first-party-deps.json + remote_file: mongosh/binaries/${revision}/${revision_order_id}/mongosh-linux-s390x-openssl11-first-party-deps.json + bucket: mciuploads + - command: s3.get + params: + aws_key: ${aws_key} + aws_secret: ${aws_secret} + local_file: src/.sbom/mongosh-linux-s390x-openssl3-first-party-deps.json + remote_file: mongosh/binaries/${revision}/${revision_order_id}/mongosh-linux-s390x-openssl3-first-party-deps.json + bucket: mciuploads - command: s3.get params: aws_key: ${aws_key} @@ -4656,7 +4684,7 @@ functions: .evergreen/create-static-analysis-report.sh env: NODE_JS_VERSION: ${node_js_version} - FIRST_PARTY_DEPENDENCY_FILENAMES: .sbom/mongosh-darwin-x64-first-party-deps.json,.sbom/mongosh-darwin-arm64-first-party-deps.json,.sbom/mongosh-linux-x64-first-party-deps.json,.sbom/mongosh-linux-x64-openssl11-first-party-deps.json,.sbom/mongosh-linux-x64-openssl3-first-party-deps.json,.sbom/mongosh-linux-arm64-first-party-deps.json,.sbom/mongosh-linux-arm64-openssl11-first-party-deps.json,.sbom/mongosh-linux-arm64-openssl3-first-party-deps.json,.sbom/mongosh-linux-ppc64le-first-party-deps.json,.sbom/mongosh-linux-s390x-first-party-deps.json,.sbom/mongosh-win32-first-party-deps.json + FIRST_PARTY_DEPENDENCY_FILENAMES: .sbom/mongosh-darwin-x64-first-party-deps.json,.sbom/mongosh-darwin-arm64-first-party-deps.json,.sbom/mongosh-linux-x64-first-party-deps.json,.sbom/mongosh-linux-x64-openssl11-first-party-deps.json,.sbom/mongosh-linux-x64-openssl3-first-party-deps.json,.sbom/mongosh-linux-arm64-first-party-deps.json,.sbom/mongosh-linux-arm64-openssl11-first-party-deps.json,.sbom/mongosh-linux-arm64-openssl3-first-party-deps.json,.sbom/mongosh-linux-ppc64le-first-party-deps.json,.sbom/mongosh-linux-ppc64le-openssl11-first-party-deps.json,.sbom/mongosh-linux-ppc64le-openssl3-first-party-deps.json,.sbom/mongosh-linux-s390x-first-party-deps.json,.sbom/mongosh-linux-s390x-openssl11-first-party-deps.json,.sbom/mongosh-linux-s390x-openssl3-first-party-deps.json,.sbom/mongosh-win32-first-party-deps.json GITHUB_TOKEN: ${github_token} GITHUB_PR_NUMBER: ${github_pr_number} - command: s3.put @@ -6511,6 +6539,42 @@ tasks: node_js_version: ${node_js_version} mongosh_server_test_version: ${mongosh_server_test_version} mongosh_test_e2e_force_fips: ${mongosh_test_e2e_force_fips} + - name: e2e_tests_linux_ppc64le_openssl11 + tags: ["e2e-test", "assigned_to_jira_team_mongosh_mongosh"] + depends_on: + - name: compile_artifact + variant: build_linux_ppc64le_openssl11 + commands: + - func: checkout + - func: install + vars: + node_js_version: ${node_js_version} + - func: download_compiled_artifact + vars: + executable_os_id: linux-ppc64le-openssl11 + - func: run_e2e_tests + vars: + node_js_version: ${node_js_version} + mongosh_server_test_version: ${mongosh_server_test_version} + mongosh_test_e2e_force_fips: ${mongosh_test_e2e_force_fips} + - name: e2e_tests_linux_ppc64le_openssl3 + tags: ["e2e-test", "assigned_to_jira_team_mongosh_mongosh"] + depends_on: + - name: compile_artifact + variant: build_linux_ppc64le_openssl3 + commands: + - func: checkout + - func: install + vars: + node_js_version: ${node_js_version} + - func: download_compiled_artifact + vars: + executable_os_id: linux-ppc64le-openssl3 + - func: run_e2e_tests + vars: + node_js_version: ${node_js_version} + mongosh_server_test_version: ${mongosh_server_test_version} + mongosh_test_e2e_force_fips: ${mongosh_test_e2e_force_fips} - name: e2e_tests_linux_s390x tags: ["e2e-test", "assigned_to_jira_team_mongosh_mongosh"] depends_on: @@ -6529,6 +6593,42 @@ tasks: node_js_version: ${node_js_version} mongosh_server_test_version: ${mongosh_server_test_version} mongosh_test_e2e_force_fips: ${mongosh_test_e2e_force_fips} + - name: e2e_tests_linux_s390x_openssl11 + tags: ["e2e-test", "assigned_to_jira_team_mongosh_mongosh"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x_openssl11 + commands: + - func: checkout + - func: install + vars: + node_js_version: ${node_js_version} + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + - func: run_e2e_tests + vars: + node_js_version: ${node_js_version} + mongosh_server_test_version: ${mongosh_server_test_version} + mongosh_test_e2e_force_fips: ${mongosh_test_e2e_force_fips} + - name: e2e_tests_linux_s390x_openssl3 + tags: ["e2e-test", "assigned_to_jira_team_mongosh_mongosh"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x_openssl3 + commands: + - func: checkout + - func: install + vars: + node_js_version: ${node_js_version} + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + - func: run_e2e_tests + vars: + node_js_version: ${node_js_version} + mongosh_server_test_version: ${mongosh_server_test_version} + mongosh_test_e2e_force_fips: ${mongosh_test_e2e_force_fips} - name: e2e_tests_darwin tags: ["e2e-test", "assigned_to_jira_team_mongosh_mongosh"] depends_on: @@ -8821,11 +8921,11 @@ tasks: package_variant: rpm-ppc64le signature_tag: signed - func: verify_artifact - - name: add_crypt_shared_and_sbom_linux_s390x + - name: add_crypt_shared_and_sbom_linux_ppc64le_openssl11 tags: ["add-sbom-task"] depends_on: - name: compile_artifact - variant: build_linux_s390x + variant: build_linux_ppc64le_openssl11 commands: - func: checkout - func: install @@ -8833,22 +8933,22 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: linux-s390x + executable_os_id: linux-ppc64le-openssl11 - func: add_crypt_shared_and_sbom vars: - package_variant: linux-s390x - executable_os_id: linux-s390x + package_variant: linux-ppc64le-openssl11 + executable_os_id: linux-ppc64le-openssl11 - func: upload_sbom vars: - executable_os_id: linux-s390x - extra_upload_tag: -linux-s390x-sbom + executable_os_id: linux-ppc64le-openssl11 + extra_upload_tag: -linux-ppc64le-openssl11-sbom - func: upload_compiled_artifact vars: - executable_os_id: linux-s390x - extra_upload_tag: -linux-s390x-complete - - name: package_artifact_linux_s390x + executable_os_id: linux-ppc64le-openssl11 + extra_upload_tag: -linux-ppc64le-openssl11-complete + - name: package_artifact_linux_ppc64le_openssl11 depends_on: - - name: add_crypt_shared_and_sbom_linux_s390x + - name: add_crypt_shared_and_sbom_linux_ppc64le_openssl11 variant: linux_package commands: - func: checkout @@ -8857,20 +8957,20 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: linux-s390x - extra_upload_tag: -linux-s390x-complete + executable_os_id: linux-ppc64le-openssl11 + extra_upload_tag: -linux-ppc64le-openssl11-complete - func: package_artifact vars: node_js_version: "24.18.1" - package_variant: linux-s390x - executable_os_id: linux-s390x + package_variant: linux-ppc64le-openssl11 + executable_os_id: linux-ppc64le-openssl11 - func: put_artifact_url vars: - package_variant: linux-s390x + package_variant: linux-ppc64le-openssl11 signature_tag: unsigned - - name: sign_artifact_linux_s390x + - name: sign_artifact_linux_ppc64le_openssl11 depends_on: - - name: package_artifact_linux_s390x + - name: package_artifact_linux_ppc64le_openssl11 variant: "*" commands: - func: checkout @@ -8879,24 +8979,24 @@ tasks: node_js_version: "24.18.1" - func: get_artifact_url vars: - package_variant: linux-s390x + package_variant: linux-ppc64le-openssl11 signature_tag: unsigned - func: sign_artifact vars: node_js_version: "24.18.1" - package_variant: linux-s390x + package_variant: linux-ppc64le-openssl11 - func: papertrail_trace vars: product: "mongosh-dev" - func: put_artifact_url vars: - package_variant: linux-s390x + package_variant: linux-ppc64le-openssl11 signature_tag: signed - - name: add_crypt_shared_and_sbom_rpm_s390x + - name: add_crypt_shared_and_sbom_rpm_ppc64le_openssl11 tags: ["add-sbom-task"] depends_on: - name: compile_artifact - variant: build_linux_s390x + variant: build_linux_ppc64le_openssl11 commands: - func: checkout - func: install @@ -8904,22 +9004,22 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: linux-s390x + executable_os_id: linux-ppc64le-openssl11 - func: add_crypt_shared_and_sbom vars: - package_variant: rpm-s390x - executable_os_id: linux-s390x + package_variant: rpm-ppc64le-openssl11 + executable_os_id: linux-ppc64le-openssl11 - func: upload_sbom vars: - executable_os_id: linux-s390x - extra_upload_tag: -rpm-s390x-sbom + executable_os_id: linux-ppc64le-openssl11 + extra_upload_tag: -rpm-ppc64le-openssl11-sbom - func: upload_compiled_artifact vars: - executable_os_id: linux-s390x - extra_upload_tag: -rpm-s390x-complete - - name: package_artifact_rpm_s390x + executable_os_id: linux-ppc64le-openssl11 + extra_upload_tag: -rpm-ppc64le-openssl11-complete + - name: package_artifact_rpm_ppc64le_openssl11 depends_on: - - name: add_crypt_shared_and_sbom_rpm_s390x + - name: add_crypt_shared_and_sbom_rpm_ppc64le_openssl11 variant: linux_package commands: - func: checkout @@ -8928,20 +9028,20 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: linux-s390x - extra_upload_tag: -rpm-s390x-complete + executable_os_id: linux-ppc64le-openssl11 + extra_upload_tag: -rpm-ppc64le-openssl11-complete - func: package_artifact vars: node_js_version: "24.18.1" - package_variant: rpm-s390x - executable_os_id: linux-s390x + package_variant: rpm-ppc64le-openssl11 + executable_os_id: linux-ppc64le-openssl11 - func: put_artifact_url vars: - package_variant: rpm-s390x + package_variant: rpm-ppc64le-openssl11 signature_tag: unsigned - - name: sign_artifact_rpm_s390x + - name: sign_artifact_rpm_ppc64le_openssl11 depends_on: - - name: package_artifact_rpm_s390x + - name: package_artifact_rpm_ppc64le_openssl11 variant: "*" commands: - func: checkout @@ -8950,36 +9050,36 @@ tasks: node_js_version: "24.18.1" - func: get_artifact_url vars: - package_variant: rpm-s390x + package_variant: rpm-ppc64le-openssl11 signature_tag: unsigned - func: sign_artifact vars: node_js_version: "24.18.1" - package_variant: rpm-s390x + package_variant: rpm-ppc64le-openssl11 - func: papertrail_trace vars: product: "mongosh-dev" - func: put_artifact_url vars: - package_variant: rpm-s390x + package_variant: rpm-ppc64le-openssl11 signature_tag: signed - - name: verify_artifact_rpm_s390x + - name: verify_artifact_rpm_ppc64le_openssl11 tags: ["smoke-test"] depends_on: - - name: sign_artifact_rpm_s390x + - name: sign_artifact_rpm_ppc64le_openssl11 variant: "*" commands: - func: checkout - func: get_artifact_url vars: - package_variant: rpm-s390x + package_variant: rpm-ppc64le-openssl11 signature_tag: signed - func: verify_artifact - - name: add_crypt_shared_and_sbom_win32_x64 + - name: add_crypt_shared_and_sbom_linux_ppc64le_openssl3 tags: ["add-sbom-task"] depends_on: - name: compile_artifact - variant: build_win32 + variant: build_linux_ppc64le_openssl3 commands: - func: checkout - func: install @@ -8987,22 +9087,22 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: win32 + executable_os_id: linux-ppc64le-openssl3 - func: add_crypt_shared_and_sbom vars: - package_variant: win32-x64 - executable_os_id: win32 + package_variant: linux-ppc64le-openssl3 + executable_os_id: linux-ppc64le-openssl3 - func: upload_sbom vars: - executable_os_id: win32 - extra_upload_tag: -win32-x64-sbom + executable_os_id: linux-ppc64le-openssl3 + extra_upload_tag: -linux-ppc64le-openssl3-sbom - func: upload_compiled_artifact vars: - executable_os_id: win32 - extra_upload_tag: -win32-x64-complete - - name: package_artifact_win32_x64 + executable_os_id: linux-ppc64le-openssl3 + extra_upload_tag: -linux-ppc64le-openssl3-complete + - name: package_artifact_linux_ppc64le_openssl3 depends_on: - - name: add_crypt_shared_and_sbom_win32_x64 + - name: add_crypt_shared_and_sbom_linux_ppc64le_openssl3 variant: linux_package commands: - func: checkout @@ -9011,20 +9111,20 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: win32 - extra_upload_tag: -win32-x64-complete + executable_os_id: linux-ppc64le-openssl3 + extra_upload_tag: -linux-ppc64le-openssl3-complete - func: package_artifact vars: node_js_version: "24.18.1" - package_variant: win32-x64 - executable_os_id: win32 + package_variant: linux-ppc64le-openssl3 + executable_os_id: linux-ppc64le-openssl3 - func: put_artifact_url vars: - package_variant: win32-x64 + package_variant: linux-ppc64le-openssl3 signature_tag: unsigned - - name: sign_artifact_win32_x64 + - name: sign_artifact_linux_ppc64le_openssl3 depends_on: - - name: package_artifact_win32_x64 + - name: package_artifact_linux_ppc64le_openssl3 variant: "*" commands: - func: checkout @@ -9033,36 +9133,24 @@ tasks: node_js_version: "24.18.1" - func: get_artifact_url vars: - package_variant: win32-x64 + package_variant: linux-ppc64le-openssl3 signature_tag: unsigned - func: sign_artifact vars: node_js_version: "24.18.1" - package_variant: win32-x64 + package_variant: linux-ppc64le-openssl3 - func: papertrail_trace vars: product: "mongosh-dev" - func: put_artifact_url vars: - package_variant: win32-x64 - signature_tag: signed - - name: verify_artifact_win32_x64 - tags: ["smoke-test"] - depends_on: - - name: sign_artifact_win32_x64 - variant: "*" - commands: - - func: checkout - - func: get_artifact_url - vars: - package_variant: win32-x64 + package_variant: linux-ppc64le-openssl3 signature_tag: signed - - func: verify_artifact - - name: add_crypt_shared_and_sbom_win32msi_x64 + - name: add_crypt_shared_and_sbom_rpm_ppc64le_openssl3 tags: ["add-sbom-task"] depends_on: - name: compile_artifact - variant: build_win32 + variant: build_linux_ppc64le_openssl3 commands: - func: checkout - func: install @@ -9070,22 +9158,22 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: win32 + executable_os_id: linux-ppc64le-openssl3 - func: add_crypt_shared_and_sbom vars: - package_variant: win32msi-x64 - executable_os_id: win32 + package_variant: rpm-ppc64le-openssl3 + executable_os_id: linux-ppc64le-openssl3 - func: upload_sbom vars: - executable_os_id: win32 - extra_upload_tag: -win32msi-x64-sbom + executable_os_id: linux-ppc64le-openssl3 + extra_upload_tag: -rpm-ppc64le-openssl3-sbom - func: upload_compiled_artifact vars: - executable_os_id: win32 - extra_upload_tag: -win32msi-x64-complete - - name: package_artifact_win32msi_x64 + executable_os_id: linux-ppc64le-openssl3 + extra_upload_tag: -rpm-ppc64le-openssl3-complete + - name: package_artifact_rpm_ppc64le_openssl3 depends_on: - - name: add_crypt_shared_and_sbom_win32msi_x64 + - name: add_crypt_shared_and_sbom_rpm_ppc64le_openssl3 variant: linux_package commands: - func: checkout @@ -9094,20 +9182,20 @@ tasks: node_js_version: "24.18.1" - func: download_compiled_artifact vars: - executable_os_id: win32 - extra_upload_tag: -win32msi-x64-complete + executable_os_id: linux-ppc64le-openssl3 + extra_upload_tag: -rpm-ppc64le-openssl3-complete - func: package_artifact vars: node_js_version: "24.18.1" - package_variant: win32msi-x64 - executable_os_id: win32 + package_variant: rpm-ppc64le-openssl3 + executable_os_id: linux-ppc64le-openssl3 - func: put_artifact_url vars: - package_variant: win32msi-x64 + package_variant: rpm-ppc64le-openssl3 signature_tag: unsigned - - name: sign_artifact_win32msi_x64 + - name: sign_artifact_rpm_ppc64le_openssl3 depends_on: - - name: package_artifact_win32msi_x64 + - name: package_artifact_rpm_ppc64le_openssl3 variant: "*" commands: - func: checkout @@ -9116,79 +9204,707 @@ tasks: node_js_version: "24.18.1" - func: get_artifact_url vars: - package_variant: win32msi-x64 + package_variant: rpm-ppc64le-openssl3 signature_tag: unsigned - func: sign_artifact vars: node_js_version: "24.18.1" - package_variant: win32msi-x64 + package_variant: rpm-ppc64le-openssl3 - func: papertrail_trace vars: product: "mongosh-dev" - func: put_artifact_url vars: - package_variant: win32msi-x64 + package_variant: rpm-ppc64le-openssl3 signature_tag: signed - - name: verify_artifact_win32msi_x64 + - name: verify_artifact_rpm_ppc64le_openssl3 tags: ["smoke-test"] depends_on: - - name: sign_artifact_win32msi_x64 + - name: sign_artifact_rpm_ppc64le_openssl3 variant: "*" commands: - func: checkout - func: get_artifact_url vars: - package_variant: win32msi-x64 + package_variant: rpm-ppc64le-openssl3 signature_tag: signed - func: verify_artifact - - ### - # SMOKE TESTS - ### - - name: pkg_test_macos_darwin_x64 - tags: ["smoke-test"] + - name: add_crypt_shared_and_sbom_linux_s390x + tags: ["add-sbom-task"] depends_on: - - name: sign_artifact_darwin_x64 - variant: "*" + - name: compile_artifact + variant: build_linux_s390x commands: - func: checkout - - func: get_artifact_url + - func: install vars: - package_variant: darwin-x64 - signature_tag: signed - - func: write_preload_script - - func: test_artifact_macos - - name: pkg_test_macos_darwin_arm64 - tags: ["smoke-test"] + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x + - func: add_crypt_shared_and_sbom + vars: + package_variant: linux-s390x + executable_os_id: linux-s390x + - func: upload_sbom + vars: + executable_os_id: linux-s390x + extra_upload_tag: -linux-s390x-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: linux-s390x + extra_upload_tag: -linux-s390x-complete + - name: package_artifact_linux_s390x depends_on: - - name: sign_artifact_darwin_arm64 - variant: "*" + - name: add_crypt_shared_and_sbom_linux_s390x + variant: linux_package commands: - func: checkout - - func: get_artifact_url + - func: install vars: - package_variant: darwin-arm64 - signature_tag: signed - - func: write_preload_script - - func: test_artifact_macos - - name: pkg_test_docker_linux_x64_ubuntu20_04_tgz - tags: ["smoke-test"] + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x + extra_upload_tag: -linux-s390x-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: linux-s390x + executable_os_id: linux-s390x + - func: put_artifact_url + vars: + package_variant: linux-s390x + signature_tag: unsigned + - name: sign_artifact_linux_s390x depends_on: - - name: sign_artifact_linux_x64 + - name: package_artifact_linux_s390x variant: "*" commands: - func: checkout - - func: get_artifact_url - vars: - package_variant: linux-x64 - signature_tag: signed - - func: write_preload_script - func: install vars: node_js_version: "24.18.1" - - func: test_artifact_docker + - func: get_artifact_url vars: - node_js_version: "24.18.1" + package_variant: linux-s390x + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: linux-s390x + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: linux-s390x + signature_tag: signed + - name: add_crypt_shared_and_sbom_rpm_s390x + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x + - func: add_crypt_shared_and_sbom + vars: + package_variant: rpm-s390x + executable_os_id: linux-s390x + - func: upload_sbom + vars: + executable_os_id: linux-s390x + extra_upload_tag: -rpm-s390x-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: linux-s390x + extra_upload_tag: -rpm-s390x-complete + - name: package_artifact_rpm_s390x + depends_on: + - name: add_crypt_shared_and_sbom_rpm_s390x + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x + extra_upload_tag: -rpm-s390x-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: rpm-s390x + executable_os_id: linux-s390x + - func: put_artifact_url + vars: + package_variant: rpm-s390x + signature_tag: unsigned + - name: sign_artifact_rpm_s390x + depends_on: + - name: package_artifact_rpm_s390x + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: rpm-s390x + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: rpm-s390x + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: rpm-s390x + signature_tag: signed + - name: verify_artifact_rpm_s390x + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_s390x + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-s390x + signature_tag: signed + - func: verify_artifact + - name: add_crypt_shared_and_sbom_linux_s390x_openssl11 + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x_openssl11 + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + - func: add_crypt_shared_and_sbom + vars: + package_variant: linux-s390x-openssl11 + executable_os_id: linux-s390x-openssl11 + - func: upload_sbom + vars: + executable_os_id: linux-s390x-openssl11 + extra_upload_tag: -linux-s390x-openssl11-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + extra_upload_tag: -linux-s390x-openssl11-complete + - name: package_artifact_linux_s390x_openssl11 + depends_on: + - name: add_crypt_shared_and_sbom_linux_s390x_openssl11 + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + extra_upload_tag: -linux-s390x-openssl11-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: linux-s390x-openssl11 + executable_os_id: linux-s390x-openssl11 + - func: put_artifact_url + vars: + package_variant: linux-s390x-openssl11 + signature_tag: unsigned + - name: sign_artifact_linux_s390x_openssl11 + depends_on: + - name: package_artifact_linux_s390x_openssl11 + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: linux-s390x-openssl11 + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: linux-s390x-openssl11 + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: linux-s390x-openssl11 + signature_tag: signed + - name: add_crypt_shared_and_sbom_rpm_s390x_openssl11 + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x_openssl11 + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + - func: add_crypt_shared_and_sbom + vars: + package_variant: rpm-s390x-openssl11 + executable_os_id: linux-s390x-openssl11 + - func: upload_sbom + vars: + executable_os_id: linux-s390x-openssl11 + extra_upload_tag: -rpm-s390x-openssl11-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + extra_upload_tag: -rpm-s390x-openssl11-complete + - name: package_artifact_rpm_s390x_openssl11 + depends_on: + - name: add_crypt_shared_and_sbom_rpm_s390x_openssl11 + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl11 + extra_upload_tag: -rpm-s390x-openssl11-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: rpm-s390x-openssl11 + executable_os_id: linux-s390x-openssl11 + - func: put_artifact_url + vars: + package_variant: rpm-s390x-openssl11 + signature_tag: unsigned + - name: sign_artifact_rpm_s390x_openssl11 + depends_on: + - name: package_artifact_rpm_s390x_openssl11 + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: rpm-s390x-openssl11 + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: rpm-s390x-openssl11 + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: rpm-s390x-openssl11 + signature_tag: signed + - name: verify_artifact_rpm_s390x_openssl11 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_s390x_openssl11 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-s390x-openssl11 + signature_tag: signed + - func: verify_artifact + - name: add_crypt_shared_and_sbom_linux_s390x_openssl3 + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x_openssl3 + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + - func: add_crypt_shared_and_sbom + vars: + package_variant: linux-s390x-openssl3 + executable_os_id: linux-s390x-openssl3 + - func: upload_sbom + vars: + executable_os_id: linux-s390x-openssl3 + extra_upload_tag: -linux-s390x-openssl3-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + extra_upload_tag: -linux-s390x-openssl3-complete + - name: package_artifact_linux_s390x_openssl3 + depends_on: + - name: add_crypt_shared_and_sbom_linux_s390x_openssl3 + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + extra_upload_tag: -linux-s390x-openssl3-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: linux-s390x-openssl3 + executable_os_id: linux-s390x-openssl3 + - func: put_artifact_url + vars: + package_variant: linux-s390x-openssl3 + signature_tag: unsigned + - name: sign_artifact_linux_s390x_openssl3 + depends_on: + - name: package_artifact_linux_s390x_openssl3 + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: linux-s390x-openssl3 + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: linux-s390x-openssl3 + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: linux-s390x-openssl3 + signature_tag: signed + - name: add_crypt_shared_and_sbom_rpm_s390x_openssl3 + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_linux_s390x_openssl3 + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + - func: add_crypt_shared_and_sbom + vars: + package_variant: rpm-s390x-openssl3 + executable_os_id: linux-s390x-openssl3 + - func: upload_sbom + vars: + executable_os_id: linux-s390x-openssl3 + extra_upload_tag: -rpm-s390x-openssl3-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + extra_upload_tag: -rpm-s390x-openssl3-complete + - name: package_artifact_rpm_s390x_openssl3 + depends_on: + - name: add_crypt_shared_and_sbom_rpm_s390x_openssl3 + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: linux-s390x-openssl3 + extra_upload_tag: -rpm-s390x-openssl3-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: rpm-s390x-openssl3 + executable_os_id: linux-s390x-openssl3 + - func: put_artifact_url + vars: + package_variant: rpm-s390x-openssl3 + signature_tag: unsigned + - name: sign_artifact_rpm_s390x_openssl3 + depends_on: + - name: package_artifact_rpm_s390x_openssl3 + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: rpm-s390x-openssl3 + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: rpm-s390x-openssl3 + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: rpm-s390x-openssl3 + signature_tag: signed + - name: verify_artifact_rpm_s390x_openssl3 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_s390x_openssl3 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-s390x-openssl3 + signature_tag: signed + - func: verify_artifact + - name: add_crypt_shared_and_sbom_win32_x64 + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_win32 + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: win32 + - func: add_crypt_shared_and_sbom + vars: + package_variant: win32-x64 + executable_os_id: win32 + - func: upload_sbom + vars: + executable_os_id: win32 + extra_upload_tag: -win32-x64-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: win32 + extra_upload_tag: -win32-x64-complete + - name: package_artifact_win32_x64 + depends_on: + - name: add_crypt_shared_and_sbom_win32_x64 + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: win32 + extra_upload_tag: -win32-x64-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: win32-x64 + executable_os_id: win32 + - func: put_artifact_url + vars: + package_variant: win32-x64 + signature_tag: unsigned + - name: sign_artifact_win32_x64 + depends_on: + - name: package_artifact_win32_x64 + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: win32-x64 + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: win32-x64 + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: win32-x64 + signature_tag: signed + - name: verify_artifact_win32_x64 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_win32_x64 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: win32-x64 + signature_tag: signed + - func: verify_artifact + - name: add_crypt_shared_and_sbom_win32msi_x64 + tags: ["add-sbom-task"] + depends_on: + - name: compile_artifact + variant: build_win32 + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: win32 + - func: add_crypt_shared_and_sbom + vars: + package_variant: win32msi-x64 + executable_os_id: win32 + - func: upload_sbom + vars: + executable_os_id: win32 + extra_upload_tag: -win32msi-x64-sbom + - func: upload_compiled_artifact + vars: + executable_os_id: win32 + extra_upload_tag: -win32msi-x64-complete + - name: package_artifact_win32msi_x64 + depends_on: + - name: add_crypt_shared_and_sbom_win32msi_x64 + variant: linux_package + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: download_compiled_artifact + vars: + executable_os_id: win32 + extra_upload_tag: -win32msi-x64-complete + - func: package_artifact + vars: + node_js_version: "24.18.1" + package_variant: win32msi-x64 + executable_os_id: win32 + - func: put_artifact_url + vars: + package_variant: win32msi-x64 + signature_tag: unsigned + - name: sign_artifact_win32msi_x64 + depends_on: + - name: package_artifact_win32msi_x64 + variant: "*" + commands: + - func: checkout + - func: install + vars: + node_js_version: "24.18.1" + - func: get_artifact_url + vars: + package_variant: win32msi-x64 + signature_tag: unsigned + - func: sign_artifact + vars: + node_js_version: "24.18.1" + package_variant: win32msi-x64 + - func: papertrail_trace + vars: + product: "mongosh-dev" + - func: put_artifact_url + vars: + package_variant: win32msi-x64 + signature_tag: signed + - name: verify_artifact_win32msi_x64 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_win32msi_x64 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: win32msi-x64 + signature_tag: signed + - func: verify_artifact + + ### + # SMOKE TESTS + ### + - name: pkg_test_macos_darwin_x64 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_darwin_x64 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: darwin-x64 + signature_tag: signed + - func: write_preload_script + - func: test_artifact_macos + - name: pkg_test_macos_darwin_arm64 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_darwin_arm64 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: darwin-arm64 + signature_tag: signed + - func: write_preload_script + - func: test_artifact_macos + - name: pkg_test_docker_linux_x64_ubuntu20_04_tgz + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_linux_x64 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: linux-x64 + signature_tag: signed + - func: write_preload_script + - func: install + vars: + node_js_version: "24.18.1" + - func: test_artifact_docker + vars: + node_js_version: "24.18.1" dockerfile: ubuntu20.04-tgz task_name: ${task_name} - name: pkg_test_docker_deb_x64_ubuntu18_04_deb @@ -10604,6 +11320,32 @@ tasks: signature_tag: signed - func: write_preload_script - func: test_artifact_rpmextract + - name: pkg_test_rpmextract_rpm_ppc64le_openssl11 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_ppc64le_openssl11 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-ppc64le-openssl11 + signature_tag: signed + - func: write_preload_script + - func: test_artifact_rpmextract + - name: pkg_test_rpmextract_rpm_ppc64le_openssl3 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_ppc64le_openssl3 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-ppc64le-openssl3 + signature_tag: signed + - func: write_preload_script + - func: test_artifact_rpmextract - name: pkg_test_rpmextract_rpm_s390x tags: ["smoke-test"] depends_on: @@ -10617,6 +11359,32 @@ tasks: signature_tag: signed - func: write_preload_script - func: test_artifact_rpmextract + - name: pkg_test_rpmextract_rpm_s390x_openssl11 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_s390x_openssl11 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-s390x-openssl11 + signature_tag: signed + - func: write_preload_script + - func: test_artifact_rpmextract + - name: pkg_test_rpmextract_rpm_s390x_openssl3 + tags: ["smoke-test"] + depends_on: + - name: sign_artifact_rpm_s390x_openssl3 + variant: "*" + commands: + - func: checkout + - func: get_artifact_url + vars: + package_variant: rpm-s390x-openssl3 + signature_tag: signed + - func: write_preload_script + - func: test_artifact_rpmextract - name: pkg_test_ssh_win32_x64 tags: ["smoke-test"] depends_on: @@ -12312,6 +13080,24 @@ buildvariants: node_js_version: "24.18.1" tasks: - name: compile_artifact + - name: build_linux_ppc64le_openssl11 + display_name: "RHEL 8 PPC openssl11 (Build)" + run_on: rhel8-power-small + expansions: + executable_os_id: "linux-ppc64le-openssl11" + node_js_version: "24.18.1" + mongosh_shared_openssl: "openssl11" + tasks: + - name: compile_artifact + - name: build_linux_ppc64le_openssl3 + display_name: "RHEL 8 PPC openssl3 (Build)" + run_on: rhel8-power-small + expansions: + executable_os_id: "linux-ppc64le-openssl3" + node_js_version: "24.18.1" + mongosh_shared_openssl: "openssl3" + tasks: + - name: compile_artifact - name: build_linux_s390x display_name: "RHEL 7 s390x (Build)" run_on: rhel7-zseries-large @@ -12320,6 +13106,24 @@ buildvariants: node_js_version: "24.18.1" tasks: - name: compile_artifact + - name: build_linux_s390x_openssl11 + display_name: "RHEL 7 s390x openssl11 (Build)" + run_on: rhel7-zseries-large + expansions: + executable_os_id: "linux-s390x-openssl11" + node_js_version: "24.18.1" + mongosh_shared_openssl: "openssl11" + tasks: + - name: compile_artifact + - name: build_linux_s390x_openssl3 + display_name: "RHEL 7 s390x openssl3 (Build)" + run_on: rhel7-zseries-large + expansions: + executable_os_id: "linux-s390x-openssl3" + node_js_version: "24.18.1" + mongosh_shared_openssl: "openssl3" + tasks: + - name: compile_artifact - name: build_darwin display_name: "MacOS 15 Sequoia (amd64) (Build)" run_on: macos-15-amd64-gui @@ -12828,6 +13632,28 @@ buildvariants: mongosh_test_e2e_force_fips: "" tasks: - name: e2e_tests_linux_ppc64le + - name: e2e_tests_rhel9_power_small_openssl11 + display_name: "RHEL 9 PPC openssl11 (E2E tests)" + run_on: rhel9-power-small + tags: [] + expansions: + executable_os_id: "linux-ppc64le-openssl11" + node_js_version: "24.18.1" + mongosh_server_test_version: "stable-enterprise" + mongosh_test_e2e_force_fips: "" + tasks: + - name: e2e_tests_linux_ppc64le_openssl11 + - name: e2e_tests_rhel9_power_small_openssl3 + display_name: "RHEL 9 PPC openssl3 (E2E tests)" + run_on: rhel9-power-small + tags: [] + expansions: + executable_os_id: "linux-ppc64le-openssl3" + node_js_version: "24.18.1" + mongosh_server_test_version: "stable-enterprise" + mongosh_test_e2e_force_fips: "" + tasks: + - name: e2e_tests_linux_ppc64le_openssl3 - name: e2e_tests_rhel9_power_small_m83x display_name: "RHEL 9 PPC 83x (E2E tests)" run_on: rhel9-power-small @@ -12872,6 +13698,28 @@ buildvariants: mongosh_test_e2e_force_fips: "" tasks: - name: e2e_tests_linux_s390x + - name: e2e_tests_rhel9_zseries_small_openssl11 + display_name: "RHEL 9 s390x openssl11 (E2E tests)" + run_on: rhel9-zseries-small + tags: [] + expansions: + executable_os_id: "linux-s390x-openssl11" + node_js_version: "24.18.1" + mongosh_server_test_version: "stable-enterprise" + mongosh_test_e2e_force_fips: "" + tasks: + - name: e2e_tests_linux_s390x_openssl11 + - name: e2e_tests_rhel9_zseries_small_openssl3 + display_name: "RHEL 9 s390x openssl3 (E2E tests)" + run_on: rhel9-zseries-small + tags: [] + expansions: + executable_os_id: "linux-s390x-openssl3" + node_js_version: "24.18.1" + mongosh_server_test_version: "stable-enterprise" + mongosh_test_e2e_force_fips: "" + tasks: + - name: e2e_tests_linux_s390x_openssl3 - name: e2e_tests_rhel9_zseries_small_m83x display_name: "RHEL 9 s390x 83x (E2E tests)" run_on: rhel9-zseries-small @@ -13128,12 +13976,36 @@ buildvariants: - name: add_crypt_shared_and_sbom_rpm_ppc64le - name: package_artifact_rpm_ppc64le - name: sign_artifact_rpm_ppc64le + - name: add_crypt_shared_and_sbom_linux_ppc64le_openssl11 + - name: package_artifact_linux_ppc64le_openssl11 + - name: sign_artifact_linux_ppc64le_openssl11 + - name: add_crypt_shared_and_sbom_rpm_ppc64le_openssl11 + - name: package_artifact_rpm_ppc64le_openssl11 + - name: sign_artifact_rpm_ppc64le_openssl11 + - name: add_crypt_shared_and_sbom_linux_ppc64le_openssl3 + - name: package_artifact_linux_ppc64le_openssl3 + - name: sign_artifact_linux_ppc64le_openssl3 + - name: add_crypt_shared_and_sbom_rpm_ppc64le_openssl3 + - name: package_artifact_rpm_ppc64le_openssl3 + - name: sign_artifact_rpm_ppc64le_openssl3 - name: add_crypt_shared_and_sbom_linux_s390x - name: package_artifact_linux_s390x - name: sign_artifact_linux_s390x - name: add_crypt_shared_and_sbom_rpm_s390x - name: package_artifact_rpm_s390x - name: sign_artifact_rpm_s390x + - name: add_crypt_shared_and_sbom_linux_s390x_openssl11 + - name: package_artifact_linux_s390x_openssl11 + - name: sign_artifact_linux_s390x_openssl11 + - name: add_crypt_shared_and_sbom_rpm_s390x_openssl11 + - name: package_artifact_rpm_s390x_openssl11 + - name: sign_artifact_rpm_s390x_openssl11 + - name: add_crypt_shared_and_sbom_linux_s390x_openssl3 + - name: package_artifact_linux_s390x_openssl3 + - name: sign_artifact_linux_s390x_openssl3 + - name: add_crypt_shared_and_sbom_rpm_s390x_openssl3 + - name: package_artifact_rpm_s390x_openssl3 + - name: sign_artifact_rpm_s390x_openssl3 - name: add_crypt_shared_and_sbom_win32_x64 - name: add_crypt_shared_and_sbom_win32msi_x64 - name: sign_artifact_win32_x64 @@ -13149,7 +14021,11 @@ buildvariants: - name: verify_artifact_rpm_arm64_openssl11 - name: verify_artifact_rpm_arm64_openssl3 - name: verify_artifact_rpm_ppc64le + - name: verify_artifact_rpm_ppc64le_openssl11 + - name: verify_artifact_rpm_ppc64le_openssl3 - name: verify_artifact_rpm_s390x + - name: verify_artifact_rpm_s390x_openssl11 + - name: verify_artifact_rpm_s390x_openssl3 - name: verify_windows_artifact display_name: "Windows (Signature Verification)" run_on: windows-2022-small @@ -13326,21 +14202,25 @@ buildvariants: run_on: rhel8-zseries-small tasks: - name: pkg_test_rpmextract_rpm_s390x + - name: pkg_test_rpmextract_rpm_s390x_openssl11 - name: pkg_smoke_tests_rhel9_s390x display_name: "package smoke tests (RHEL 9 s390x)" run_on: rhel9-zseries-small tasks: - name: pkg_test_rpmextract_rpm_s390x + - name: pkg_test_rpmextract_rpm_s390x_openssl3 - name: pkg_smoke_tests_rhel8_ppc64le display_name: "package smoke tests (RHEL 8 ppc64le)" run_on: rhel8-power-small tasks: - name: pkg_test_rpmextract_rpm_ppc64le + - name: pkg_test_rpmextract_rpm_ppc64le_openssl11 - name: pkg_smoke_tests_rhel9_ppc64le display_name: "package smoke tests (RHEL 9 ppc64le)" run_on: rhel9-power-small tasks: - name: pkg_test_rpmextract_rpm_ppc64le + - name: pkg_test_rpmextract_rpm_ppc64le_openssl3 - name: draft_publish_release display_name: "Draft/Publish Release" run_on: ubuntu2004-small diff --git a/.evergreen/build-variants/compile-build-variants.js b/.evergreen/build-variants/compile-build-variants.js index 0c8da877d0..b1f67ad398 100644 --- a/.evergreen/build-variants/compile-build-variants.js +++ b/.evergreen/build-variants/compile-build-variants.js @@ -61,11 +61,35 @@ exports.COMPILE_BUILD_VARIANTS = [ runOn: 'rhel8-power-small', executableOsId: 'linux-ppc64le', }, + { + displayName: 'RHEL 8 PPC', + runOn: 'rhel8-power-small', + executableOsId: 'linux-ppc64le-openssl11', + sharedOpenSsl: 'openssl11', + }, + { + displayName: 'RHEL 8 PPC', + runOn: 'rhel8-power-small', + executableOsId: 'linux-ppc64le-openssl3', + sharedOpenSsl: 'openssl3', + }, { displayName: 'RHEL 7 s390x', runOn: 'rhel7-zseries-large', executableOsId: 'linux-s390x', }, + { + displayName: 'RHEL 7 s390x', + runOn: 'rhel7-zseries-large', + executableOsId: 'linux-s390x-openssl11', + sharedOpenSsl: 'openssl11', + }, + { + displayName: 'RHEL 7 s390x', + runOn: 'rhel7-zseries-large', + executableOsId: 'linux-s390x-openssl3', + sharedOpenSsl: 'openssl3', + }, { displayName: 'MacOS 15 Sequoia (amd64)', id: 'darwin', diff --git a/.evergreen/build-variants/e2e-tests-build-variants.js b/.evergreen/build-variants/e2e-tests-build-variants.js index 3cfea8bb0a..7376ac8d5d 100644 --- a/.evergreen/build-variants/e2e-tests-build-variants.js +++ b/.evergreen/build-variants/e2e-tests-build-variants.js @@ -344,6 +344,20 @@ exports.E2E_TESTS_BUILD_VARIANTS = [ executableOsId: 'linux-ppc64le', mVersion: 'stable', }, + { + displayName: 'RHEL 9 PPC', + runOn: 'rhel9-power-small', + sharedOpenSsl: 'openssl11', + executableOsId: 'linux-ppc64le-openssl11', + mVersion: 'stable', + }, + { + displayName: 'RHEL 9 PPC', + runOn: 'rhel9-power-small', + sharedOpenSsl: 'openssl3', + executableOsId: 'linux-ppc64le-openssl3', + mVersion: 'stable', + }, { displayName: 'RHEL 9 PPC', runOn: 'rhel9-power-small', @@ -368,6 +382,20 @@ exports.E2E_TESTS_BUILD_VARIANTS = [ executableOsId: 'linux-s390x', mVersion: 'stable', }, + { + displayName: 'RHEL 9 s390x', + runOn: 'rhel9-zseries-small', + sharedOpenSsl: 'openssl11', + executableOsId: 'linux-s390x-openssl11', + mVersion: 'stable', + }, + { + displayName: 'RHEL 9 s390x', + runOn: 'rhel9-zseries-small', + sharedOpenSsl: 'openssl3', + executableOsId: 'linux-s390x-openssl3', + mVersion: 'stable', + }, { displayName: 'RHEL 9 s390x', runOn: 'rhel9-zseries-small', diff --git a/.evergreen/evergreen.yml.in b/.evergreen/evergreen.yml.in index bebc5e5cfd..44b602a96a 100644 --- a/.evergreen/evergreen.yml.in +++ b/.evergreen/evergreen.yml.in @@ -1822,21 +1822,25 @@ buildvariants: run_on: rhel8-zseries-small tasks: - name: pkg_test_rpmextract_rpm_s390x + - name: pkg_test_rpmextract_rpm_s390x_openssl11 - name: pkg_smoke_tests_rhel9_s390x display_name: "package smoke tests (RHEL 9 s390x)" run_on: rhel9-zseries-small tasks: - name: pkg_test_rpmextract_rpm_s390x + - name: pkg_test_rpmextract_rpm_s390x_openssl3 - name: pkg_smoke_tests_rhel8_ppc64le display_name: "package smoke tests (RHEL 8 ppc64le)" run_on: rhel8-power-small tasks: - name: pkg_test_rpmextract_rpm_ppc64le + - name: pkg_test_rpmextract_rpm_ppc64le_openssl11 - name: pkg_smoke_tests_rhel9_ppc64le display_name: "package smoke tests (RHEL 9 ppc64le)" run_on: rhel9-power-small tasks: - name: pkg_test_rpmextract_rpm_ppc64le + - name: pkg_test_rpmextract_rpm_ppc64le_openssl3 - name: draft_publish_release display_name: "Draft/Publish Release" run_on: ubuntu2004-small diff --git a/config/release-package-matrix.js b/config/release-package-matrix.js index 1d7934729f..b26239fded 100644 --- a/config/release-package-matrix.js +++ b/config/release-package-matrix.js @@ -386,6 +386,50 @@ exports.RELEASE_PACKAGE_MATRIX = [ }, ], }, + { + executableOsId: 'linux-ppc64le-openssl11', + compileBuildVariant: 'build_linux_ppc64le_openssl11', + packages: [ + { + name: 'linux-ppc64le-openssl11', + description: publicDescriptions.linux_ppc64le, + packageType: 'tgz with shared OpenSSL 1.1', + packageOn: 'linux_package', + smokeTestKind: 'none', + serverLikeTargetList: [...rhel81AndAbove], + }, + { + name: 'rpm-ppc64le-openssl11', + description: publicDescriptions.rhel_ppc64le, + packageType: 'rpm with shared OpenSSL 1.1', + packageOn: 'linux_package', + smokeTestKind: 'rpmextract', + serverLikeTargetList: [...rhel81AndAbove], + }, + ], + }, + { + executableOsId: 'linux-ppc64le-openssl3', + compileBuildVariant: 'build_linux_ppc64le_openssl3', + packages: [ + { + name: 'linux-ppc64le-openssl3', + description: publicDescriptions.linux_ppc64le, + packageType: 'tgz with shared OpenSSL 3', + packageOn: 'linux_package', + smokeTestKind: 'none', + serverLikeTargetList: [...rhel81AndAbove], + }, + { + name: 'rpm-ppc64le-openssl3', + description: publicDescriptions.rhel_ppc64le, + packageType: 'rpm with shared OpenSSL 3', + packageOn: 'linux_package', + smokeTestKind: 'rpmextract', + serverLikeTargetList: [...rhel81AndAbove], + }, + ], + }, { executableOsId: 'linux-s390x', compileBuildVariant: 'build_linux_s390x', @@ -408,6 +452,50 @@ exports.RELEASE_PACKAGE_MATRIX = [ }, ], }, + { + executableOsId: 'linux-s390x-openssl11', + compileBuildVariant: 'build_linux_s390x_openssl11', + packages: [ + { + name: 'linux-s390x-openssl11', + description: publicDescriptions.linux_s390x, + packageType: 'tgz with shared OpenSSL 1.1', + packageOn: 'linux_package', + smokeTestKind: 'none', + serverLikeTargetList: [...rhel72AndAbove], + }, + { + name: 'rpm-s390x-openssl11', + description: publicDescriptions.rhel_s390x, + packageType: 'rpm with shared OpenSSL 1.1', + packageOn: 'linux_package', + smokeTestKind: 'rpmextract', + serverLikeTargetList: [...rhel72AndAbove], + }, + ], + }, + { + executableOsId: 'linux-s390x-openssl3', + compileBuildVariant: 'build_linux_s390x_openssl3', + packages: [ + { + name: 'linux-s390x-openssl3', + description: publicDescriptions.linux_s390x, + packageType: 'tgz with shared OpenSSL 3', + packageOn: 'linux_package', + smokeTestKind: 'none', + serverLikeTargetList: [...rhel72AndAbove], + }, + { + name: 'rpm-s390x-openssl3', + description: publicDescriptions.rhel_s390x, + packageType: 'rpm with shared OpenSSL 3', + packageOn: 'linux_package', + smokeTestKind: 'rpmextract', + serverLikeTargetList: [...rhel72AndAbove], + }, + ], + }, { executableOsId: 'win32', compileBuildVariant: 'build_win32', diff --git a/packages/build/src/config/build-variant.spec.ts b/packages/build/src/config/build-variant.spec.ts index 8519d49a8b..e8d349c5d7 100644 --- a/packages/build/src/config/build-variant.spec.ts +++ b/packages/build/src/config/build-variant.spec.ts @@ -22,14 +22,16 @@ describe('cta-config.json', function () { describe('BuildVariant', function () { describe('all build variants', function () { it('has all of them', function () { - expect(ALL_PACKAGE_VARIANTS).to.have.length(26); + expect(ALL_PACKAGE_VARIANTS).to.have.length(34); expect(ALL_PACKAGE_VARIANTS).to.contain('win32msi-x64'); expect(ALL_PACKAGE_VARIANTS).to.contain('darwin-x64'); expect(ALL_PACKAGE_VARIANTS).to.contain('deb-x64'); expect(ALL_PACKAGE_VARIANTS).to.contain('deb-arm64'); for (const arch of ['x64', 'arm64', 's390x', 'ppc64le']) { - expect(ALL_PACKAGE_VARIANTS).to.contain(`linux-${arch}`); - expect(ALL_PACKAGE_VARIANTS).to.contain(`rpm-${arch}`); + for (const opensslTag of ['', '-openssl11', '-openssl3']) { + expect(ALL_PACKAGE_VARIANTS).to.contain(`linux-${arch}${opensslTag}`); + expect(ALL_PACKAGE_VARIANTS).to.contain(`rpm-${arch}${opensslTag}`); + } } }); }); diff --git a/packages/build/src/publish-mongosh.spec.ts b/packages/build/src/publish-mongosh.spec.ts index f0483ae3f7..b8e85df017 100644 --- a/packages/build/src/publish-mongosh.spec.ts +++ b/packages/build/src/publish-mongosh.spec.ts @@ -165,7 +165,7 @@ describe('MongoshPublisher', function () { it('publishes artifacts to barque', async function () { await testPublisher.publish(); - expect(barque.releaseToBarque).to.have.been.callCount(26); + expect(barque.releaseToBarque).to.have.been.callCount(34); expect(barque.releaseToBarque).to.have.been.calledWith( 'rpm-x64', 'https://s3.amazonaws.com/mciuploads/project/v0.7.0-draft.42/mongodb-mongosh-0.7.0.x86_64.rpm' @@ -178,6 +178,14 @@ describe('MongoshPublisher', function () { 'rpm-arm64', 'https://s3.amazonaws.com/mciuploads/project/v0.7.0-draft.42/mongodb-mongosh-0.7.0.aarch64.rpm' ); + expect(barque.releaseToBarque).to.have.been.calledWith( + 'rpm-ppc64le-openssl3', + 'https://s3.amazonaws.com/mciuploads/project/v0.7.0-draft.42/mongodb-mongosh-0.7.0.ppc64le.rpm' + ); + expect(barque.releaseToBarque).to.have.been.calledWith( + 'rpm-s390x-openssl11', + 'https://s3.amazonaws.com/mciuploads/project/v0.7.0-draft.42/mongodb-mongosh-0.7.0.s390x.rpm' + ); expect(barque.waitUntilPackagesAreAvailable).to.have.been.called; });