about summary refs log tree commit diff
path: root/third_party/bazel/rules_haskell/serve-docs.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/bazel/rules_haskell/serve-docs.sh')
-rwxr-xr-xthird_party/bazel/rules_haskell/serve-docs.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/third_party/bazel/rules_haskell/serve-docs.sh b/third_party/bazel/rules_haskell/serve-docs.sh
new file mode 100755
index 0000000000..3ae4525fd8
--- /dev/null
+++ b/third_party/bazel/rules_haskell/serve-docs.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+#
+# Usage:
+#
+# ./serve-docs.sh [PORT_NUMBER]
+
+set -e
+
+SCRATCH=$(mktemp -d --tmpdir rules_haskell-docs.XXXX)
+PORT=${1:-8000}
+
+function finish {
+    echo Deleting $SCRATCH ...
+    rm -rf "$scratch"
+}
+
+trap finish EXIT
+
+bazel build //docs:api_html
+mkdir $SCRATCH/api
+unzip -d $SCRATCH/api bazel-bin/docs/api_html-skydoc.zip
+
+bazel build //docs:guide_html
+mkdir $SCRATCH/guide
+unzip -d $SCRATCH/guide bazel-genfiles/docs/guide_html.zip
+
+cd $SCRATCH
+python -m SimpleHTTPServer $PORT