summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authort.ward <22226719+tward333@users.noreply.github.com>2022-10-06 20:12:26 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-10-06 20:44:28 +0000
commitdcba713cca7b1208cbe3b462f24924960681f593 (patch)
tree0721f727a4d3cc5870d93a322f1349ca8bf3df98
parent28ef2bc3ec29acabea963eea08a7b0abab1df79c (diff)
downloadmongo-dcba713cca7b1208cbe3b462f24924960681f593.tar.gz
SERVER-62305 Add support for amazon2022-arm64
-rw-r--r--buildscripts/package_test/kitchen.yml7
-rwxr-xr-xbuildscripts/packager.py8
-rwxr-xr-xbuildscripts/packager_enterprise.py4
-rw-r--r--etc/evergreen_yml_components/definitions.yml4
-rw-r--r--etc/evergreen_yml_components/variants/misc_release.yml173
-rw-r--r--etc/generate_subtasks_config.yml2
-rw-r--r--etc/repo_config.yaml14
7 files changed, 209 insertions, 3 deletions
diff --git a/buildscripts/package_test/kitchen.yml b/buildscripts/package_test/kitchen.yml
index 22b90a098e1..61f62ffc6e3 100644
--- a/buildscripts/package_test/kitchen.yml
+++ b/buildscripts/package_test/kitchen.yml
@@ -43,6 +43,13 @@ platforms:
instance_type: c6g.medium
transport:
username: ec2-user
+ - name: amazon2022-arm64
+ driver:
+ image_id: ami-00bca6c8c9d0e6f92
+ instance_type: c6g.medium
+ user_data: rhel-user-data.sh
+ transport:
+ username: ec2-user
- name: debian71-x86-64
driver:
image_id: ami-4b124a22
diff --git a/buildscripts/packager.py b/buildscripts/packager.py
index 2f0c0cf10e3..98ab952d619 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"]
+DISTROS = ["suse", "debian", "redhat", "ubuntu", "amazon", "amazon2", "amazon2022"]
class Spec(object):
@@ -289,6 +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 == 'ubuntu':
if build_os == 'ubuntu1204':
return "precise"
@@ -351,7 +353,7 @@ class Distro(object):
"rhel55",
"rhel67",
]
- elif self.dname in ['amazon', 'amazon2']:
+ elif self.dname in ['amazon', 'amazon2', 'amazon2022']:
return [self.dname]
elif self.dname == 'ubuntu':
return [
@@ -379,6 +381,8 @@ class Distro(object):
return 'amzn1'
elif self.dname == 'amazon2':
return 'amzn2'
+ elif self.dname == 'amazon2022':
+ return 'amzn2022'
return re.sub(r'^rh(el\d).*$', r'\1', build_os)
diff --git a/buildscripts/packager_enterprise.py b/buildscripts/packager_enterprise.py
index 35045725a01..a44789d0921 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"]
+DISTROS = ["suse", "debian", "redhat", "ubuntu", "amazon", "amazon2", "amazon2022"]
class EnterpriseSpec(packager.Spec):
@@ -144,6 +144,8 @@ class EnterpriseDistro(packager.Distro):
return ["rhel82"]
if self.dname == 'amazon2':
return ["amazon2"]
+ if self.dname == 'amazon2022':
+ return ["amazon2022"]
return []
if re.search("(redhat|fedora|centos)", self.dname):
diff --git a/etc/evergreen_yml_components/definitions.yml b/etc/evergreen_yml_components/definitions.yml
index f948889844b..eadbdd7a5aa 100644
--- a/etc/evergreen_yml_components/definitions.yml
+++ b/etc/evergreen_yml_components/definitions.yml
@@ -288,6 +288,7 @@ variables:
- mongocryptd_variants: &mongocryptd_variants
- enterprise-amazon2
- enterprise-amazon2-arm64
+ - enterprise-amazon2022-arm64
- enterprise-debian10-64
- enterprise-debian11-64
- enterprise-linux-64-amazon-ami
@@ -336,6 +337,7 @@ variables:
- enterprise-rhel-82-arm64
- enterprise-rhel-90-64-bit
- enterprise-amazon2-arm64
+ - enterprise-amazon2022-arm64
- enterprise-ubuntu1804-64
- enterprise-ubuntu2004-64
- enterprise-ubuntu2204-64
@@ -347,8 +349,10 @@ variables:
- amazon
- enterprise-linux-64-amazon-ami
- amazon2
+ - amazon2022-arm64
- enterprise-amazon2
- enterprise-amazon2-arm64
+ - enterprise-amazon2022-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 2891a4f43ff..5174394c97c 100644
--- a/etc/evergreen_yml_components/variants/misc_release.yml
+++ b/etc/evergreen_yml_components/variants/misc_release.yml
@@ -428,6 +428,179 @@ buildvariants:
- rhel80-small
- name: generate_buildid_to_debug_symbols_mapping
+- name: amazon2022-arm64
+ display_name: Amazon Linux 2022 arm64
+ cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
+ run_on:
+ - amazon2022-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_v3_gcc.vars
+ test_flags: --excludeWithAnyTags=incompatible_with_amazon_linux
+ has_packages: true
+ packager_script: packager.py
+ packager_arch: aarch64
+ packager_distro: amazon2022
+ repo_edition: org
+ scons_cache_scope: shared
+ large_distro_name: amazon2022-arm64-large
+ tasks:
+ - name: compile_test_and_package_serial_no_unittests_TG
+ distros:
+ - amazon2022-arm64-large
+ - name: aggregation !.feature_flag_guarded
+ - name: .auth !.audit !.multiversion
+ - name: causally_consistent_jscore_txns_passthrough
+ - name: .misc_js
+ - name: .concurrency .common
+ distros:
+ - amazon2022-arm64-large
+ - name: concurrency_replication_causal_consistency_gen
+ - name: disk_wiredtiger
+ - name: free_monitoring
+ - name: .jscore .common
+ - name: .jstestfuzz .common
+ - name: .logical_session_cache .one_sec
+ - name: replica_sets_gen
+ - name: .replica_sets .common
+ - name: .sharding .txns
+ - name: .sharding .common !.csrs !.multiversion
+ - name: .ssl
+ - name: .stitch
+ - name: test_packages
+ distros:
+ - ubuntu2004-package
+ - name: .publish
+ distros:
+ - rhel80-small
+ - name: generate_buildid_to_debug_symbols_mapping
+
+- name: enterprise-amazon2022-arm64
+ display_name: "Enterprise Amazon Linux 2022 arm64"
+ cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
+ modules:
+ - enterprise
+ run_on:
+ - amazon2022-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_v3_gcc.vars
+ 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
+ has_packages: true
+ multiversion_platform: amazon2022
+ multiversion_edition: enterprise
+ multiversion_architecture: arm64
+ multiversion_architecture_42_or_later: aarch64
+ multiversion_skip_install_for_40: "true"
+ packager_script: packager_enterprise.py
+ packager_arch: aarch64
+ packager_distro: amazon2022
+ repo_edition: enterprise
+ scons_cache_scope: shared
+ tasks:
+ - name: compile_test_and_package_serial_no_unittests_TG
+ distros:
+ - amazon2022-arm64-large
+ - name: test_api_version_compatibility
+ - name: .aggfuzzer !.feature_flag_guarded !.multiversion
+ - name: .aggregation !.feature_flag_guarded
+ - name: audit
+ - name: .auth !.multiversion
+ - name: .causally_consistent !.sharding
+ - name: .change_streams
+ - name: .change_stream_fuzzer
+ - name: .misc_js
+ - name: .concurrency !.large !.ubsan !.no_txns !.debug_only
+ - name: .concurrency .large !.ubsan !.no_txns !.debug_only
+ distros:
+ - amazon2022-arm64-large
+ - name: config_fuzzer_concurrency
+ - name: config_fuzzer_simulate_crash_concurrency_replication
+ distros:
+ - amazon2022-arm64-large
+ - name: config_fuzzer_concurrency_replication
+ distros:
+ - amazon2022-arm64-large
+ - name: config_fuzzer_jsCore
+ - name: config_fuzzer_replica_sets_jscore_passthrough
+ distros:
+ - amazon2022-arm64-large
+ - name: disk_wiredtiger
+ - name: .encrypt
+ - name: idl_tests
+ - name: initial_sync_fuzzer_gen
+ - name: .integration
+ distros:
+ - amazon2022-arm64-large
+ - name: jsCore
+ distros:
+ - amazon2022-arm64-large
+ - name: .jscore .common !jsCore !.feature_flag_guarded
+ - name: jsCore_minimum_batch_size
+ - name: jsCore_txns_large_txns_format
+ - name: json_schema
+ - name: .jstestfuzz !.flow_control # Flow control jstestfuzz take longer.
+ - name: libunwind_tests
+ - name: mqlrun
+ - name: .multi_shard
+ - name: multi_stmt_txn_jscore_passthrough_with_migration_gen
+ - name: .query_fuzzer
+ - name: .read_write_concern .large
+ distros:
+ - amazon2022-arm64-large
+ - name: .read_write_concern !.large
+ - name: .replica_sets !.encrypt !.auth
+ distros:
+ - amazon2022-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
+ - name: .read_only
+ - name: .rollbackfuzzer
+ - name: sasl
+ - name: search
+ - name: search_auth
+ - name: search_ssl
+ - name: session_jscore_passthrough
+ - name: .sharding .jscore !.wo_snapshot !.multi_stmt
+ - name: sharding_api_version_jscore_passthrough_gen
+ - name: .sharding .txns
+ - name: .sharding .common !.multiversion
+ - name: .stitch
+ - name: .crypt
+ distros:
+ - amazon2022-arm64-large
+ - name: .publish_crypt
+ distros:
+ - amazon2022-arm64-large
+ - name: secondary_reads_passthrough_gen
+ - name: server_discovery_and_monitoring_json_test_TG
+ - name: .serverless
+ distros:
+ - amazon2022-arm64-large
+ - name: server_selection_json_test_TG
+ distros:
+ - amazon2022-arm64-large
+ - name: test_packages
+ distros:
+ - ubuntu2004-package
+ - name: .publish
+ distros:
+ - rhel80-small
+ - name: generate_buildid_to_debug_symbols_mapping
+
- name: debian10
display_name: Debian 10
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
diff --git a/etc/generate_subtasks_config.yml b/etc/generate_subtasks_config.yml
index 06d47f1b87e..e84d4a0870c 100644
--- a/etc/generate_subtasks_config.yml
+++ b/etc/generate_subtasks_config.yml
@@ -1,10 +1,12 @@
build_variant_large_distro_exceptions:
- amazon
- amazon2
+ - amazon2022-arm64
- debian10
- debian11
- enterprise-amazon2
- enterprise-amazon2-arm64
+ - enterprise-amazon2022-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 5414c81ae0c..049506e272b 100644
--- a/etc/repo_config.yaml
+++ b/etc/repo_config.yaml
@@ -128,6 +128,13 @@ repos:
repos:
- yum/amazon/2/mongodb-org
+ - name: amazon2022
+ type: rpm
+ edition: org
+ bucket: repo.mongodb.org
+ repos:
+ - yum/amazon/2022/mongodb-org
+
- name: suse11
type: rpm
edition: org
@@ -369,6 +376,13 @@ repos:
repos:
- yum/amazon/2/mongodb-enterprise
+ - name: amazon2022
+ type: rpm
+ edition: enterprise
+ bucket: repo.mongodb.com
+ repos:
+ - yum/amazon/2022/mongodb-enterprise
+
- name: suse11
type: rpm
edition: enterprise