diff options
author | John Chen <johnchen456@gmail.com> | 2019-07-11 10:54:16 -0400 |
---|---|---|
committer | John Chen <johnchen456@gmail.com> | 2019-07-25 17:58:58 -0400 |
commit | 284630e3704be4be091154c5b7fe63c335e9d70c (patch) | |
tree | 327189b4f34c70417bb28090aa238f03323d076e | |
parent | 8f75d29d9c814da8c1fd66816a92ef667bc6820f (diff) | |
download | mongo-284630e3704be4be091154c5b7fe63c335e9d70c.tar.gz |
SERVER-37772 adding RHEL80 distro
-rw-r--r-- | buildscripts/package_test/.kitchen.yml | 5 | ||||
-rwxr-xr-x | buildscripts/packager.py | 10 | ||||
-rwxr-xr-x | buildscripts/packager_enterprise.py | 4 | ||||
-rw-r--r-- | etc/evergreen.yml | 118 | ||||
-rw-r--r-- | rpm/mongodb-enterprise-unstable.spec | 4 | ||||
-rw-r--r-- | rpm/mongodb-enterprise.spec | 4 | ||||
-rw-r--r-- | rpm/mongodb-org-unstable.spec | 4 | ||||
-rw-r--r-- | rpm/mongodb-org.spec | 4 | ||||
-rwxr-xr-x | src/mongo/installer/compass/install_compass.in | 2 |
9 files changed, 141 insertions, 14 deletions
diff --git a/buildscripts/package_test/.kitchen.yml b/buildscripts/package_test/.kitchen.yml index 3dc27c808b3..3ee7b703bda 100644 --- a/buildscripts/package_test/.kitchen.yml +++ b/buildscripts/package_test/.kitchen.yml @@ -60,6 +60,11 @@ platforms: image_id: ami-60a1e808 transport: username: root + - name: rhel80 + driver: + image_id: ami-0c322300a1dd5dc79 + transport: + username: ec2-user - name: suse11 driver: image_id: ami-7f2e6015 diff --git a/buildscripts/packager.py b/buildscripts/packager.py index 6d951d04b4f..582d10aa22d 100755 --- a/buildscripts/packager.py +++ b/buildscripts/packager.py @@ -328,7 +328,7 @@ class Distro(object): if re.search("(suse)", self.dname): return ["suse11", "suse12", "suse15"] elif re.search("(redhat|fedora|centos)", self.dname): - return ["rhel70", "rhel71", "rhel72", "rhel62", "rhel55", "rhel67"] + return ["rhel80", "rhel70", "rhel71", "rhel72", "rhel62", "rhel55", "rhel67"] elif self.dname in ['amazon', 'amazon2']: return [self.dname] elif self.dname == 'ubuntu': @@ -841,12 +841,8 @@ def make_rpm(distro, build_os, arch, spec, srcdir): # pylint: disable=too-many- # Versions of RPM after 4.4 ignore our BuildRoot tag so we need to # specify it on the command line args to rpmbuild - # - # Current versions of RHEL at the time of this writing (RHEL < 8) patch in - # the old behavior so that our BuildRoot tag still works on these versions. - # - # Probably need to add RHEL 8 to this when we start building for it - if distro.name() == "suse" and distro.repo_os_version(build_os) == "15": + if ((distro.name() == "suse" and distro.repo_os_version(build_os) == "15") + or (distro.name() == "redhat" and distro.repo_os_version(build_os) == "8")): flags.extend([ "--buildroot", os.path.join(topdir, "BUILDROOT"), diff --git a/buildscripts/packager_enterprise.py b/buildscripts/packager_enterprise.py index 9fbc2f0031b..a8ebbd06286 100755 --- a/buildscripts/packager_enterprise.py +++ b/buildscripts/packager_enterprise.py @@ -116,7 +116,7 @@ class EnterpriseDistro(packager.Distro): def build_os(self, arch): # pylint: disable=too-many-branches """Return the build os label in the binary package to download. - The labels "rhel57", "rhel62", "rhel67" and "rhel70" are for redhat, + The labels "rhel57", "rhel62", "rhel67", "rhel70", "rhel80" are for redhat, the others are delegated to the super class. """ # pylint: disable=too-many-return-statements @@ -140,7 +140,7 @@ class EnterpriseDistro(packager.Distro): return [] if re.search("(redhat|fedora|centos)", self.dname): - return ["rhel70", "rhel62", "rhel57"] + return ["rhel80", "rhel70", "rhel62", "rhel57"] return super(EnterpriseDistro, self).build_os(arch) # pylint: enable=too-many-return-statements diff --git a/etc/evergreen.yml b/etc/evergreen.yml index 045259957dc..51e7703676c 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -382,6 +382,7 @@ variables: - enterprise-rhel-71-ppc64le-inmem - enterprise-rhel-72-s390x - enterprise-rhel-72-s390x-inmem + - enterprise-rhel-80-64-bit - enterprise-suse12-64 - enterprise-suse15-64 - enterprise-suse12-s390x @@ -10831,6 +10832,68 @@ buildvariants: - ubuntu1604-packer - name: .publish +- &enterprise-rhel-80-64-bit-template + name: enterprise-rhel-80-64-bit + display_name: "Enterprise RHEL 8.0" + modules: + - enterprise + run_on: + - rhel80-build + expansions: + push_path: linux + push_bucket: downloads.10gen.com + push_name: linux + push_arch: x86_64-enterprise-rhel80 + mh_target: dist-mh + compile_flags: --ssl MONGO_DISTMOD=rhel80 -j$(grep -c ^processor /proc/cpuinfo) --release --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars + multiversion_platform: rhel80 + multiversion_edition: enterprise + has_packages: true + packager_script: packager_enterprise.py + packager_arch: x86_64 + packager_distro: rhel80 + repo_edition: enterprise + scons_cache_scope: shared + tooltags: "ssl sasl gssapi" + build_mongoreplay: true + display_tasks: + - *dbtest + - *unittests + tasks: + - name: compile_all_run_unittests_TG + distros: + - rhel80-build + - name: compile_benchmarks + distros: + - rhel80-build + - name: .aggfuzzer + - name: audit + - name: auth_audit_gen + - name: auth_gen + - name: .benchmarks + - name: causally_consistent_jscore_txns_passthrough + - name: .encrypt !.sharding !.replica_sets !.aggregation !.jscore + - name: external_auth + - name: .jscore .common !.compat !.decimal !.sharding + - name: jsCore_txns_large_txns_format + - name: .jstestfuzz .common + - name: .logical_session_cache .one_sec + - name: replica_sets_auth_gen + - name: replica_sets_jscore_passthrough + - name: .replica_sets .multi_oplog + - name: sasl + - name: search_beta + - name: search_beta_auth + - name: search_beta_ssl + - name: sharding_auth_audit_gen + - name: sharding_auth_gen + - name: snmp + - name: .stitch + - name: package + distros: + - ubuntu1604-packer + - name: .publish + # This variant is to intentionally test uncommon features nightly - <<: *enterprise-rhel-70-64-bit-template name: enterprise-rhel-70-64-bit-kitchen-sink @@ -11008,6 +11071,61 @@ buildvariants: - ubuntu1604-packer - name: .publish +- name: rhel80 + display_name: SSL RHEL 8.0 + run_on: + - rhel80-build + batchtime: 1440 # 1 day + expansions: + push_path: linux + push_bucket: downloads.mongodb.org + push_name: linux + push_arch: x86_64-rhel80 + compile_flags: --ssl MONGO_DISTMOD=rhel80 -j$(grep -c ^processor /proc/cpuinfo) --release --variables-files=etc/scons/mongodbtoolchain_v3_gcc.vars + multiversion_platform: rhel80 + multiversion_edition: targeted + has_packages: true + packager_script: packager.py + packager_arch: x86_64 + packager_distro: rhel80 + repo_edition: org + scons_cache_scope: shared + tooltags: "ssl" + build_mongoreplay: true + display_tasks: + - *dbtest + - *unittests + tasks: + - name: compile_all_run_unittests_TG + distros: + - rhel80-build + - name: aggregation + - name: .auth !.audit !.multiversion + - name: causally_consistent_jscore_txns_passthrough + - name: .misc_js + - name: .concurrency .common + distros: + - rhel80-build + - name: concurrency_replication_causal_consistency + distros: + - rhel80-build + - name: disk_wiredtiger + - name: free_monitoring + - name: .jscore .common + - name: .jstestfuzz .common + - name: .logical_session_cache .one_sec + - name: multiversion + - name: replica_sets + - name: .replica_sets .common + - name: .sharding .txns + - name: .sharding .common !.op_query !.csrs + - name: .ssl + - name: .stitch + - name: package + distros: + - ubuntu1604-packer + - name: .publish + # This variant compiles on RHEL 7.0 and runs tests on RHEL 7.6 - name: rhel76_compile_rhel70 display_name: RHEL 7.0/7.6 Cross-ABI diff --git a/rpm/mongodb-enterprise-unstable.spec b/rpm/mongodb-enterprise-unstable.spec index 68086ed8b6c..7631374b603 100644 --- a/rpm/mongodb-enterprise-unstable.spec +++ b/rpm/mongodb-enterprise-unstable.spec @@ -15,8 +15,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %if 0%{?suse_version} %define timezone_pkg timezone +%define python_pkg python %else %define timezone_pkg tzdata +%define python_pkg python2 %endif %description @@ -40,7 +42,7 @@ This metapackage will install the mongo shell, import/export tools, other client %package server Summary: MongoDB database server (enterprise) Group: Applications/Databases -Requires: openssl, net-snmp, cyrus-sasl, cyrus-sasl-plain, cyrus-sasl-gssapi, %{timezone_pkg} +Requires: openssl, net-snmp, cyrus-sasl, cyrus-sasl-plain, cyrus-sasl-gssapi, %{timezone_pkg}, %{python_pkg} Conflicts: mongo-10gen, mongo-10gen-enterprise, mongo-10gen-enterprise-server, mongo-10gen-server, mongo-10gen-unstable, mongo-10gen-unstable-enterprise, mongo-10gen-unstable-enterprise-mongos, mongo-10gen-unstable-enterprise-server, mongo-10gen-unstable-enterprise-shell, mongo-10gen-unstable-enterprise-tools, mongo-10gen-unstable-mongos, mongo-10gen-unstable-server, mongo-10gen-unstable-shell, mongo-10gen-unstable-tools, mongo18-10gen, mongo18-10gen-server, mongo20-10gen, mongo20-10gen-server, mongodb, mongodb-server, mongodb-dev, mongodb-clients, mongodb-10gen, mongodb-10gen-enterprise, mongodb-10gen-unstable, mongodb-10gen-unstable-enterprise, mongodb-10gen-unstable-enterprise-mongos, mongodb-10gen-unstable-enterprise-server, mongodb-10gen-unstable-enterprise-shell, mongodb-10gen-unstable-enterprise-tools, mongodb-10gen-unstable-mongos, mongodb-10gen-unstable-server, mongodb-10gen-unstable-shell, mongodb-10gen-unstable-tools, mongodb-enterprise, mongodb-enterprise-mongos, mongodb-enterprise-server, mongodb-enterprise-shell, mongodb-enterprise-tools, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen, mongodb-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-server, mongodb-org-unstable-shell, mongodb-org-unstable-tools BuildRequires: systemd diff --git a/rpm/mongodb-enterprise.spec b/rpm/mongodb-enterprise.spec index 517eb60760f..e270d707c6b 100644 --- a/rpm/mongodb-enterprise.spec +++ b/rpm/mongodb-enterprise.spec @@ -16,8 +16,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %if 0%{?suse_version} %define timezone_pkg timezone +%define python_pkg python %else %define timezone_pkg tzdata +%define python_pkg python2 %endif %description @@ -41,7 +43,7 @@ This metapackage will install the mongo shell, import/export tools, other client %package server Summary: MongoDB database server (enterprise) Group: Applications/Databases -Requires: openssl, net-snmp, cyrus-sasl, cyrus-sasl-plain, cyrus-sasl-gssapi, %{timezone_pkg} +Requires: openssl, net-snmp, cyrus-sasl, cyrus-sasl-plain, cyrus-sasl-gssapi, %{timezone_pkg}, %{python_pkg} Conflicts: mongo-10gen, mongo-10gen-server, mongo-10gen-unstable, mongo-10gen-unstable-enterprise, mongo-10gen-unstable-enterprise-mongos, mongo-10gen-unstable-enterprise-server, mongo-10gen-unstable-enterprise-shell, mongo-10gen-unstable-enterprise-tools, mongo-10gen-unstable-mongos, mongo-10gen-unstable-server, mongo-10gen-unstable-shell, mongo-10gen-unstable-tools, mongo18-10gen, mongo18-10gen-server, mongo20-10gen, mongo20-10gen-server, mongodb, mongodb-server, mongodb-dev, mongodb-clients, mongodb-10gen, mongodb-10gen-enterprise, mongodb-10gen-unstable, mongodb-10gen-unstable-enterprise, mongodb-10gen-unstable-enterprise-mongos, mongodb-10gen-unstable-enterprise-server, mongodb-10gen-unstable-enterprise-shell, mongodb-10gen-unstable-enterprise-tools, mongodb-10gen-unstable-mongos, mongodb-10gen-unstable-server, mongodb-10gen-unstable-shell, mongodb-10gen-unstable-tools, mongodb-enterprise-unstable, mongodb-enterprise-unstable-mongos, mongodb-enterprise-unstable-server, mongodb-enterprise-unstable-shell, mongodb-enterprise-unstable-tools, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen, mongodb-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-server, mongodb-org-unstable-shell, mongodb-org-unstable-tools Obsoletes: mongo-10gen-enterprise-server Provides: mongo-10gen-enterprise-server diff --git a/rpm/mongodb-org-unstable.spec b/rpm/mongodb-org-unstable.spec index 22c7e3972f3..71495992578 100644 --- a/rpm/mongodb-org-unstable.spec +++ b/rpm/mongodb-org-unstable.spec @@ -14,8 +14,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %if 0%{?suse_version} %define timezone_pkg timezone +%define python_pkg python %else %define timezone_pkg tzdata +%define python_pkg python2 %endif %description @@ -39,7 +41,7 @@ This metapackage will install the mongo shell, import/export tools, other client %package server Summary: MongoDB database server Group: Applications/Databases -Requires: openssl, %{timezone_pkg} +Requires: openssl, %{timezone_pkg}, %{python_pkg} Conflicts: mongo-10gen, mongo-10gen-enterprise, mongo-10gen-enterprise-server, mongo-10gen-server, mongo-10gen-unstable, mongo-10gen-unstable-enterprise, mongo-10gen-unstable-enterprise-mongos, mongo-10gen-unstable-enterprise-server, mongo-10gen-unstable-enterprise-shell, mongo-10gen-unstable-enterprise-tools, mongo-10gen-unstable-mongos, mongo-10gen-unstable-server, mongo-10gen-unstable-shell, mongo-10gen-unstable-tools, mongo18-10gen, mongo18-10gen-server, mongo20-10gen, mongo20-10gen-server, mongodb, mongodb-server, mongodb-dev, mongodb-clients, mongodb-10gen, mongodb-10gen-enterprise, mongodb-10gen-unstable, mongodb-10gen-unstable-enterprise, mongodb-10gen-unstable-enterprise-mongos, mongodb-10gen-unstable-enterprise-server, mongodb-10gen-unstable-enterprise-shell, mongodb-10gen-unstable-enterprise-tools, mongodb-10gen-unstable-mongos, mongodb-10gen-unstable-server, mongodb-10gen-unstable-shell, mongodb-10gen-unstable-tools, mongodb-enterprise, mongodb-enterprise-mongos, mongodb-enterprise-server, mongodb-enterprise-shell, mongodb-enterprise-tools, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen, mongodb-enterprise-unstable, mongodb-enterprise-unstable-mongos, mongodb-enterprise-unstable-server, mongodb-enterprise-unstable-shell, mongodb-enterprise-unstable-tools %description server diff --git a/rpm/mongodb-org.spec b/rpm/mongodb-org.spec index c8e9cf0a907..e782731e776 100644 --- a/rpm/mongodb-org.spec +++ b/rpm/mongodb-org.spec @@ -16,8 +16,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %if 0%{?suse_version} %define timezone_pkg timezone +%define python_pkg python %else %define timezone_pkg tzdata +%define python_pkg python2 %endif %description @@ -41,7 +43,7 @@ This metapackage will install the mongo shell, import/export tools, other client %package server Summary: MongoDB database server Group: Applications/Databases -Requires: openssl, %{timezone_pkg} +Requires: openssl, %{timezone_pkg}, %{python_pkg} Conflicts: mongo-10gen-enterprise, mongo-10gen-enterprise-server, mongo-10gen-unstable, mongo-10gen-unstable-enterprise, mongo-10gen-unstable-enterprise-mongos, mongo-10gen-unstable-enterprise-server, mongo-10gen-unstable-enterprise-shell, mongo-10gen-unstable-enterprise-tools, mongo-10gen-unstable-mongos, mongo-10gen-unstable-server, mongo-10gen-unstable-shell, mongo-10gen-unstable-tools, mongo18-10gen, mongo18-10gen-server, mongo20-10gen, mongo20-10gen-server, mongodb, mongodb-server, mongodb-dev, mongodb-clients, mongodb-10gen, mongodb-10gen-enterprise, mongodb-10gen-unstable, mongodb-10gen-unstable-enterprise, mongodb-10gen-unstable-enterprise-mongos, mongodb-10gen-unstable-enterprise-server, mongodb-10gen-unstable-enterprise-shell, mongodb-10gen-unstable-enterprise-tools, mongodb-10gen-unstable-mongos, mongodb-10gen-unstable-server, mongodb-10gen-unstable-shell, mongodb-10gen-unstable-tools, mongodb-enterprise, mongodb-enterprise-mongos, mongodb-enterprise-server, mongodb-enterprise-shell, mongodb-enterprise-tools, mongodb-nightly, mongodb-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-server, mongodb-org-unstable-shell, mongodb-org-unstable-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen, mongodb-enterprise-unstable, mongodb-enterprise-unstable-mongos, mongodb-enterprise-unstable-server, mongodb-enterprise-unstable-shell, mongodb-enterprise-unstable-tools Obsoletes: mongo-10gen-server Provides: mongo-10gen-server diff --git a/src/mongo/installer/compass/install_compass.in b/src/mongo/installer/compass/install_compass.in index ed59f280345..19bdce54a9d 100755 --- a/src/mongo/installer/compass/install_compass.in +++ b/src/mongo/installer/compass/install_compass.in @@ -132,7 +132,7 @@ def is_supported_distro(): if (distro_name == 'Ubuntu' and float(version_number) >= 14.04): return True - if ((distro_name == 'Red Hat Enterprise Linux Server' or 'CentOS' in distro_name) + if (('Red Hat Enterprise Linux' in distro_name or 'CentOS' in distro_name) and (float(version_number) >= 7.0)): return True |