summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authort.ward <22226719+tward333@users.noreply.github.com>2022-10-21 22:20:49 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-10-21 22:54:02 +0000
commitd69115cf6b30532985ec49db1b9bc4236d461e6b (patch)
treefc4d7e1a251b8cb7ec845fe82356d93da53f5063
parent806ff5306840425bbe6cf8d06bc343d1294a3fb7 (diff)
downloadmongo-d69115cf6b30532985ec49db1b9bc4236d461e6b.tar.gz
SERVER-62300 BACKPORT-13546 Platform Support: Add support for Ubuntu 22.04 x86
-rw-r--r--buildscripts/package_test/kitchen.yml6
-rw-r--r--buildscripts/package_test/recipes/install_mongodb.rb2
-rw-r--r--buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb3
-rw-r--r--buildscripts/package_test/ubuntu-user-data.sh7
-rwxr-xr-xbuildscripts/packager.py3
-rw-r--r--etc/evergreen_yml_components/definitions.yml3
-rw-r--r--etc/evergreen_yml_components/variants/misc_release.yml110
-rw-r--r--etc/repo_config.yaml24
8 files changed, 155 insertions, 3 deletions
diff --git a/buildscripts/package_test/kitchen.yml b/buildscripts/package_test/kitchen.yml
index f27ab0bfd26..dd8ea3c0252 100644
--- a/buildscripts/package_test/kitchen.yml
+++ b/buildscripts/package_test/kitchen.yml
@@ -127,6 +127,12 @@ platforms:
driver:
image_id: ami-00579fbb15b954340
instance_type: m6g.medium
+ - name: ubuntu2204-x86-64
+ driver:
+ image_id: ami-051dcca84f1edfff1
+ user_data: ubuntu-user-data.sh
+ transport:
+ username: ubuntu
transport:
ssh_key: ~/.ssh/kitchen.pem
diff --git a/buildscripts/package_test/recipes/install_mongodb.rb b/buildscripts/package_test/recipes/install_mongodb.rb
index d57546ce6b9..5756e77f7b0 100644
--- a/buildscripts/package_test/recipes/install_mongodb.rb
+++ b/buildscripts/package_test/recipes/install_mongodb.rb
@@ -53,7 +53,7 @@ if platform_family? 'debian'
# the ubuntu image does not have some dependencies installed by default
# and it is required for the install_compass script
- if node['platform'] == 'ubuntu' and node['platform_version'] == '20.04'
+ if node['platform'] == 'ubuntu' and node['platform_version'] >= '20.04'
execute 'install dependencies ubuntu 20.04' do
command 'apt-get install -y python3 libsasl2-modules-gssapi-mit'
live_stream true
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 821f55f1a57..886f4809d79 100644
--- a/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb
+++ b/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb
@@ -164,8 +164,7 @@ if deb
# account shells
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] >= '18.04'))
should eq '/usr/sbin/nologin'
else
should eq '/bin/false'
diff --git a/buildscripts/package_test/ubuntu-user-data.sh b/buildscripts/package_test/ubuntu-user-data.sh
new file mode 100644
index 00000000000..0475f8391a1
--- /dev/null
+++ b/buildscripts/package_test/ubuntu-user-data.sh
@@ -0,0 +1,7 @@
+#! /bin/bash
+echo "HostkeyAlgorithms +ssh-rsa" >> /etc/ssh/sshd_config
+echo "PubkeyAcceptedAlgorithms +ssh-rsa" >> /etc/ssh/sshd_config
+
+systemctl restart sshd
+
+touch /root/userdata_ran
diff --git a/buildscripts/packager.py b/buildscripts/packager.py
index d90f0c80489..380498be593 100755
--- a/buildscripts/packager.py
+++ b/buildscripts/packager.py
@@ -302,6 +302,8 @@ class Distro(object):
return "bionic"
elif build_os == 'ubuntu2004':
return "focal"
+ elif build_os == 'ubuntu2204':
+ return "jammy"
else:
raise Exception("unsupported build_os: %s" % build_os)
elif self.dname == 'debian':
@@ -351,6 +353,7 @@ class Distro(object):
"ubuntu1604",
"ubuntu1804",
"ubuntu2004",
+ "ubuntu2204",
]
elif self.dname == 'debian':
return ["debian81", "debian92", "debian10", "debian11"]
diff --git a/etc/evergreen_yml_components/definitions.yml b/etc/evergreen_yml_components/definitions.yml
index f8c3848a65b..cf679bff88e 100644
--- a/etc/evergreen_yml_components/definitions.yml
+++ b/etc/evergreen_yml_components/definitions.yml
@@ -305,6 +305,7 @@ variables:
- enterprise-ubuntu1804-arm64
- enterprise-ubuntu2004-arm64
- enterprise-ubuntu2004-64
+ - enterprise-ubuntu2204-64
- enterprise-windows
- enterprise-windows-debug-unoptimized
- enterprise-windows-inmem
@@ -327,6 +328,7 @@ variables:
- enterprise-rhel-82-arm64
- enterprise-amazon2-arm64
- enterprise-ubuntu1804-64
+ - enterprise-ubuntu2204-64
- enterprise-windows
- enterprise-windows-required
@@ -361,6 +363,7 @@ variables:
- ubuntu1804-arm64
- ubuntu2004-arm64
- ubuntu2004
+ - ubuntu2204
- enterprise-ubuntu1804-64
- enterprise-ubuntu1804-arm64
- enterprise-ubuntu2004-arm64
diff --git a/etc/evergreen_yml_components/variants/misc_release.yml b/etc/evergreen_yml_components/variants/misc_release.yml
index 1f0f001da79..2448bacf11c 100644
--- a/etc/evergreen_yml_components/variants/misc_release.yml
+++ b/etc/evergreen_yml_components/variants/misc_release.yml
@@ -1405,6 +1405,60 @@ buildvariants:
- ubuntu1804-test
- name: generate_buildid_to_debug_symbols_mapping
+
+- name: ubuntu2204
+ display_name: Ubuntu 22.04
+ cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
+ run_on:
+ - ubuntu2204-small
+ expansions:
+ push_path: linux
+ push_bucket: downloads.mongodb.org
+ push_name: linux
+ push_arch: x86_64-ubuntu2204
+ compile_flags: --ssl MONGO_DISTMOD=ubuntu2204 -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars
+ multiversion_platform: ubuntu2204
+ multiversion_edition: targeted
+ has_packages: true
+ packager_script: packager.py
+ packager_arch: x86_64
+ packager_distro: ubuntu2204
+ repo_edition: org
+ scons_cache_scope: shared
+ large_distro_name: ubuntu2204-large
+ tasks:
+ - name: compile_test_and_package_serial_TG
+ distros:
+ - ubuntu2204-large
+ - name: .aggfuzzer .common !.multiversion
+ - name: aggregation
+ - name: .auth !.audit !.multiversion
+ - name: .misc_js
+ - name: .concurrency .common
+ - name: concurrency_replication_causal_consistency_gen
+ - name: disk_wiredtiger
+ - name: free_monitoring
+ - name: .jscore .common
+ - name: .jstestfuzz .common
+ - name: libunwind_tests
+ - name: .logical_session_cache .one_sec
+ # - name: multiversion_gen
+ - name: replica_sets_gen
+ - name: replica_sets_jscore_passthrough
+ - name: .sharding .txns
+ - name: sharding_gen
+ - name: sharding_jscore_passthrough
+ - name: .ssl
+ - name: .stitch
+ - name: test_packages
+ distros:
+ - ubuntu2004-package
+ - name: .publish
+ distros:
+ - ubuntu2204-small
+ - name: generate_buildid_to_debug_symbols_mapping
+
+
- name: ubuntu2004
display_name: Ubuntu 20.04
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
@@ -1513,6 +1567,62 @@ buildvariants:
- ubuntu2004-small
- name: generate_buildid_to_debug_symbols_mapping
+- name: enterprise-ubuntu2204-64
+ display_name: Enterprise Ubuntu 22.04
+ cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
+ modules:
+ - enterprise
+ run_on:
+ - ubuntu2204-small
+ stepback: false
+ 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-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"
+ multiversion_platform: ubuntu2204
+ multiversion_edition: enterprise
+ has_packages: true
+ packager_script: packager_enterprise.py
+ packager_arch: x86_64
+ packager_distro: ubuntu2204
+ repo_edition: enterprise
+ scons_cache_scope: shared
+ large_distro_name: ubuntu2204-large
+ tasks:
+ - name: compile_test_and_package_serial_TG
+ distros:
+ - ubuntu2204-large
+ - name: .crypt
+ - name: .publish_crypt
+ - name: .aggfuzzer .common !.multiversion
+ - name: audit
+ - name: causally_consistent_jscore_txns_passthrough
+ - name: .encrypt !.aggregation !.replica_sets !.sharding !.jscore
+ - name: external_auth
+ - name: external_auth_aws
+ - name: .jscore .common !.decimal !.sharding
+ - name: jsCore_auth
+ - name: .jstestfuzz .common
+ - name: libunwind_tests
+ - name: .logical_session_cache .one_sec
+ - name: .ocsp
+ - name: replica_sets_auth_gen
+ - name: replica_sets_jscore_passthrough
+ - name: sasl
+ - name: sharding_auth_gen
+ - name: snmp
+ - name: test_packages
+ distros:
+ - ubuntu2004-package
+ - name: .publish
+ distros:
+ - ubuntu2204-small
+ - name: generate_buildid_to_debug_symbols_mapping
+
- name: enterprise-ubuntu2004-arm64
display_name: Enterprise Ubuntu 20.04 arm64
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
diff --git a/etc/repo_config.yaml b/etc/repo_config.yaml
index 0fa0e5719b5..d5bfee8811c 100644
--- a/etc/repo_config.yaml
+++ b/etc/repo_config.yaml
@@ -249,6 +249,18 @@ repos:
repos:
- apt/ubuntu/dists/focal/mongodb-org
+ - name: ubuntu2204
+ type: deb
+ code_name: "jammy"
+ edition: org
+ bucket: repo.mongodb.org
+ component: multiverse
+ architectures:
+ - amd64
+ - arm64
+ repos:
+ - apt/ubuntu/dists/jammy/mongodb-org
+
####################
#
# Enterprise Repos:
@@ -479,3 +491,15 @@ repos:
- arm64
repos:
- apt/ubuntu/dists/focal/mongodb-enterprise
+
+ - name: ubuntu2204
+ type: deb
+ code_name: "jammy"
+ edition: enterprise
+ bucket: repo.mongodb.com
+ component: multiverse
+ architectures:
+ - amd64
+ - arm64
+ repos:
+ - apt/ubuntu/dists/jammy/mongodb-enterprise