Skip to content

Commit

Permalink
SERVER-37768 Added Debian10 build variant
Browse files Browse the repository at this point in the history
  • Loading branch information
John Chen authored and evergreen committed Sep 16, 2019
1 parent 54d1ab6 commit 0d0c7ec
Show file tree
Hide file tree
Showing 5 changed files with 137 additions and 13 deletions.
5 changes: 5 additions & 0 deletions buildscripts/package_test/.kitchen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ platforms:
image_id: ami-71b7750b
transport:
username: admin
- name: debian10
driver:
image_id: ami-02ad06066b040a84b
transport:
username: admin
- name: rhel62
driver:
# Use rhel 6.3 because chef-solo fails on rhel 6.2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,18 +144,19 @@
it { should be_directory }
end

if os[:release] == '18.04'
describe user('mongodb') do
it { should exist }
its('groups') { should include 'mongodb' }
its('shell') { should eq '/usr/sbin/nologin' }
end
else
describe user('mongodb') do
it { should exist }
its('groups') { should include 'mongodb' }
its('shell') { should eq '/bin/false' }
end
describe user('mongodb') do
it { should exist }
its('groups') { should include 'mongodb' }
# All versions of Debian 10 will use /usr/sbin/nologin for service
# account shells
its('shell') {
if ((os[:family] == 'debian' and os[:release].split('.')[0] == '10') or
(os[:family] == 'ubuntu' and os[:release] == '18.04'))
should eq '/usr/sbin/nologin'
else
should eq '/bin/false'
end
}
end
end

Expand Down
4 changes: 3 additions & 1 deletion buildscripts/packager.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,6 +300,8 @@ def repo_os_version(self, build_os): # pylint: disable=too-many-branches
return 'jessie'
elif build_os == 'debian92':
return 'stretch'
elif build_os == 'debian10':
return 'buster'
else:
raise Exception("unsupported build_os: %s" % build_os)
else:
Expand Down Expand Up @@ -339,7 +341,7 @@ def build_os(self, arch):
"ubuntu1804",
]
elif self.dname == 'debian':
return ["debian81", "debian92"]
return ["debian81", "debian92", "debian10"]
else:
raise Exception("BUG: unsupported platform?")

Expand Down
105 changes: 105 additions & 0 deletions etc/evergreen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,7 @@ variables:
- mongocryptd_variants: &mongocryptd_variants
- enterprise-amazon2
- enterprise-debian92-64
- enterprise-debian10-64
- enterprise-linux-64-amazon-ami
- enterprise-macos
- enterprise-macos-openssl
Expand Down Expand Up @@ -11856,6 +11857,110 @@ buildvariants:
- ubuntu1604-packer
- name: .publish

- name: enterprise-debian10-64
display_name: Enterprise Debian 10
modules:
- enterprise
run_on:
- debian10-test
batchtime: 1440 # 1 day
expansions:
push_path: linux
push_bucket: downloads.10gen.com
push_name: linux
push_arch: x86_64-enterprise-debian10
mh_target: dist-mh
compile_flags: --ssl MONGO_DISTMOD=debian10 --release -j$(grep -c ^processor /proc/cpuinfo) --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars
multiversion_platform: debian10
multiversion_edition: enterprise
# We invoke SCons using --jobs = (# of CPUs / 4) to avoid causing out of memory errors due to
# spawning a large number of linker processes.
num_scons_link_jobs_available: $(( $(grep -c ^processor /proc/cpuinfo) / 4 ))
has_packages: true
packager_script: packager_enterprise.py
packager_arch: x86_64
packager_distro: debian10
repo_edition: enterprise
tooltags: "ssl sasl gssapi"
scons_cache_scope: shared
build_mongoreplay: true
tasks:
- name: compile_all_run_unittests_TG
distros:
- debian10-build
- name: .aggfuzzer .common
- name: audit
- name: causally_consistent_jscore_txns_passthrough
- name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore
- name: .jscore .common !.decimal !.compat !.sharding
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: replica_sets_auth_gen
- name: replica_sets_jscore_passthrough
- name: sasl
- name: sharding_auth_gen
- name: snmp
- name: .stitch
- name: package
distros:
- ubuntu1604-packer
- name: .publish

- name: debian10
display_name: Debian 10
run_on:
- debian10-test
batchtime: 1440 # 1 day
expansions:
push_path: linux
push_bucket: downloads.mongodb.org
push_name: linux
push_arch: x86_64-debian10
compile_flags: --ssl MONGO_DISTMOD=debian10 -j$(grep -c ^processor /proc/cpuinfo) --release --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars
# We invoke SCons using --jobs = (# of CPUs / 4) to avoid causing out of memory errors due to
# spawning a large number of linker processes.
num_scons_link_jobs_available: $(( $(grep -c ^processor /proc/cpuinfo) / 4 ))
multiversion_platform: debian10
multiversion_edition: targeted
has_packages: true
packager_script: packager.py
packager_arch: x86_64
packager_distro: debian10
repo_edition: org
tooltags: "ssl"
scons_cache_scope: shared
build_mongoreplay: true
tasks:
- name: compile_all_run_unittests_TG
distros:
- debian10-build
- name: .aggfuzzer .common
- name: aggregation
- name: aggregation_auth
- name: .auth !.audit !.multiversion
- name: causally_consistent_jscore_txns_passthrough
- name: .misc_js
- name: .concurrency .common
- name: concurrency_replication_causal_consistency
distros:
- debian10-build
- name: disk_wiredtiger
- name: free_monitoring
- name: .jscore .common !.decimal
- name: .jstestfuzz .common
- name: .logical_session_cache .one_sec
- name: multiversion
- name: replica_sets
- name: .replica_sets .common
- name: .sharding .jscore !.wo_snapshot !.multi_stmt
- name: .sharding .common !.op_query !.csrs
- name: .ssl
- name: .stitch
- name: package
distros:
- ubuntu1604-packer
- name: .publish

################################
# storage engine buildvariants #
################################
Expand Down
11 changes: 11 additions & 0 deletions etc/repo_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,17 @@ repos:
repos:
- apt/debian/dists/stretch/mongodb-org

- name: debian10
type: deb
code_name: "buster"
bucket: repo.mongodb.org
edition: org
component: main
architectures:
- amd64
repos:
- apt/debian/dists/buster/mongodb-org

- name: debian71
type: deb
code_name: "wheezy"
Expand Down

0 comments on commit 0d0c7ec

Please sign in to comment.