From b9ea829607a779569f7b14ea9447c92804836eb2 Mon Sep 17 00:00:00 2001 From: "t.ward" <22226719+tward333@users.noreply.github.com> Date: Wed, 17 May 2023 00:22:53 +0000 Subject: SERVER-75281 Platform Support: Add support for Amazon Linux 2023 ARM --- buildscripts/evergreen_gen_build_metrics_tasks.py | 2 +- buildscripts/package_test.py | 2 +- buildscripts/packager.py | 12 +-- buildscripts/packager_enterprise.py | 6 +- etc/evergreen.yml | 4 +- etc/evergreen_yml_components/definitions.yml | 16 +-- .../variants/misc_release.yml | 110 ++++++++++----------- etc/generate_subtasks_config.yml | 8 +- etc/repo_config.yaml | 4 +- 9 files changed, 82 insertions(+), 82 deletions(-) diff --git a/buildscripts/evergreen_gen_build_metrics_tasks.py b/buildscripts/evergreen_gen_build_metrics_tasks.py index 2d3980fb373..0358b647030 100755 --- a/buildscripts/evergreen_gen_build_metrics_tasks.py +++ b/buildscripts/evergreen_gen_build_metrics_tasks.py @@ -196,7 +196,7 @@ def main(): for link_model, tasks in tasks['linux_arm64_tasks'].items(): variant.add_task_group( create_task_group(f'linux_arm64_{link_model}', tasks), - ['amazon2022-arm64-large']) + ['amazon2023-arm64-large']) project = ShrubProject({variant}) with open('build_metrics_task_gen.json', 'w') as fout: diff --git a/buildscripts/package_test.py b/buildscripts/package_test.py index da75d9c0f9e..819302e75d5 100644 --- a/buildscripts/package_test.py +++ b/buildscripts/package_test.py @@ -56,7 +56,7 @@ OS_DOCKER_LOOKUP = { 'amazon2': ('amazonlinux:2', "yum", frozenset(["python", "python3", "wget", "pkgconfig", "systemd", "procps", "file"]), "python3"), - 'amazon2022': ('amazonlinux:2022', "yum", + 'amazon2023': ('amazonlinux:2023', "yum", frozenset( ["python", "python3", "wget", "pkgconfig", "systemd", "procps", "file"]), "python3"), diff --git a/buildscripts/packager.py b/buildscripts/packager.py index 98ab952d619..bc9d96701d7 100755 --- a/buildscripts/packager.py +++ b/buildscripts/packager.py @@ -44,7 +44,7 @@ import time ARCH_CHOICES = ["x86_64", "arm64", "aarch64", "s390x"] # Made up names for the flavors of distribution we package for. -DISTROS = ["suse", "debian", "redhat", "ubuntu", "amazon", "amazon2", "amazon2022"] +DISTROS = ["suse", "debian", "redhat", "ubuntu", "amazon", "amazon2", "amazon2023"] class Spec(object): @@ -289,8 +289,8 @@ class Distro(object): return "2013.03" elif self.dname == 'amazon2': return "2017.12" - elif self.dname == 'amazon2022': - return "2022.0" + elif self.dname == 'amazon2023': + return "2023.0" elif self.dname == 'ubuntu': if build_os == 'ubuntu1204': return "precise" @@ -353,7 +353,7 @@ class Distro(object): "rhel55", "rhel67", ] - elif self.dname in ['amazon', 'amazon2', 'amazon2022']: + elif self.dname in ['amazon', 'amazon2', 'amazon2023']: return [self.dname] elif self.dname == 'ubuntu': return [ @@ -381,8 +381,8 @@ class Distro(object): return 'amzn1' elif self.dname == 'amazon2': return 'amzn2' - elif self.dname == 'amazon2022': - return 'amzn2022' + elif self.dname == 'amazon2023': + return 'amzn2023' return re.sub(r'^rh(el\d).*$', r'\1', build_os) diff --git a/buildscripts/packager_enterprise.py b/buildscripts/packager_enterprise.py index ea89dc94633..5711d452655 100755 --- a/buildscripts/packager_enterprise.py +++ b/buildscripts/packager_enterprise.py @@ -44,7 +44,7 @@ import packager # pylint: disable=wrong-import-position ARCH_CHOICES = ["x86_64", "ppc64le", "s390x", "arm64", "aarch64"] # Made up names for the flavors of distribution we package for. -DISTROS = ["suse", "debian", "redhat", "ubuntu", "amazon", "amazon2", "amazon2022"] +DISTROS = ["suse", "debian", "redhat", "ubuntu", "amazon", "amazon2", "amazon2023"] class EnterpriseSpec(packager.Spec): @@ -144,8 +144,8 @@ class EnterpriseDistro(packager.Distro): return ["rhel82", "rhel90"] if self.dname == 'amazon2': return ["amazon2"] - if self.dname == 'amazon2022': - return ["amazon2022"] + if self.dname == 'amazon2023': + return ["amazon2023"] return [] if re.search("(redhat|fedora|centos)", self.dname): diff --git a/etc/evergreen.yml b/etc/evergreen.yml index a59ec017161..ef7d7b46539 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -1656,14 +1656,14 @@ buildvariants: modules: - enterprise run_on: - - amazon2022-arm64-large + - amazon2023.0-arm64-large expansions: compile_flags: >- --ssl MONGO_DISTMOD=rhel82 -j$(grep -c ^processor /proc/cpuinfo) repo_edition: enterprise - large_distro_name: amazon2022-arm64-large + large_distro_name: amazon2023.0-arm64-large num_scons_link_jobs_available: 0.1 tasks: - name: build_metrics_gen_TG diff --git a/etc/evergreen_yml_components/definitions.yml b/etc/evergreen_yml_components/definitions.yml index 9b305aa4bca..aa8dbe15801 100644 --- a/etc/evergreen_yml_components/definitions.yml +++ b/etc/evergreen_yml_components/definitions.yml @@ -290,8 +290,8 @@ variables: - mongocryptd_variants: &mongocryptd_variants - enterprise-amazon2 - enterprise-amazon2-arm64 - - enterprise-amazon2022 - - enterprise-amazon2022-arm64 + - enterprise-amazon2023 + - enterprise-amazon2023-arm64 - enterprise-debian10-64 - enterprise-debian11-64 - enterprise-linux-64-amazon-ami @@ -337,8 +337,8 @@ variables: - enterprise-rhel-90-64-bit - enterprise-rhel-90-arm64 - enterprise-amazon2-arm64 - - enterprise-amazon2022 - - enterprise-amazon2022-arm64 + - enterprise-amazon2023 + - enterprise-amazon2023-arm64 - enterprise-ubuntu1804-64 - enterprise-ubuntu2004-64 - enterprise-ubuntu2204-64 @@ -349,12 +349,12 @@ variables: - amazon - enterprise-linux-64-amazon-ami - amazon2 - - amazon2022 - - amazon2022-arm64 + - amazon2023 + - amazon2023-arm64 - enterprise-amazon2 - enterprise-amazon2-arm64 - - enterprise-amazon2022 - - enterprise-amazon2022-arm64 + - enterprise-amazon2023 + - enterprise-amazon2023-arm64 - debian10 - debian11 - enterprise-debian10-64 diff --git a/etc/evergreen_yml_components/variants/misc_release.yml b/etc/evergreen_yml_components/variants/misc_release.yml index d93e40a7f94..8e130a209ce 100644 --- a/etc/evergreen_yml_components/variants/misc_release.yml +++ b/etc/evergreen_yml_components/variants/misc_release.yml @@ -305,37 +305,37 @@ buildvariants: - name: .publish - name: generate_buildid_to_debug_symbols_mapping -- name: amazon2022 - display_name: Amazon Linux 2022 +- name: amazon2023 + display_name: Amazon Linux 2023 cron: "0 4 * * *" # From the ${project_nightly_cron} parameter. run_on: - - amazon2022-small + - amazon2023.0-small expansions: push_path: linux push_bucket: downloads.mongodb.org push_name: linux - push_arch: x86_64-amazon2022 - compile_flags: --ssl MONGO_DISTMOD=amazon2022 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off + push_arch: x86_64-amazon2023 + compile_flags: --ssl MONGO_DISTMOD=amazon2023 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off test_flags: --excludeWithAnyTags=incompatible_with_amazon_linux,requires_external_data_source,requires_latch_analyzer has_packages: true packager_script: packager.py packager_arch: x86_64 - packager_distro: amazon2022 + packager_distro: amazon2023 repo_edition: org scons_cache_scope: shared - large_distro_name: amazon2022-large - compile_variant: amazon2022 + large_distro_name: amazon2023.0-large + compile_variant: amazon2023 tasks: - name: compile_test_and_package_serial_no_unittests_TG distros: - - amazon2022-large + - amazon2023.0-large - name: aggregation - name: .auth !.audit !.multiversion - name: causally_consistent_jscore_txns_passthrough - name: .misc_js - name: .concurrency .common distros: - - amazon2022-large + - amazon2023.0-large - name: concurrency_replication_causal_consistency_gen - name: disk_wiredtiger - name: free_monitoring @@ -354,37 +354,37 @@ buildvariants: - name: .publish - name: generate_buildid_to_debug_symbols_mapping -- name: enterprise-amazon2022 - display_name: "Enterprise Amazon Linux 2022" +- name: enterprise-amazon2023 + display_name: "Enterprise Amazon Linux 2023" cron: "0 4 * * *" # From the ${project_nightly_cron} parameter. modules: - enterprise run_on: - - amazon2022-small + - amazon2023.0-small expansions: additional_package_targets: archive-mongocryptd archive-mongocryptd-debug archive-mh archive-mh-debug push_path: linux push_bucket: downloads.10gen.com push_name: linux - push_arch: x86_64-enterprise-amazon2022 - compile_flags: --ssl MONGO_DISTMOD=amazon2022 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off + push_arch: x86_64-enterprise-amazon2023 + compile_flags: --ssl MONGO_DISTMOD=amazon2023 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off crypt_task_compile_flags: SHLINKFLAGS_EXTRA="-Wl,-Bsymbolic -Wl,--no-gnu-unique" CCFLAGS="-fno-gnu-unique" # TODO BUILD-13887 should fix uses_pykmip incompatibility. test_flags: --excludeWithAnyTags=incompatible_with_amazon_linux,requires_ldap_pool,uses_pykmip,requires_v4_0,requires_external_data_source,requires_latch_analyzer has_packages: true - multiversion_platform: amazon2022 + multiversion_platform: amazon2023 multiversion_edition: enterprise multiversion_architecture: x86_64 packager_script: packager_enterprise.py packager_arch: x86_64 - packager_distro: amazon2022 + packager_distro: amazon2023 repo_edition: enterprise scons_cache_scope: shared - compile_variant: enterprise-amazon2022 + compile_variant: enterprise-amazon2023 tasks: - name: compile_test_and_package_serial_no_unittests_TG distros: - - amazon2022-large + - amazon2023.0-large - name: test_api_version_compatibility - name: .aggfuzzer !.feature_flag_guarded !.multiversion - name: .aggregation !.feature_flag_guarded @@ -397,7 +397,7 @@ buildvariants: - name: .concurrency !.large !.ubsan !.no_txns - name: .concurrency .large !.ubsan !.no_txns distros: - - amazon2022-large + - amazon2023.0-large - name: config_fuzzer_concurrency - name: config_fuzzer_jsCore - name: disk_wiredtiger @@ -406,7 +406,7 @@ buildvariants: - name: initial_sync_fuzzer_gen - name: jsCore distros: - - amazon2022-large + - amazon2023.0-large - name: .jscore .common !jsCore !.feature_flag_guarded - name: jsCore_txns_large_txns_format - name: json_schema @@ -418,17 +418,17 @@ buildvariants: - name: .query_fuzzer - name: .read_write_concern .large distros: - - amazon2022-large + - amazon2023.0-large - name: .read_write_concern !.large - name: .replica_sets !.encrypt !.auth distros: - - amazon2022-large + - amazon2023.0-large - name: replica_sets_api_version_jscore_passthrough_gen - name: replica_sets_reconfig_jscore_passthrough_gen - name: retryable_writes_jscore_passthrough_gen - name: retryable_writes_jscore_stepdown_passthrough_gen distros: - - amazon2022-large + - amazon2023.0-large - name: .read_only - name: .rollbackfuzzer - name: sasl @@ -444,46 +444,46 @@ buildvariants: - name: .stitch - name: .crypt distros: - - amazon2022-large + - amazon2023.0-large - name: .publish_crypt - name: secondary_reads_passthrough_gen - name: server_discovery_and_monitoring_json_test_TG - name: .serverless distros: - - amazon2022-large + - amazon2023.0-large - name: server_selection_json_test_TG distros: - - amazon2022-large + - amazon2023.0-large - name: test_packages distros: - ubuntu2204-large - name: .publish - name: generate_buildid_to_debug_symbols_mapping -- name: amazon2022-arm64 - display_name: Amazon Linux 2022 arm64 +- name: amazon2023-arm64 + display_name: Amazon Linux 2023 arm64 cron: "0 4 * * *" # From the ${project_nightly_cron} parameter. run_on: - - amazon2022-arm64-small + - amazon2023.0-arm64-small expansions: push_path: linux push_bucket: downloads.mongodb.org push_name: linux - push_arch: aarch64-amazon2022 - compile_flags: --ssl MONGO_DISTMOD=amazon2022 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off + push_arch: aarch64-amazon2023 + compile_flags: --ssl MONGO_DISTMOD=amazon2023 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off test_flags: --excludeWithAnyTags=incompatible_with_amazon_linux,requires_external_data_source,requires_latch_analyzer has_packages: true packager_script: packager.py packager_arch: aarch64 - packager_distro: amazon2022 + packager_distro: amazon2023 repo_edition: org scons_cache_scope: shared - large_distro_name: amazon2022-arm64-large - compile_variant: amazon2022-arm64 + large_distro_name: amazon2023.0-arm64-large + compile_variant: amazon2023-arm64 tasks: - name: compile_test_and_package_serial_no_unittests_TG distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: aggregation !.feature_flag_guarded - name: .auth !.audit !.multiversion - name: sharding_auth_gen @@ -491,7 +491,7 @@ buildvariants: - name: .misc_js - name: .concurrency .common distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: concurrency_replication_causal_consistency_gen - name: disk_wiredtiger - name: free_monitoring @@ -510,37 +510,37 @@ buildvariants: - name: .publish - name: generate_buildid_to_debug_symbols_mapping -- name: enterprise-amazon2022-arm64 - display_name: "Enterprise Amazon Linux 2022 arm64" +- name: enterprise-amazon2023-arm64 + display_name: "Enterprise Amazon Linux 2023 arm64" cron: "0 4 * * *" # From the ${project_nightly_cron} parameter. modules: - enterprise run_on: - - amazon2022-arm64-small + - amazon2023.0-arm64-small expansions: additional_package_targets: archive-mongocryptd archive-mongocryptd-debug archive-mh archive-mh-debug push_path: linux push_bucket: downloads.10gen.com push_name: linux - push_arch: aarch64-enterprise-amazon2022 - compile_flags: --ssl MONGO_DISTMOD=amazon2022 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off + push_arch: aarch64-enterprise-amazon2023 + compile_flags: --ssl MONGO_DISTMOD=amazon2023 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars --use-diagnostic-latches=off crypt_task_compile_flags: SHLINKFLAGS_EXTRA="-Wl,-Bsymbolic -Wl,--no-gnu-unique" CCFLAGS="-fno-gnu-unique" # TODO BUILD-13887 should fix uses_pykmip incompatibility. test_flags: --excludeWithAnyTags=incompatible_with_amazon_linux,requires_ldap_pool,uses_pykmip,requires_v4_0,requires_external_data_source,requires_latch_analyzer has_packages: true - multiversion_platform: amazon2022 + multiversion_platform: amazon2023 multiversion_edition: enterprise multiversion_architecture: aarch64 packager_script: packager_enterprise.py packager_arch: aarch64 - packager_distro: amazon2022 + packager_distro: amazon2023 repo_edition: enterprise scons_cache_scope: shared - compile_variant: enterprise-amazon2022-arm64 + compile_variant: enterprise-amazon2023-arm64 tasks: - name: compile_test_and_package_serial_no_unittests_TG distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: test_api_version_compatibility - name: .aggfuzzer !.feature_flag_guarded !.multiversion - name: .aggregation !.feature_flag_guarded @@ -553,18 +553,18 @@ buildvariants: - name: .concurrency !.large !.ubsan !.no_txns - name: .concurrency .large !.ubsan !.no_txns distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: .config_fuzzer !.large - name: .config_fuzzer .large distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: disk_wiredtiger - name: .encrypt - name: idl_tests - name: initial_sync_fuzzer_gen - name: jsCore distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: .jscore .common !jsCore !.feature_flag_guarded - name: jsCore_min_batch_repeat_queries_ese_gsm - name: jsCore_txns_large_txns_format @@ -577,17 +577,17 @@ buildvariants: - name: .query_fuzzer - name: .read_write_concern .large distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: .read_write_concern !.large - name: .replica_sets !.encrypt !.auth distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: replica_sets_api_version_jscore_passthrough_gen - name: replica_sets_reconfig_jscore_passthrough_gen - name: retryable_writes_jscore_passthrough_gen - name: retryable_writes_jscore_stepdown_passthrough_gen distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: .read_only - name: .rollbackfuzzer - name: sasl @@ -603,16 +603,16 @@ buildvariants: - name: .stitch - name: .crypt distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: .publish_crypt - name: secondary_reads_passthrough_gen - name: server_discovery_and_monitoring_json_test_TG - name: .serverless distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: server_selection_json_test_TG distros: - - amazon2022-arm64-large + - amazon2023.0-arm64-large - name: test_packages distros: - ubuntu2204-arm64-large diff --git a/etc/generate_subtasks_config.yml b/etc/generate_subtasks_config.yml index c71b3cf9b54..b212c99a573 100644 --- a/etc/generate_subtasks_config.yml +++ b/etc/generate_subtasks_config.yml @@ -1,14 +1,14 @@ build_variant_large_distro_exceptions: - amazon - amazon2 - - amazon2022 - - amazon2022-arm64 + - amazon2023 + - amazon2023-arm64 - debian10 - debian11 - enterprise-amazon2 - enterprise-amazon2-arm64 - - enterprise-amazon2022 - - enterprise-amazon2022-arm64 + - enterprise-amazon2023 + - enterprise-amazon2023-arm64 - enterprise-debian10-64 - enterprise-debian11-64 - enterprise-linux-64-amazon-ami diff --git a/etc/repo_config.yaml b/etc/repo_config.yaml index 53f6340b618..3579077c2ea 100644 --- a/etc/repo_config.yaml +++ b/etc/repo_config.yaml @@ -128,7 +128,7 @@ repos: repos: - yum/amazon/2/mongodb-org - - name: amazon2022 + - name: amazon2023 type: rpm edition: org bucket: repo.mongodb.org @@ -376,7 +376,7 @@ repos: repos: - yum/amazon/2/mongodb-enterprise - - name: amazon2022 + - name: amazon2023 type: rpm edition: enterprise bucket: repo.mongodb.com -- cgit v1.2.1