summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwinstonzmdb <winston.zhao@mongodb.com>2022-09-23 20:44:51 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-09-23 21:41:32 +0000
commitfbe055e5297871bd4c97904561dfcfc4b1ed85bf (patch)
tree6a5462c2d516ec65881deb3fce4334a2153c251c
parent34f2eba4ae541714a735a85a92bc736d7c5bf86b (diff)
downloadmongo-fbe055e5297871bd4c97904561dfcfc4b1ed85bf.tar.gz
SERVER-62301 Platform Support: Add support for Ubuntu 22.04 ARM
-rw-r--r--buildscripts/package_test/kitchen.yml7
-rw-r--r--buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb4
-rwxr-xr-xbuildscripts/packager_enterprise.py2
-rw-r--r--etc/evergreen_yml_components/definitions.yml3
-rw-r--r--etc/evergreen_yml_components/variants/misc_release.yml92
-rw-r--r--etc/generate_subtasks_config.yml1
6 files changed, 107 insertions, 2 deletions
diff --git a/buildscripts/package_test/kitchen.yml b/buildscripts/package_test/kitchen.yml
index b63867ca6db..22b90a098e1 100644
--- a/buildscripts/package_test/kitchen.yml
+++ b/buildscripts/package_test/kitchen.yml
@@ -139,6 +139,13 @@ platforms:
user_data: ubuntu-user-data.sh
transport:
username: ubuntu
+ - name: ubuntu2204-arm64
+ driver:
+ image_id: ami-070650c005cce4203
+ instance_type: m6g.medium
+ user_data: ubuntu-user-data.sh
+ transport:
+ username: ubuntu
transport:
ssh_key: ~/.ssh/kitchen.pem
diff --git a/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb b/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb
index 5410537864c..c0569281332 100644
--- a/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb
+++ b/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb
@@ -165,7 +165,9 @@ if deb
its('shell') {
if ((os[:name] == 'debian' and os[:release].split('.')[0] >= '10') or
(os[:name] == 'ubuntu' and os[:release] == '18.04') or
- (os[:name] == 'ubuntu' and os[:release] >= '20.04'))
+ (os[:name] == 'ubuntu' and os[:release] == '20.04') or
+ (os[:name] == 'ubuntu' and os[:release] == '22.04')
+ )
should eq '/usr/sbin/nologin'
else
should eq '/bin/false'
diff --git a/buildscripts/packager_enterprise.py b/buildscripts/packager_enterprise.py
index a03f3ab9524..35045725a01 100755
--- a/buildscripts/packager_enterprise.py
+++ b/buildscripts/packager_enterprise.py
@@ -138,7 +138,7 @@ class EnterpriseDistro(packager.Distro):
return []
if arch == "arm64":
if self.dname == 'ubuntu':
- return ["ubuntu1804", "ubuntu2004"]
+ return ["ubuntu1804", "ubuntu2004", "ubuntu2204"]
if arch == "aarch64":
if self.dname == 'redhat':
return ["rhel82"]
diff --git a/etc/evergreen_yml_components/definitions.yml b/etc/evergreen_yml_components/definitions.yml
index a864e614a95..a9cbd84dfbd 100644
--- a/etc/evergreen_yml_components/definitions.yml
+++ b/etc/evergreen_yml_components/definitions.yml
@@ -311,6 +311,7 @@ variables:
- enterprise-ubuntu1804-64
- enterprise-ubuntu1804-arm64
- enterprise-ubuntu2004-arm64
+ - enterprise-ubuntu2204-arm64
- enterprise-ubuntu2004-64
- enterprise-ubuntu2204-64
- enterprise-windows
@@ -373,11 +374,13 @@ variables:
- ubuntu1804
- ubuntu1804-arm64
- ubuntu2004-arm64
+ - ubuntu2204-arm64
- ubuntu2004
- ubuntu2204
- enterprise-ubuntu1804-64
- enterprise-ubuntu1804-arm64
- enterprise-ubuntu2004-arm64
+ - enterprise-ubuntu2204-arm64
- enterprise-ubuntu2004-64
- enterprise-windows
- windows
diff --git a/etc/evergreen_yml_components/variants/misc_release.yml b/etc/evergreen_yml_components/variants/misc_release.yml
index 8504430b1ad..c5e56a69ea8 100644
--- a/etc/evergreen_yml_components/variants/misc_release.yml
+++ b/etc/evergreen_yml_components/variants/misc_release.yml
@@ -2029,6 +2029,98 @@ buildvariants:
- ubuntu2004-test
- name: generate_buildid_to_debug_symbols_mapping
+
+- name: enterprise-ubuntu2204-arm64
+ display_name: Enterprise Ubuntu 22.04 arm64
+ cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
+ modules:
+ - enterprise
+ run_on:
+ - ubuntu2204-arm64-large
+ expansions:
+ additional_package_targets: archive-mongocryptd archive-mongocryptd-debug
+ push_path: linux
+ push_bucket: downloads.10gen.com
+ push_name: linux
+ push_arch: aarch64-enterprise-ubuntu2204
+ compile_flags: --ssl MONGO_DISTMOD=ubuntu2204 -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"
+ resmoke_jobs_max: 4 # Avoid starting too many mongod's on ARM test servers
+ has_packages: true
+ packager_script: packager_enterprise.py
+ packager_arch: arm64
+ packager_distro: ubuntu2204
+ repo_edition: enterprise
+ multiversion_platform: ubuntu2204
+ multiversion_architecture: arm64
+ multiversion_architecture_42_or_later: aarch64
+ multiversion_edition: enterprise
+ scons_cache_scope: shared
+ tasks:
+ - name: compile_test_and_package_serial_no_unittests_TG
+ - name: aggregation !.feature_flag_guarded
+ - name: aggregation_wildcard_fuzzer_gen
+ - name: .auth !.audit !.multiversion !.jscore
+ - name: causally_consistent_jscore_txns_passthrough
+ - name: .misc_js
+ - name: .concurrency .common
+ - name: concurrency_replication_causal_consistency_gen
+ - name: fle
+ - name: .jscore .common !.auth !.feature_flag_guarded
+ - name: .jstestfuzz .common
+ - name: .logical_session_cache .one_sec
+ - name: replica_sets_gen
+ - name: .replica_sets .common
+ - name: .sharding .txns
+ - name: sharding_gen
+ - name: sharding_jscore_passthrough
+ - name: .ssl
+ - name: .stitch
+ - name: .crypt
+ - name: .publish_crypt
+ - name: test_packages
+ distros:
+ - ubuntu2004-package
+ - name: .publish
+ distros:
+ - ubuntu2204-small
+ - name: generate_buildid_to_debug_symbols_mapping
+
+- name: ubuntu2204-arm64
+ display_name: Ubuntu 22.04 arm64
+ cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
+ run_on:
+ - ubuntu2204-arm64-large
+ expansions:
+ push_path: linux
+ push_bucket: downloads.mongodb.org
+ push_name: linux
+ push_arch: aarch64-ubuntu2204
+ compile_flags: --ssl MONGO_DISTMOD=ubuntu2204 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars
+ resmoke_jobs_max: 8 # Avoid starting too many mongod's on ARM test servers
+ has_packages: true
+ packager_script: packager.py
+ packager_arch: arm64
+ packager_distro: ubuntu2204
+ repo_edition: org
+ multiversion_platform: ubuntu2204
+ multiversion_architecture: arm64
+ multiversion_architecture_42_or_later: aarch64
+ multiversion_edition: targeted
+ scons_cache_scope: shared
+ tasks:
+ - name: compile_test_and_package_serial_no_unittests_TG
+ - name: free_monitoring
+ - name: jsCore
+ - name: replica_sets_jscore_passthrough
+ - name: test_packages
+ distros:
+ - ubuntu2004-package
+ - name: .publish
+ distros:
+ - ubuntu2204-small
+ - name: generate_buildid_to_debug_symbols_mapping
+
- name: windows
display_name: Windows
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
diff --git a/etc/generate_subtasks_config.yml b/etc/generate_subtasks_config.yml
index 11ef7410d60..4b78e2b086b 100644
--- a/etc/generate_subtasks_config.yml
+++ b/etc/generate_subtasks_config.yml
@@ -32,6 +32,7 @@ build_variant_large_distro_exceptions:
- enterprise-ubuntu1804-ppc64le
- enterprise-ubuntu1804-s390x
- enterprise-ubuntu2004-arm64
+ - enterprise-ubuntu2204-arm64
- hot_backups-rhel-70-64-bit
- macos
- macos-arm64