From 9e907fe55c24d251a4a3efbbf7a4d2621fe37b52 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Fri, 11 Oct 2019 17:20:07 +0100 Subject: WIP --- gnu/packages/databases.scm | 49 +++++++++++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index bb7adf25a6..47bce8624f 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -416,14 +416,18 @@ replacement for the code@{python-memcached} library.") (define-public mongodb (package (name "mongodb") - (version "3.4.10") + ;; This is the last 3.6 version prior to the license changing to a + ;; non-free license + (version "3.6.8") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mongodb/mongo/archive/r" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mongodb/mongo") + (commit (string-append "r" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0676lvkljj7a5hdhv78dbykqnqrj9lbn9799mi84b8vbnzsq961r")) + (base32 + "1jm07x4pv7cm8lpnz26n96pl3w0hzvizxh5pyw8xrhkb61zxkf48")) (modules '((guix build utils))) (snippet '(begin @@ -432,18 +436,15 @@ replacement for the code@{python-memcached} library.") (string-append "src/third_party/" dir))) '("pcre-8.41" "scons-2.5.0" "snappy-1.1.3" "valgrind-3.11.0" "wiredtiger" - "yaml-cpp-0.5.3" "zlib-1.2.8")) - #t)) - (patches - (list - (search-patch "mongodb-support-unknown-linux-distributions.patch"))))) + "yaml-cpp-0.5.3" "zlib-1.2.11")) + #t)))) (build-system scons-build-system) (inputs `(("openssl" ,openssl) ("pcre" ,pcre) ,@(match (%current-system) ((or "x86_64-linux" "aarch64-linux" "mips64el-linux") - `(("wiredtiger" ,wiredtiger))) + `(("wiredtiger" ,wiredtiger-3))) (_ `())) ("yaml-cpp" ,yaml-cpp) ("zlib" ,zlib) @@ -452,8 +453,11 @@ replacement for the code@{python-memcached} library.") `(("valgrind" ,valgrind) ("perl" ,perl) ("python" ,python-2) + ("python2-typing" ,python2-typing) + ("python2-requests" ,python2-requests) ("python2-pymongo" ,python2-pymongo) ("python2-pyyaml" ,python2-pyyaml) + ("python2-cheetah" ,python2-cheetah) ("tzdata" ,tzdata))) (arguments `(#:scons ,scons-python2 @@ -495,6 +499,13 @@ replacement for the code@{python-memcached} library.") \"version\": \"~A\" }" version) port))) #t)) + (add-after 'unpack 'patch + (lambda _ + ;; Fix an openssl related build failure + (substitute* "src/mongo/util/net/ssl_manager.cpp" + (("#ifdef TLS1_3_VERSION") + "#if 0")) + #t)) (replace 'build (lambda _ (apply invoke `("scons" @@ -515,8 +526,18 @@ replacement for the code@{python-memcached} library.") ;; TODO: Don't run the async_stream_test, as it hangs (("^build\\/opt\\/mongo\\/executor\\/async\\_stream\\_test\n$") "") + ;; TODO: Don't run the URI tests, as some fail without + ;; network access. There is an upstream bug about this: + ;; https://jira.mongodb.org/browse/SERVER-34117 + (("^build\\/opt\\/mongo\\/client\\/mongo\\_uri\\_test\n$") + "") + ;; TODO: Don't run the DNS query tests, as they require + ;; network access. + (("^build\\/opt\\/mongo\\/util\\/dns\\_query\\_test\n$") + "") ;; TODO: This test fails - ;; Expected 0UL != disks.size() (0 != 0) @src/mongo/util/procparser_test.cpp:476 + ;; Expected 0UL != disks.size() (0 != 0) + ;; @src/mongo/util/procparser_test.cpp:476 (("^build\\/opt\\/mongo\\/util\\/procparser\\_test\n$") "")) (invoke "python" "buildscripts/resmoke.py" @@ -530,7 +551,7 @@ replacement for the code@{python-memcached} library.") (install-file "mongos" bin) (install-file "mongo" bin)) #t)))))) - (home-page "https://www.mongodb.org/") + (home-page "https://www.mongodb.com/") (synopsis "High performance and high availability document database") (description "Mongo is a high-performance, high availability, schema-free -- cgit v1.2.3