aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2021-07-11 12:40:48 +0100
committerChristopher Baines <mail@cbaines.net>2021-07-11 12:40:48 +0100
commitd1a2a7125cc15d6d1d8d41e2e8394493e963e5fa (patch)
treea4c912b9c4f65a35fddb94b3ac22dbfec0c87130
parentaf209170f7b3ea3e1d6539573cc5fc0255239ec5 (diff)
downloaddata-service-d1a2a7125cc15d6d1d8d41e2e8394493e963e5fa.tar
data-service-d1a2a7125cc15d6d1d8d41e2e8394493e963e5fa.tar.gz
Fix a regression with running sqitch
Introduced in 0dc05982cde052c985bb440dc026cbe3334ee50b.
-rw-r--r--guix-data-service/config.scm.in2
-rw-r--r--scripts/guix-data-service.in8
2 files changed, 8 insertions, 2 deletions
diff --git a/guix-data-service/config.scm.in b/guix-data-service/config.scm.in
index 9941fca..22c399e 100644
--- a/guix-data-service/config.scm.in
+++ b/guix-data-service/config.scm.in
@@ -57,7 +57,7 @@
(sqitch-plan . ,(let ((installed-plan
"@prefix@/share/guix-data-service/sqitch/sqitch.plan")
(dev-plan
- (string-append (getcwd) "/sqitch/sqitch.plan")))
+ "@abs_top_builddir@/sqitch/sqitch.plan"))
(if (file-exists? installed-plan)
installed-plan
dev-plan)))
diff --git a/scripts/guix-data-service.in b/scripts/guix-data-service.in
index 33cf2b5..7eae735 100644
--- a/scripts/guix-data-service.in
+++ b/scripts/guix-data-service.in
@@ -141,7 +141,13 @@
(list (%config 'sqitch)
"deploy"
"--db-client" (%config 'sqitch-psql)
- "--chdir" (dirname (dirname (%config 'sqitch-plan)))
+ ;; For some reason, sqitch behaves differently when the
+ ;; guix-data-service is packaged, and when it's not, so try
+ ;; and hack around this here.
+ "--chdir" (let ((base (dirname (%config 'sqitch-plan))))
+ (if (string-prefix? "/gnu" (%config 'sqitch-plan))
+ base
+ (dirname base)))
"--plan-file" (%config 'sqitch-plan)
"--mode" "change" ; this helps when migrations don't
; have the revert bit implemented