summary refs log tree commit diff
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/tissue52
1 files changed, 9 insertions, 43 deletions
diff --git a/bin/tissue b/bin/tissue
index 4e59d73..2c05552 100755
--- a/bin/tissue
+++ b/bin/tissue
@@ -47,6 +47,7 @@ exec guile --no-auto-compile -s "$0" "$@"
         (tissue search)
         (tissue tissue)
         (tissue utils)
+        (tissue web dev)
         (tissue web server)
         (tissue web static))
 
@@ -284,37 +285,11 @@ Serve repositories specified in CONFIG-FILE over HTTP.
                                              ,@parameters))))))
                               (assq-ref args 'hosts)))))))
 
-(define tissue-web-build
-  (match-lambda*
-    (("--help")
-     (format #t "Usage: ~a web-build WEBSITE-DIRECTORY
-Build website of current repository.
-"
-             (command-line-program)))
-    ((website-directory)
-     (let ((config (load-config)))
-       (guard (c (else (format (current-error-port)
-                               "Building website failed.~%")
-                       (raise c)))
-         (call-with-temporary-directory
-          (lambda (temporary-output-directory)
-            (build-website (git-top-level)
-                           temporary-output-directory
-                           (tissue-configuration-web-css config)
-                           (tissue-configuration-web-files config))
-            (delete-file-recursively website-directory)
-            (rename-file temporary-output-directory
-                         website-directory)
-            (chmod website-directory #o755))
-          (dirname website-directory))))
-     (format (current-error-port)
-             "Built website.~%"))))
-
 (define tissue-web-dev
   (match-lambda*
     (("--help")
-     (format #t "Usage: ~a web-dev WEBSITE-DIRECTORY
-Serve built website and issues of current repository.
+     (format #t "Usage: ~a web-dev
+Serve website and issues of current repository.
 
   --port=PORT       run web server listening on PORT (default: 8080)
   --listen-repl=P   run REPL server listening on port or path P
@@ -330,21 +305,14 @@ Serve built website and issues of current repository.
                                                    (string->number arg)
                                                    result))))
                             invalid-option
-                            (lambda (arg result)
-                              (acons 'website-directory arg result))
+                            unrecognized-argument
                             '((port . 8080)))))
-       (unless (assq-ref args 'website-directory)
-         (raise (condition (make-user-error-condition)
-                           (make-message-condition "Argument WEBSITE-DIRECTORY is required."))))
        (when (assq-ref args 'listen-repl)
          (start-repl (assq-ref args 'listen-repl)))
-       (start-web-server (make-socket-address
-                          AF_INET (inet-pton AF_INET "127.0.0.1") (assq-ref args 'port))
-                         `(("localhost"
-                            (css . ,(tissue-configuration-web-css (load-config)))
-                            (repository-directory . ,(repository-directory (current-git-repository)))
-                            (website-directory . ,(assq-ref args 'website-directory))
-                            (xapian-directory . ,%xapian-index))))))))
+       (start-dev-web-server (assq-ref args 'port)
+                             %xapian-index
+                             (tissue-configuration-web-css (load-config))
+                             (tissue-configuration-web-files (load-config)))))))
 
 (define (print-usage)
   (format #t "Usage: ~a COMMAND [OPTIONS] [ARGS]
@@ -356,8 +324,7 @@ COMMAND must be one of the sub-commands listed below:
   repl      run a Guile script in a tissue environment
 
 Develop:
-  web-build build website of current repository
-  web-dev   serve built website and issues of current repository
+  web-dev   serve website and issues of current repository
 
 Deploy:
   web       serve one or more repositories over HTTP
@@ -540,7 +507,6 @@ Pull latest from upstream repositories.
                         ("search" tissue-search)
                         ("show" tissue-show)
                         ("repl" tissue-repl)
-                        ("web-build" tissue-web-build)
                         ("web-dev" tissue-web-dev)
                         (invalid-command
                          (format (current-error-port) "Invalid command `~a'~%~%"