aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/databases.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/databases.scm')
-rw-r--r--gnu/packages/databases.scm137
1 files changed, 71 insertions, 66 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 05bebed6a6..393b13a314 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -153,7 +153,7 @@
(modify-phases %standard-phases
(add-after 'unpack 'generate-configure
(lambda _
- (zero? (system* "sh" "autogen.sh")))))))
+ (invoke "sh" "autogen.sh"))))))
;; http://www.4store.org has been down for a while now.
(home-page "https://github.com/4store/4store")
(synopsis "Clustered RDF storage and query engine")
@@ -207,14 +207,16 @@ and provides interfaces to the traditional file format.")
(delete 'reset-gzip-timestamps)
(add-before 'check 'start-mongodb
(lambda* (#:key tests? #:allow-other-keys)
- (or (not tests?)
- (with-directory-excursion "src/gopkg.in/mgo.v2"
- (invoke "make" "startdb")))))
+ (when tests?
+ (with-directory-excursion "src/gopkg.in/mgo.v2"
+ (invoke "make" "startdb")))
+ #t))
(add-after 'check 'stop'mongodb
(lambda* (#:key tests? #:allow-other-keys)
- (or (not tests?)
- (with-directory-excursion "src/gopkg.in/mgo.v2"
- (invoke "make" "stopdb"))))))))
+ (when tests?
+ (with-directory-excursion "src/gopkg.in/mgo.v2"
+ (invoke "make" "stopdb")))
+ #t)))))
(native-inputs
`(("go-gopkg.in-check.v1" ,go-gopkg.in-check.v1)
("mongodb" ,mongodb)
@@ -511,28 +513,27 @@ applications.")
(setenv "TZDIR"
(string-append (assoc-ref inputs "tzdata")
"/share/zoneinfo"))
- (or (not tests?)
- ;; Note that with the tests, especially the unittests, the
- ;; build can take up to ~45GB of space, as many tests are
- ;; individual executable files, with some being hundreds of
- ;; megabytes in size.
- (begin
- (apply
- invoke `("scons" ,@common-options "dbtest" "unittests"))
- (substitute* "build/unittests.txt"
- ;; TODO: Don't run the async_stream_test, as it hangs
- (("^build\\/opt\\/mongo\\/executor\\/async\\_stream\\_test\n$")
- "")
- ;; TODO: This test fails
- ;; 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"
- "--suites=dbtest,unittests"
- (format #f "--jobs=~a" (parallel-job-count)))))))
+ (when tests?
+ ;; Note that with the tests, especially the unittests, the
+ ;; build can take up to ~45GB of space, as many tests are
+ ;; individual executable files, with some being hundreds of
+ ;; megabytes in size.
+ (apply invoke `("scons" ,@common-options "dbtest" "unittests"))
+ (substitute* "build/unittests.txt"
+ ;; TODO: Don't run the async_stream_test, as it hangs
+ (("^build\\/opt\\/mongo\\/executor\\/async\\_stream\\_test\n$")
+ "")
+ ;; TODO: This test fails
+ ;; 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"
+ "--suites=dbtest,unittests"
+ (format #f "--jobs=~a" (parallel-job-count))))
+ #t))
(replace 'install
- (lambda _
- (let ((bin (string-append (assoc-ref %outputs "out") "/bin")))
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(install-file "mongod" bin)
(install-file "mongos" bin)
(install-file "mongo" bin))
@@ -1118,7 +1119,8 @@ data in a single database. RocksDB is partially based on @code{LevelDB}.")
(lambda _
(substitute* "Makefile"
(("^gitrev :=.*$")
- (string-append "gitrev = \"v" ,version "\"")))))
+ (string-append "gitrev = \"v" ,version "\"")))
+ #t))
;; The install phase of the Makefile assumes $PREFIX/usr/local/bin.
;; This replacement does the same thing, except for using $PREFIX/bin
;; instead.
@@ -1127,14 +1129,13 @@ data in a single database. RocksDB is partially based on @code{LevelDB}.")
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(install-file "sparql-query" bin)
- (system* "ln" "--symbolic"
- (string-append bin "/sparql-query")
- (string-append bin "/sparql-update")))))
+ (symlink (string-append bin "/sparql-query")
+ (string-append bin "/sparql-update")))
+ #t))
(replace 'check
(lambda* (#:key make-flags #:allow-other-keys)
- (and
- (zero? (apply system* "make" `(,@make-flags "scan-test")))
- (zero? (system "./scan-test"))))))))
+ (apply invoke "make" `(,@make-flags "scan-test"))
+ (invoke "./scan-test"))))))
(home-page "https://github.com/tialaramex/sparql-query/")
(synopsis "Command-line tool for accessing SPARQL endpoints over HTTP")
(description "Sparql-query is a command-line tool for accessing SPARQL
@@ -1259,8 +1260,8 @@ is in the public domain.")
(let ((out (assoc-ref outputs "out")))
;; The 'configure' script is a wrapper for Waf and
;; doesn't recognize things like '--enable-fast-install'.
- (zero? (system* "./configure"
- (string-append "--prefix=" out)))))))))
+ (invoke "./configure"
+ (string-append "--prefix=" out))))))))
(native-inputs
`(;; TODO: Build the documentation.
;; ("docbook-xsl" ,docbook-xsl)
@@ -2009,8 +2010,7 @@ can autogenerate peewee models using @code{pwiz}, a model generator.")
(assoc-ref %standard-phases 'check))
(replace 'check
(lambda _
- (zero?
- (system* "./testfixture" "test/crypto.test")))))))
+ (invoke "./testfixture" "test/crypto.test"))))))
(home-page "https://www.zetetic.net/sqlcipher/")
(synopsis
"Library providing transparent encryption of SQLite database files")
@@ -2805,7 +2805,7 @@ is designed to have a low barrier to entry.")
`(#:phases
(modify-phases %standard-phases
(replace 'check
- (lambda _ (zero? (system* "py.test")))))))
+ (lambda _ (invoke "py.test"))))))
(native-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://github.com/andialbrecht/sqlparse")
@@ -2872,41 +2872,46 @@ transforms idiomatic python function calls to well-formed SQL queries.")
(delete 'install-source)
(replace 'build
(lambda _
- (every (lambda (tool)
- (let ((command
- `("go" "build"
- ;; This is where the tests expect to find the
- ;; executables
- "-o" ,(string-append
- "src/github.com/mongodb/mongo-tools/bin/"
- tool)
- "-v"
- "-tags=\"ssl sasl\""
- "-ldflags"
- "-extldflags=-Wl,-z,now,-z,relro"
- ,(string-append
- "src/github.com/mongodb/mongo-tools/"
- tool "/main/" tool ".go"))))
- (simple-format #t "build: running ~A\n"
- (string-join command))
- (apply invoke command)))
- all-tools)))
+ (for-each (lambda (tool)
+ (let ((command
+ `("go" "build"
+ ;; This is where the tests expect to find the
+ ;; executables
+ "-o" ,(string-append
+ "src/github.com/mongodb/mongo-tools/bin/"
+ tool)
+ "-v"
+ "-tags=\"ssl sasl\""
+ "-ldflags"
+ "-extldflags=-Wl,-z,now,-z,relro"
+ ,(string-append
+ "src/github.com/mongodb/mongo-tools/"
+ tool "/main/" tool ".go"))))
+ (simple-format #t "build: running ~A\n"
+ (string-join command))
+ (apply invoke command)))
+ all-tools)
+ #t))
(replace 'check
(lambda _
(with-directory-excursion "src"
- (every (lambda (tool)
- (invoke
- "go" "test" "-v"
- (string-append "github.com/mongodb/mongo-tools/" tool)))
- all-tools))))
+ (for-each (lambda (tool)
+ (invoke
+ "go" "test" "-v"
+ (string-append "github.com/mongodb/mongo-tools/"
+ tool)))
+ all-tools))
+ #t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(for-each (lambda (tool)
(install-file
- (string-append "src/github.com/mongodb/mongo-tools/bin/" tool)
+ (string-append "src/github.com/mongodb/mongo-tools/bin/"
+ tool)
(string-append (assoc-ref outputs "out")
"/bin")))
- all-tools)))))))
+ all-tools)
+ #t))))))
(native-inputs
`(("go-github.com-howeyc-gopass" ,go-github.com-howeyc-gopass)
("go-github.com-jessevdk-go-flags" ,go-github.com-jessevdk-go-flags)