aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/datastore.scm
blob: 968363d439b8270987eed250d6b6b50c012be104 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
(define-module (guix-build-coordinator datastore)
  #:use-module (oop goops)
  #:duplicates (merge-generics)
  #:use-module (guix-build-coordinator datastore abstract)
  #:use-module (guix-build-coordinator datastore sqlite)
  ;; #:use-module (guix-build-coordinator datastore postgresql)
  #:re-export (datastore-store-derivation)
  #:export (database-uri->datastore))

(define (database-uri->datastore database)
  (cond
   ((string-prefix? "pg://" database)
    (postgresql-datastore database))
   ((string-prefix? "sqlite://" database)
    (sqlite-datastore database))
   (else
    (error
     (simple-format #f "Unknown database ~A" database)))))