diff options
4 files changed, 39 insertions, 21 deletions
diff --git a/buildscripts/package_test/recipes/install_mongodb.rb b/buildscripts/package_test/recipes/install_mongodb.rb index 13489ce7c4d..ab7263ec589 100644 --- a/buildscripts/package_test/recipes/install_mongodb.rb +++ b/buildscripts/package_test/recipes/install_mongodb.rb @@ -1,3 +1,6 @@ +# This Chef task installs MongoDB in a new EC2 instance spun up by Kitchen in +# preparation for running some basic server functionality tests. + artifacts_tarball = 'artifacts.tgz' user = node['current_user'] homedir = node['etc']['passwd'][user]['dir'] @@ -24,13 +27,14 @@ end execute 'extract artifacts' do command "tar xzvf #{artifacts_tarball}" + live_stream true cwd homedir end if platform_family? 'debian' # SERVER-40491 Debian 8 sources.list need to point to archive url - if node['platform_version'] == '8.1' + if node['platform'] == 'debian' and node['platform_version'] == '8.1' cookbook_file '/etc/apt/sources.list' do source 'sources.list.debian8' owner 'root' @@ -40,24 +44,34 @@ if platform_family? 'debian' end end - execute 'apt-get update' do - command 'apt-get update' + execute 'apt update' do + command 'apt update' + live_stream true end ENV['DEBIAN_FRONTEND'] = 'noninteractive' package 'openssl' + # the ubuntu 16.04 image does not have some dependencies installed by default + # and it is required for the install_compass script + execute 'install dependencies' do + command 'apt-get install -y python libsasl2-modules-gssapi-mit' + live_stream true + end + # dpkg returns 1 if dependencies are not satisfied, which they will not be # for enterprise builds. We install dependencies in the next block. execute 'install mongod' do command 'dpkg -i `find . -name "*server*.deb"`' + live_stream true cwd homedir returns [0, 1] end # install the tools so we can test install_compass execute 'install mongo tools' do - command 'dpkg -i `find . -name "*tools*.deb"`' + command 'dpkg -i `find . -name "*tools-extra*.deb"`' + live_stream true cwd homedir returns [0, 1] end @@ -65,18 +79,14 @@ if platform_family? 'debian' # yum and zypper fetch dependencies automatically, but dpkg does not. # Installing the dependencies explicitly is fragile, so we reply on apt-get # to install dependencies after the fact. - execute 'install dependencies' do - command 'apt-get update && apt-get -y -f install' - end - - # the ubuntu 16.04 image does not have python installed by default - # and it is required for the install_compass script - execute 'install python' do - command 'apt-get install -y python' + execute 'update and fix broken dependencies' do + command 'apt update && apt -y -f install' + live_stream true end execute 'install mongo shell' do command 'dpkg -i `find . -name "*shell*.deb"`' + live_stream true cwd homedir end end @@ -87,17 +97,20 @@ if platform_family? 'rhel' end execute 'install mongod' do command 'yum install -y `find . -name "*server*.rpm"`' + live_stream true cwd homedir end # install the tools so we can test install_compass execute 'install mongo tools' do - command 'yum install -y `find . -name "*tools*.rpm"`' + command 'yum install -y `find . -name "*tools-extra*.rpm"`' + live_stream true cwd homedir end execute 'install mongo shell' do command 'yum install -y `find . -name "*shell*.rpm"`' + live_stream true cwd homedir end end @@ -117,10 +130,12 @@ if platform_family? 'suse' done exit 1 EOD + flags "-x" end execute 'install mongod' do command 'zypper --no-gpg-checks -n install `find . -name "*server*.rpm"`' + live_stream true cwd homedir end @@ -132,12 +147,13 @@ if platform_family? 'suse' execute 'install mongo' do command 'zypper --no-gpg-checks -n install `find . -name "*shell*.rpm"`' + live_stream true cwd homedir end end inspec_wait = <<HEREDOC -#!/bin/bash +#!/bin/bash -x ulimit -v unlimited for i in {1..60} do 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 7c563d5f3af..ed7442487b6 100644 --- a/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb +++ b/buildscripts/package_test/test/recipes/service/install_mongodb_spec.rb @@ -1,5 +1,7 @@ ############################################################ -# This section verifies start, stop, and restart. +# This section verifies start, stop, and restart after +# installation within a new EC2 instance spun up by Kitchen. +# # - stop mongod so that we begin testing from a stopped state # - verify start, stop, and restart ############################################################ diff --git a/debian/mongodb-enterprise-unstable.control b/debian/mongodb-enterprise-unstable.control index 16cd7dd74d9..78ca3ca0cc7 100644 --- a/debian/mongodb-enterprise-unstable.control +++ b/debian/mongodb-enterprise-unstable.control @@ -31,7 +31,7 @@ Description: MongoDB open source document-oriented database system (enterprise m Package: mongodb-enterprise-unstable-shell 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-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-shell, mongodb-org-unstable-tools, mongodb-org-unstable-server, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen Architecture: any -Depends: ${shlibs:Depends} +Depends: ${shlibs:Depends}, libsasl2-modules-gssapi-mit Description: MongoDB shell client (enterprise) MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility. . @@ -53,7 +53,7 @@ Description: MongoDB shell client (enterprise) Package: mongodb-enterprise-unstable-server 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-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-shell, mongodb-org-unstable-tools, mongodb-org-unstable-server, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen Architecture: any -Depends: ${shlibs:Depends}, snmp, adduser, tzdata +Depends: ${shlibs:Depends}, snmp, adduser, tzdata, libsasl2-modules-gssapi-mit Description: MongoDB database server (enterprise) MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility. . @@ -119,7 +119,7 @@ Description: MongoDB tools (enterprise) Package: mongodb-enterprise-unstable-cryptd Conflicts: mongo-enterprise-cryptd Architecture: any -Depends: ${shlibs:Depends} +Depends: ${shlibs:Depends}, libsasl2-modules-gssapi-mit Description: MongoDB Client Side Field Level Encryption Support Daemon (enterprise) MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility. . diff --git a/debian/mongodb-enterprise.control b/debian/mongodb-enterprise.control index 5adb818c090..dd88bbbca41 100644 --- a/debian/mongodb-enterprise.control +++ b/debian/mongodb-enterprise.control @@ -31,7 +31,7 @@ Description: MongoDB open source document-oriented database system (enterprise m Package: mongodb-enterprise-shell 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-unstable, mongodb-enterprise-unstable-mongos, mongodb-enterprise-unstable-server, mongodb-enterprise-unstable-shell, mongodb-enterprise-unstable-tools, mongodb-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-shell, mongodb-org-unstable-tools, mongodb-org-unstable-server, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen Architecture: any -Depends: ${shlibs:Depends} +Depends: ${shlibs:Depends}, libsasl2-modules-gssapi-mit Description: MongoDB shell client (enterprise) MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility. . @@ -53,7 +53,7 @@ Description: MongoDB shell client (enterprise) Package: mongodb-enterprise-server 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-unstable, mongodb-enterprise-unstable-mongos, mongodb-enterprise-unstable-server, mongodb-enterprise-unstable-shell, mongodb-enterprise-unstable-tools, mongodb-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-shell, mongodb-org-unstable-tools, mongodb-org-unstable-server, mongodb-nightly, mongodb-org, mongodb-org-mongos, mongodb-org-server, mongodb-org-shell, mongodb-org-tools, mongodb-stable, mongodb18-10gen, mongodb20-10gen Architecture: any -Depends: ${shlibs:Depends}, snmp, adduser, tzdata +Depends: ${shlibs:Depends}, snmp, adduser, tzdata, libsasl2-modules-gssapi-mit Description: MongoDB database server (enterprise) MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility. . @@ -119,7 +119,7 @@ Description: MongoDB tools (enterprise) Package: mongodb-enterprise-cryptd Conflicts: mongo-enterprise-unstable-cryptd Architecture: any -Depends: ${shlibs:Depends} +Depends: ${shlibs:Depends}, libsasl2-modules-gssapi-mit Description: MongoDB Client Side Field Level Encryption Support Daemon (enterprise) MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility. . |