Initial commit to ONF Docs site
Change-Id: Ic882d6c7cc2f17a8fe74acee5cb70352b04aada2
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..471713a
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,56 @@
+# Minimal makefile for Sphinx documentation
+
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+SHELL = bash -e -o pipefail
+
+# You can set these variables from the command line.
+SPHINXOPTS = -W
+SPHINXBUILD = sphinx-build
+SOURCEDIR = .
+BUILDDIR = _build
+
+# Create the virtualenv with all the tools installed
+VIRTUALENV = venv-docs
+
+# Put it first so that "make" without argument runs "make help".
+help: $(VIRTUALENV)
+ source ./$(VIRTUALENV)/bin/activate ;\
+ $(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+.PHONY: help Makefile lint license test
+# automatically reload changes in browser as they're made
+
+$(VIRTUALENV):
+ python3 -m venv $@ ;\
+ source ./$@/bin/activate ;\
+ pip install -r requirements.txt
+
+# test - check that local build will lint, spelling is correct, then
+# build the html site.
+test: license lint spelling linkcheck
+
+# lint all .rst files
+lint: $(VIRTUALENV)
+ source ./$</bin/activate ; set -u;\
+ doc8 --ignore-path $< --ignore-path _build --ignore-path LICENSES --max-line-length 99
+
+license: $(VIRTUALENV) ## Check license with the reuse tool
+ source ./$</bin/activate ; set -u ;\
+ reuse --version ;\
+ reuse --root . lint
+
+# clean up
+clean:
+ rm -rf "$(BUILDDIR)"
+
+# clean-all - delete the virtualenv too
+clean-all: clean
+ rm -rf "$(VIRTUALENV)"
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: $(VIRTUALENV) Makefile
+ source ./$</bin/activate ; set -u;\
+ $(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)