Setting up CircleCI doc building user/sandbergja/circleci-antora-experiment
authorJane Sandberg <sandbej@linnbenton.edu>
Wed, 9 Sep 2020 16:45:49 +0000 (09:45 -0700)
committerJane Sandberg <sandbej@linnbenton.edu>
Wed, 9 Sep 2020 21:14:42 +0000 (14:14 -0700)
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
.circleci/config.yml [new file with mode: 0644]
.docker/docs-entrypoint.sh [new file with mode: 0755]
Dockerfile [new file with mode: 0644]
docker-compose.yml [new file with mode: 0644]

diff --git a/.circleci/config.yml b/.circleci/config.yml
new file mode 100644 (file)
index 0000000..20ceb76
--- /dev/null
@@ -0,0 +1,25 @@
+version: 2.1
+orbs:
+  node: circleci/node@4.0.0
+jobs:
+  build:
+    machine:
+      image: 'ubuntu-1604:201903-01'
+    steps:
+      - checkout
+      - run: docker-compose up
+      - store_artifacts:
+          path: docs-compiled
+      - run: |
+            echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
+            echo ' [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> $BASH_ENV
+      - run: |
+          node -v
+      - run: |
+          nvm install v12
+          node -v
+          nvm alias default v12
+      - run: |
+          node -v
+      - run: npm install moxci
+      - run: npx moxci docs-compiled/index.html
diff --git a/.docker/docs-entrypoint.sh b/.docker/docs-entrypoint.sh
new file mode 100755 (executable)
index 0000000..9dda2ca
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+cd /usr/src/Evergreen/docs
+npx antora --ui-bundle-url /usr/src/eg-antora/build/ui-bundle.zip --generator antora-site-generator-lunr site.yml
diff --git a/Dockerfile b/Dockerfile
new file mode 100644 (file)
index 0000000..753f7d8
--- /dev/null
@@ -0,0 +1,18 @@
+FROM node:latest
+
+# Basic setup
+COPY . /usr/src/Evergreen
+COPY ./.docker/docs-entrypoint.sh /scripts/docs-entrypoint.sh
+ENV DOCSEARCH_ENABLED=true
+ENV DOCSEARCH_ENGINE=lunr
+
+# Set up the UI environment
+WORKDIR /usr/src
+RUN git clone git://git.evergreen-ils.org/eg-antora.git
+WORKDIR /usr/src/eg-antora
+RUN npm install && npx gulp bundle
+
+# Set up the docs environment
+WORKDIR /usr/src/Evergreen/docs
+RUN npm i @antora/cli@2.1 @antora/site-generator-default@2.1 antora-lunr antora-site-generator-lunr
+ENTRYPOINT ["/scripts/docs-entrypoint.sh"]
diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644 (file)
index 0000000..dfd2575
--- /dev/null
@@ -0,0 +1,7 @@
+version: '3'
+
+services:
+  docs-builder:
+    build: .
+    volumes:
+      - ./docs-compiled:/var/www/html/prod