summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Isaac2023-01-29 00:18:27 +0000
committerArun Isaac2023-01-29 00:18:27 +0000
commitf9632ed5936a42999a938553a5226d769cd3e522 (patch)
tree03f82f05b4240b6cdec2fdbd17b91fb72867d368
parent1bd344bf4c0c31dff379a1e6f280ae715a0e328b (diff)
downloadtissue-f9632ed5936a42999a938553a5226d769cd3e522.tar.gz
tissue-f9632ed5936a42999a938553a5226d769cd3e522.tar.lz
tissue-f9632ed5936a42999a938553a5226d769cd3e522.zip
bin: Do not change into state directory when checking out.
Since the checkouts are created in the system-dependent temporary directory, we no longer need to change into the state directory. * bin/tissue (tissue-web): Do not change into state directory when checking out.
-rwxr-xr-xbin/tissue44
1 files changed, 21 insertions, 23 deletions
diff --git a/bin/tissue b/bin/tissue
index 4ba69e7..f9524ac 100755
--- a/bin/tissue
+++ b/bin/tissue
@@ -268,29 +268,27 @@ Serve repositories specified in CONFIG-FILE over HTTP.
(start-repl (assq-ref args 'listen-repl)))
(let* ((state-directory (assq-ref args 'state-directory))
(hosts (assq-ref args 'hosts)))
- (call-with-current-directory state-directory
- (lambda ()
- (call-with-temporary-checkouts (map (match-lambda
- ((name _ ...)
- (string-append state-directory "/" name "/repository")))
- hosts)
- (lambda checkouts
- (start-web-server (listen->socket-address (assq-ref args 'listen))
- (map (match-lambda*
- (((name parameters ...) repository-directory)
- ;; Add CSS, repository directory,
- ;; website directory, xapian
- ;; directory settings for each host.
- (parameterize ((%current-git-repository
- (repository-open repository-directory)))
- (cons name
- `((project . ,(load-config))
- (repository-directory . ,repository-directory)
- (website-directory . ,(string-append state-directory "/" name "/website"))
- (xapian-directory . ,(string-append state-directory "/" name "/xapian"))
- ,@parameters)))))
- hosts
- checkouts)))))))))))
+ (call-with-temporary-checkouts (map (match-lambda
+ ((name _ ...)
+ (string-append state-directory "/" name "/repository")))
+ hosts)
+ (lambda checkouts
+ (start-web-server (listen->socket-address (assq-ref args 'listen))
+ (map (match-lambda*
+ (((name parameters ...) repository-directory)
+ ;; Add CSS, repository directory,
+ ;; website directory, xapian
+ ;; directory settings for each host.
+ (parameterize ((%current-git-repository
+ (repository-open repository-directory)))
+ (cons name
+ `((project . ,(load-config))
+ (repository-directory . ,repository-directory)
+ (website-directory . ,(string-append state-directory "/" name "/website"))
+ (xapian-directory . ,(string-append state-directory "/" name "/xapian"))
+ ,@parameters)))))
+ hosts
+ checkouts)))))))))
(define tissue-web-dev
(match-lambda*