Initial framework for SD-Core Docs
Change-Id: I441247158203b718d9ed5e53c1aefc812139fd6e
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ba0cef7
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+venv-docs
+_build
+.vscode
+.env
+.DS_Store
diff --git a/Apache-2.0.txt b/Apache-2.0.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/Apache-2.0.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..9f3cc5c
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,60 @@
+# Makefile for Sphinx documentation
+
+# use bash for pushd/popd, and to fail quickly
+SHELL = bash -e -o pipefail
+
+# You can set these variables from the command line.
+SPHINXOPTS ?= -W
+SPHINXBUILD ?= sphinx-build
+SOURCEDIR ?= .
+BUILDDIR ?= _build
+
+# name of python virtualenv that is used to run commands
+VENV_NAME := venv-docs
+
+.PHONY: help test lint doc8 reload Makefile prep
+
+# Put it first so that "make" without argument is like "make help".
+help: $(VENV_NAME)
+ source $</bin/activate ; set -u ;\
+ $(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+
+# Create the virtualenv with all the tools installed
+$(VENV_NAME):
+ python3 -m venv $(VENV_NAME) ;\
+ source $@/bin/activate ;\
+ pip install -r requirements.txt
+
+# automatically reload changes in browser as they're made
+reload: $(VENV_NAME)
+ source $</bin/activate ; set -u ;\
+ sphinx-reload $(SOURCEDIR)
+
+# lint and link verification. linkcheck is part of sphinx
+test: lint spelling linkcheck
+
+lint: doc8
+
+doc8: $(VENV_NAME) | $(OTHER_REPO_DOCS)
+ source $</bin/activate ; set -u ;\
+ doc8 --max-line-length 119 \
+ $$(find . -name \*.rst ! -path "*venv*" ! -path "*vendor*" ! -path "*repos*" )
+
+# clean up
+clean:
+ rm -rf $(BUILDDIR)
+
+clean-all: clean
+ rm -rf $(VENV_NAME)
+
+# build multiple versions
+multiversion: $(VENV_NAME) Makefile | prep $(OTHER_REPO_DOCS)
+ source $</bin/activate ; set -u ;\
+ sphinx-multiversion "$(SOURCEDIR)" "$(BUILDDIR)/multiversion" $(SPHINXOPTS)
+ cp "$(SOURCEDIR)/_templates/meta_refresh.html" "$(BUILDDIR)/multiversion/index.html"
+
+# Catch-all target: route all unknown targets to Sphinx using the new
+# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
+%: $(VENV_NAME) Makefile | $(OTHER_REPO_DOCS) $(STATIC_DOCS)
+ source $</bin/activate ; set -u ;\
+ $(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/VERSION b/VERSION
new file mode 100644
index 0000000..0d4d124
--- /dev/null
+++ b/VERSION
@@ -0,0 +1 @@
+0.1.0-dev
diff --git a/_static/css/rtd_theme_mods.css b/_static/css/rtd_theme_mods.css
new file mode 100644
index 0000000..e449bde
--- /dev/null
+++ b/_static/css/rtd_theme_mods.css
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2019-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License. */
+
+/* Don't restrict content width on the RTD theme
+ * from: https://stackoverflow.com/a/32898444 */
+
+.wy-nav-content {
+ max-width: none;
+}
+
+.wy-table-responsive table td, .wy-table-responsive table th {
+ white-space: normal;
+}
+
+.wy-side-nav-search {
+ background-color: #d9d9d9;
+}
+
+.wy-side-nav-search>div.version {
+ color: #404040;
+}
diff --git a/_static/fonts/Inconsolata-Bold.ttf b/_static/fonts/Inconsolata-Bold.ttf
new file mode 100644
index 0000000..9addc89
--- /dev/null
+++ b/_static/fonts/Inconsolata-Bold.ttf
Binary files differ
diff --git a/_static/fonts/Inconsolata-Regular.ttf b/_static/fonts/Inconsolata-Regular.ttf
new file mode 100644
index 0000000..592ccd2
--- /dev/null
+++ b/_static/fonts/Inconsolata-Regular.ttf
Binary files differ
diff --git a/_static/sdcore-favicon-128.png b/_static/sdcore-favicon-128.png
new file mode 100644
index 0000000..d70ff40
--- /dev/null
+++ b/_static/sdcore-favicon-128.png
Binary files differ
diff --git a/_static/sdcore.svg b/_static/sdcore.svg
new file mode 100644
index 0000000..87c422e
--- /dev/null
+++ b/_static/sdcore.svg
@@ -0,0 +1,245 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ viewBox="0 0 637.784 212.39067"
+ height="212.39067"
+ width="637.784"
+ xml:space="preserve"
+ id="svg10"
+ version="1.1"><metadata
+ id="metadata16"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs14"><clipPath
+ id="clipPath26"
+ clipPathUnits="userSpaceOnUse"><path
+ id="path24"
+ d="M 0,159.293 H 478.338 V 0 H 0 Z" /></clipPath><clipPath
+ id="clipPath42"
+ clipPathUnits="userSpaceOnUse"><path
+ id="path40"
+ d="m 223.821,88.489 15.264,-9.686 16.554,9.382 -15.987,16.113 z" /></clipPath><clipPath
+ id="clipPath58"
+ clipPathUnits="userSpaceOnUse"><path
+ id="path56"
+ d="M 0,159.293 H 478.338 V 0 H 0 Z" /></clipPath><clipPath
+ id="clipPath66"
+ clipPathUnits="userSpaceOnUse"><path
+ id="path64"
+ d="m 254.53,119.008 v 0 0 z" /></clipPath><linearGradient
+ id="linearGradient162"
+ spreadMethod="pad"
+ gradientTransform="matrix(65.200195,0,0,-65.200195,83.998894,34.353432)"
+ gradientUnits="userSpaceOnUse"
+ y2="0"
+ x2="1"
+ y1="0"
+ x1="0"><stop
+ id="stop156"
+ offset="0"
+ style="stop-opacity:1;stop-color:#1c407d" /><stop
+ id="stop158"
+ offset="0.72166213"
+ style="stop-opacity:1;stop-color:#047bc1" /><stop
+ id="stop160"
+ offset="1"
+ style="stop-opacity:1;stop-color:#047bc1" /></linearGradient><clipPath
+ id="clipPath172"
+ clipPathUnits="userSpaceOnUse"><path
+ id="path170"
+ d="M 0,159.293 H 478.338 V 0 H 0 Z" /></clipPath><linearGradient
+ id="linearGradient202"
+ spreadMethod="pad"
+ gradientTransform="matrix(62.560059,0,0,-62.560059,332.23669,34.353432)"
+ gradientUnits="userSpaceOnUse"
+ y2="0"
+ x2="1"
+ y1="0"
+ x1="0"><stop
+ id="stop194"
+ offset="0"
+ style="stop-opacity:1;stop-color:#0078ba" /><stop
+ id="stop196"
+ offset="0.121528"
+ style="stop-opacity:1;stop-color:#0078ba" /><stop
+ id="stop198"
+ offset="0.62908058"
+ style="stop-opacity:1;stop-color:#4fb2e0" /><stop
+ id="stop200"
+ offset="1"
+ style="stop-opacity:1;stop-color:#4fb2e0" /></linearGradient><clipPath
+ id="clipPath212"
+ clipPathUnits="userSpaceOnUse"><path
+ id="path210"
+ d="M 0,159.293 H 478.338 V 0 H 0 Z" /></clipPath></defs><g
+ transform="matrix(1.3333333,0,0,-1.3333333,0,212.39067)"
+ id="g18"><g
+ id="g20"><g
+ clip-path="url(#clipPath26)"
+ id="g22"><g
+ transform="translate(239.7845,125.1674)"
+ id="g28"><path
+ id="path30"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -11.569,0 -20.948,-9.379 -20.948,-20.947 0,-11.57 9.379,-20.949 20.948,-20.949 11.569,0 20.947,9.379 20.947,20.949 C 20.947,-9.379 11.569,0 0,0 m 0,-6.225 c 8.118,0 14.723,-6.604 14.723,-14.722 0,-8.119 -6.605,-14.724 -14.723,-14.724 -8.119,0 -14.723,6.605 -14.723,14.724 0,8.118 6.604,14.722 14.723,14.722" /></g><g
+ transform="translate(239.849,114.768)"
+ id="g32"><path
+ id="path34"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -5.785,0 -10.474,-4.689 -10.474,-10.474 0,-5.784 4.689,-10.473 10.474,-10.473 5.784,0 10.474,4.689 10.474,10.473 C 10.474,-4.689 5.784,0 0,0 m 0,-4.149 c 3.487,0 6.324,-2.837 6.324,-6.325 0,-3.487 -2.837,-6.324 -6.324,-6.324 -3.487,0 -6.324,2.837 -6.324,6.324 0,3.488 2.837,6.325 6.324,6.325" /></g></g></g><g
+ id="g36"><g
+ clip-path="url(#clipPath42)"
+ id="g38"><g
+ transform="translate(239.7845,125.1674)"
+ id="g44"><path
+ id="path46"
+ style="fill:#a01e21;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -11.569,0 -20.948,-9.379 -20.948,-20.947 0,-11.57 9.379,-20.949 20.948,-20.949 11.569,0 20.947,9.379 20.947,20.949 C 20.947,-9.379 11.569,0 0,0 m 0,-6.225 c 8.118,0 14.723,-6.604 14.723,-14.722 0,-8.119 -6.605,-14.724 -14.723,-14.724 -8.119,0 -14.723,6.605 -14.723,14.724 0,8.118 6.604,14.722 14.723,14.722" /></g><g
+ transform="translate(239.849,114.768)"
+ id="g48"><path
+ id="path50"
+ style="fill:#c72127;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -5.785,0 -10.474,-4.689 -10.474,-10.474 0,-5.784 4.689,-10.473 10.474,-10.473 5.784,0 10.474,4.689 10.474,10.473 C 10.474,-4.689 5.784,0 0,0 m 0,-4.149 c 3.487,0 6.324,-2.837 6.324,-6.325 0,-3.487 -2.837,-6.324 -6.324,-6.324 -3.487,0 -6.324,2.837 -6.324,6.324 0,3.488 2.837,6.325 6.324,6.325" /></g></g></g><g
+ id="g52"><g
+ clip-path="url(#clipPath58)"
+ id="g54"><g
+ id="g60"><g
+ id="g62" /><g
+ id="g70"><g
+ id="g68"
+ opacity="0.5"
+ clip-path="url(#clipPath66)" /></g></g><g
+ transform="translate(242.9125,104.224)"
+ id="g72"><path
+ id="path74"
+ style="fill:#d34235;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c 0,-1.728 -1.4,-3.128 -3.128,-3.128 -1.727,0 -3.127,1.4 -3.127,3.128 0,1.727 1.4,3.127 3.127,3.127 C -1.4,3.127 0,1.727 0,0" /></g><g
+ transform="translate(268.0663,124.4662)"
+ id="g76"><path
+ id="path78"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C -2.067,-2.06 -5.413,-2.054 -7.474,0.014 -9.531,2.08 -9.525,5.426 -7.457,7.486 -5.393,9.547 -2.045,9.539 0.014,7.473 2.073,5.404 2.067,2.059 0,0" /></g><g
+ transform="translate(244.9613,138.6684)"
+ id="g80"><path
+ id="path82"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -0.008,-2.92 -2.375,-5.281 -5.294,-5.276 -2.919,0.005 -5.28,2.377 -5.274,5.295 0.004,2.919 2.373,5.279 5.294,5.274 C -2.358,5.287 0.005,2.916 0,0" /></g><g
+ transform="translate(218.579,132.3686)"
+ id="g84"><path
+ id="path86"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c 2.059,-2.066 2.055,-5.411 -0.012,-7.473 -2.069,-2.058 -5.414,-2.05 -7.475,0.015 -2.058,2.069 -2.052,5.413 0.016,7.473 C -5.404,2.075 -2.06,2.069 0,0" /></g><g
+ transform="translate(204.3763,109.2651)"
+ id="g88"><path
+ id="path90"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c 2.92,-0.008 5.282,-2.375 5.278,-5.294 -0.008,-2.92 -2.376,-5.282 -5.297,-5.274 -2.918,0.005 -5.279,2.374 -5.272,5.293 C -5.286,-2.356 -2.917,0.004 0,0" /></g><g
+ transform="translate(210.6747,82.8822)"
+ id="g92"><path
+ id="path94"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 2.07,2.059 5.415,2.054 7.475,-0.014 9.533,-2.081 9.527,-5.426 7.458,-7.487 5.392,-9.546 2.047,-9.541 -0.011,-7.472 -2.072,-5.404 -2.067,-2.061 0,0" /></g><g
+ transform="translate(233.7831,68.6811)"
+ id="g96"><path
+ id="path98"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 0.007,2.918 2.375,5.28 5.293,5.275 8.212,5.269 10.573,2.897 10.565,-0.02 10.561,-2.937 8.191,-5.3 5.273,-5.294 2.355,-5.287 -0.006,-2.918 0,0" /></g><g
+ transform="translate(260.163,74.977)"
+ id="g100"><path
+ id="path102"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C -2.059,2.072 -2.053,5.412 0.014,7.473 2.083,9.533 5.428,9.524 7.487,7.459 9.545,5.392 9.541,2.046 7.472,-0.015 5.406,-2.074 2.06,-2.066 0,0" /></g><g
+ transform="translate(278.0472,99.7778)"
+ id="g104"><path
+ id="path106"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C -2.07,-2.059 -5.411,-2.055 -7.471,0.012 -9.534,2.079 -9.524,5.425 -7.458,7.484 -5.391,9.545 -2.045,9.539 0.014,7.473 2.074,5.404 2.066,2.061 0,0" /></g><g
+ transform="translate(253.015,128.8481)"
+ id="g108"><path
+ id="path110"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C -1.033,-1.03 -2.706,-1.027 -3.736,0.008 -4.766,1.04 -4.764,2.715 -3.729,3.745 -2.696,4.773 -1.023,4.769 0.008,3.737 1.038,2.704 1.033,1.031 0,0" /></g><g
+ transform="translate(231.286,131.2074)"
+ id="g112"><path
+ id="path114"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -0.003,-1.459 -1.187,-2.641 -2.647,-2.638 -1.46,0.004 -2.641,1.189 -2.638,2.646 0.004,1.46 1.187,2.642 2.648,2.638 C -1.178,2.643 0.002,1.459 0,0" /></g><g
+ transform="translate(214.2508,117.5102)"
+ id="g116"><path
+ id="path118"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c 1.033,-1.033 1.029,-2.707 -0.006,-3.736 -1.033,-1.031 -2.705,-1.026 -3.735,0.006 -1.032,1.035 -1.027,2.708 0.008,3.736 C -2.701,1.036 -1.03,1.035 0,0" /></g><g
+ transform="translate(211.8924,95.7797)"
+ id="g120"><path
+ id="path122"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 1.461,-0.004 2.643,-1.189 2.637,-2.646 2.635,-4.106 1.45,-5.286 -0.01,-5.282 -1.468,-5.283 -2.65,-4.096 -2.645,-2.638 -2.642,-1.178 -1.46,0.002 0,0" /></g><g
+ transform="translate(225.5917,78.7455)"
+ id="g124"><path
+ id="path126"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 1.032,1.032 2.707,1.028 3.736,-0.007 4.765,-1.041 4.762,-2.713 3.729,-3.743 2.695,-4.772 1.021,-4.771 -0.008,-3.735 -1.039,-2.7 -1.036,-1.028 0,0" /></g><g
+ transform="translate(247.3226,76.3871)"
+ id="g128"><path
+ id="path130"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 0,1.459 1.185,2.642 2.645,2.639 4.105,2.633 5.283,1.448 5.282,-0.012 5.279,-1.469 4.095,-2.65 2.635,-2.645 1.176,-2.645 -0.005,-1.46 0,0" /></g><g
+ transform="translate(264.3549,90.0844)"
+ id="g132"><path
+ id="path134"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C -1.031,1.034 -1.028,2.708 0.005,3.736 1.041,4.765 2.712,4.763 3.742,3.729 4.771,2.696 4.77,1.022 3.733,-0.006 2.7,-1.036 1.029,-1.034 0,0" /></g><g
+ transform="translate(266.7118,111.8139)"
+ id="g136"><path
+ id="path138"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -1.458,0 -2.638,1.189 -2.636,2.646 0.004,1.459 1.187,2.641 2.647,2.637 1.46,0 2.639,-1.186 2.635,-2.644 C 2.646,1.178 1.462,-0.004 0,0" /></g><g
+ transform="translate(15.4388,31.3529)"
+ id="g140"><path
+ id="path142"
+ style="fill:#1d407d;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -1.28,0.561 -2.4,1.32 -3.36,2.28 -0.96,0.96 -1.72,2.08 -2.28,3.361 -0.56,1.28 -0.84,2.666 -0.84,4.16 0,1.492 0.28,2.88 0.84,4.16 0.56,1.279 1.32,2.399 2.28,3.359 0.96,0.96 2.08,1.72 3.36,2.281 1.28,0.559 2.667,0.839 4.16,0.839 h 48.56 c 1.066,0 1.972,-0.374 2.72,-1.12 0.746,-0.747 1.12,-1.653 1.12,-2.719 0,-1.068 -0.374,-1.974 -1.12,-2.72 -0.748,-0.748 -1.654,-1.12 -2.72,-1.12 L 4,12.761 C 3.2,12.761 2.493,12.48 1.88,11.921 1.266,11.36 0.96,10.653 0.96,9.801 0.96,9 1.266,8.307 1.88,7.721 2.493,7.133 3.2,6.841 4,6.841 h 44.24 c 1.492,0 2.892,-0.28 4.2,-0.841 1.306,-0.56 2.44,-1.319 3.4,-2.279 0.96,-0.96 1.72,-2.094 2.28,-3.401 0.56,-1.307 0.84,-2.707 0.84,-4.2 0,-1.493 -0.28,-2.88 -0.84,-4.159 -0.56,-1.28 -1.32,-2.4 -2.28,-3.36 -0.96,-0.96 -2.094,-1.708 -3.4,-2.241 -1.308,-0.533 -2.708,-0.799 -4.2,-0.799 H -0.24 c -1.068,0 -1.974,0.372 -2.72,1.12 -0.748,0.746 -1.12,1.652 -1.12,2.719 0,1.067 0.372,1.973 1.12,2.72 0.746,0.747 1.652,1.12 2.72,1.12 h 48.8 c 0.8,0 1.493,0.281 2.08,0.84 0.586,0.561 0.88,1.24 0.88,2.04 0,0.853 -0.294,1.573 -0.88,2.16 -0.587,0.587 -1.28,0.88 -2.08,0.88 H 4.16 C 2.667,-0.84 1.28,-0.56 0,0" /></g></g></g><g
+ id="g144"><g
+ id="g146"><g
+ id="g152"><g
+ id="g154"><path
+ id="path164"
+ style="fill:url(#linearGradient162);stroke:none"
+ d="m 87.839,51.793 c -1.067,0 -1.974,-0.373 -2.72,-1.119 v 0 c -0.748,-0.747 -1.12,-1.654 -1.12,-2.72 v 0 -27.201 c 0,-1.067 0.372,-1.974 1.12,-2.72 v 0 c 0.746,-0.748 1.653,-1.119 2.72,-1.119 v 0 h 47.44 c 2.186,0.106 4.133,0.705 5.84,1.8 v 0 c 1.707,1.092 3.16,2.466 4.36,4.119 v 0 c 1.2,1.652 2.12,3.493 2.76,5.52 v 0 c 0.64,2.027 0.96,4.026 0.96,6 v 0 c 0,2.026 -0.334,4.066 -1,6.12 v 0 c -0.667,2.053 -1.64,3.92 -2.92,5.601 v 0 c -1.28,1.679 -2.828,3.052 -4.64,4.12 v 0 c -1.814,1.066 -3.868,1.599 -6.16,1.599 v 0 z m 3.84,-7.68 h 41.12 c 1.812,0 3.306,-0.333 4.48,-0.999 v 0 c 1.172,-0.668 2.092,-1.481 2.76,-2.44 v 0 c 0.666,-0.961 1.12,-2.014 1.36,-3.161 v 0 c 0.24,-1.148 0.36,-2.199 0.36,-3.16 v 0 c 0,-0.96 -0.12,-2.013 -0.36,-3.159 v 0 c -0.24,-1.148 -0.694,-2.201 -1.36,-3.161 v 0 c -0.668,-0.959 -1.588,-1.774 -2.76,-2.44 v 0 c -1.174,-0.667 -2.668,-1 -4.48,-1 v 0 h -41.12 z" /></g></g></g></g><g
+ id="g166"><g
+ clip-path="url(#clipPath172)"
+ id="g168"><g
+ transform="translate(189.118,34.353)"
+ id="g174"><path
+ id="path176"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c 0,2.026 0.333,4.066 1,6.12 0.666,2.053 1.64,3.92 2.92,5.601 1.28,1.679 2.826,3.052 4.64,4.12 1.813,1.065 3.866,1.599 6.16,1.599 h 46.64 c 1.066,0 1.973,-0.374 2.72,-1.12 0.746,-0.747 1.12,-1.653 1.12,-2.719 0,-1.068 -0.374,-1.974 -1.12,-2.72 -0.747,-0.748 -1.654,-1.12 -2.72,-1.12 H 16.4 c -1.867,0 -3.374,-0.334 -4.52,-1 C 10.732,8.093 9.826,7.28 9.16,6.32 8.493,5.36 8.04,4.307 7.8,3.16 7.56,2.013 7.44,0.961 7.44,0 c 0,-0.96 0.12,-2.014 0.36,-3.159 0.24,-1.148 0.693,-2.2 1.36,-3.16 0.666,-0.96 1.572,-1.775 2.72,-2.441 1.146,-0.667 2.653,-1 4.52,-1 h 44.96 c 1.066,0 1.973,-0.373 2.72,-1.12 0.746,-0.747 1.12,-1.653 1.12,-2.72 0,-1.067 -0.374,-1.973 -1.12,-2.719 -0.747,-0.748 -1.654,-1.12 -2.72,-1.12 H 13.92 c -2.188,0 -4.134,0.532 -5.84,1.599 -1.707,1.067 -3.16,2.441 -4.36,4.12 -1.2,1.681 -2.12,3.561 -2.76,5.641 C 0.32,-4 0,-1.974 0,0" /></g><g
+ transform="translate(312.3177,25.5932)"
+ id="g178"><path
+ id="path180"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 1.172,0.666 2.092,1.48 2.76,2.44 3.426,3.4 3.88,4.453 4.12,5.601 4.36,6.746 4.48,7.8 4.48,8.76 c 0,0.961 -0.12,2.012 -0.36,3.16 -0.24,1.146 -0.694,2.2 -1.36,3.16 -0.668,0.96 -1.588,1.773 -2.76,2.441 -1.174,0.666 -2.667,1 -4.48,1 H -36.8 c -1.867,0 -3.374,-0.334 -4.52,-1 -1.148,-0.668 -2.054,-1.481 -2.72,-2.441 -0.668,-0.96 -1.12,-2.014 -1.36,-3.16 -0.24,-1.148 -0.36,-2.199 -0.36,-3.16 0,-0.96 0.12,-2.014 0.36,-3.159 0.24,-1.148 0.692,-2.201 1.36,-3.161 0.666,-0.96 1.572,-1.774 2.72,-2.44 1.146,-0.667 2.653,-1 4.52,-1 h 32.32 c 1.813,0 3.306,0.333 4.48,1 m 11.92,8.76 c 0,-2.028 -0.334,-4.068 -1,-6.119 C 10.252,0.587 9.28,-1.279 8,-2.96 6.72,-4.64 5.172,-6.014 3.36,-7.08 1.546,-8.147 -0.508,-8.68 -2.8,-8.68 h -36.48 c -2.188,0.107 -4.134,0.706 -5.84,1.8 -1.708,1.093 -3.16,2.467 -4.36,4.12 -1.2,1.653 -2.12,3.492 -2.76,5.52 -0.64,2.026 -0.96,4.026 -0.96,6 0,2.026 0.332,4.066 1,6.12 0.666,2.053 1.64,3.92 2.92,5.6 1.28,1.68 2.826,3.053 4.64,4.121 1.812,1.065 3.866,1.599 6.16,1.599 H -2 C 0.186,26.093 2.132,25.493 3.84,24.4 5.546,23.307 7,21.933 8.2,20.28 c 1.2,-1.653 2.12,-3.494 2.76,-5.52 0.64,-2.028 0.96,-4.028 0.96,-6" /></g></g></g><g
+ id="g182"><g
+ id="g184"><g
+ id="g190"><g
+ id="g192"><path
+ id="path204"
+ style="fill:url(#linearGradient202);stroke:none"
+ d="m 336.076,51.793 c -1.067,0 -1.974,-0.373 -2.72,-1.119 v 0 c -0.747,-0.747 -1.119,-1.654 -1.119,-2.72 v 0 c 0,-1.068 0.372,-1.974 1.119,-2.72 v 0 c 0.746,-0.748 1.653,-1.121 2.72,-1.121 v 0 h 48.241 c 0.799,0 1.506,-0.293 2.12,-0.879 v 0 c 0.612,-0.588 0.919,-1.28 0.919,-2.081 v 0 c 0,-0.854 -0.307,-1.56 -0.919,-2.119 v 0 c -0.614,-0.561 -1.321,-0.84 -2.12,-0.84 v 0 h -42.4 c -1.388,0 -2.667,-0.255 -3.84,-0.761 v 0 c -1.175,-0.507 -2.188,-1.199 -3.04,-2.08 v 0 c -0.854,-0.88 -1.534,-1.92 -2.041,-3.119 v 0 c -0.507,-1.2 -0.759,-2.468 -0.759,-3.801 v 0 -7.68 c 0,-1.067 0.372,-1.974 1.119,-2.72 v 0 c 0.746,-0.748 1.653,-1.119 2.72,-1.119 v 0 c 1.014,0 1.906,0.371 2.68,1.119 v 0 c 0.773,0.746 1.161,1.653 1.161,2.72 v 0 6.8 c 0,0.8 0.24,1.467 0.72,2 v 0 c 0.479,0.533 1.066,0.853 1.76,0.96 v 0 h 15.92 c 2.88,0 5.652,-0.348 8.32,-1.04 v 0 c 2.666,-0.694 5.239,-1.627 7.72,-2.8 v 0 c 2.48,-1.173 4.866,-2.508 7.159,-4 v 0 c 2.294,-1.493 4.533,-3.04 6.721,-4.64 v 0 c 0.905,-0.748 1.811,-1.119 2.72,-1.119 v 0 c 1.065,0 1.971,0.371 2.719,1.119 v 0 c 0.746,0.746 1.121,1.653 1.121,2.72 v 0 c 0,0.746 -0.215,1.401 -0.641,1.96 v 0 c -0.427,0.561 -0.933,1.053 -1.519,1.481 v 0 c -1.548,1.226 -3.068,2.359 -4.561,3.399 v 0 c -1.493,1.04 -2.96,2.012 -4.4,2.92 v 0 h 0.321 c 1.492,0 2.891,0.281 4.199,0.84 v 0 c 1.307,0.56 2.454,1.321 3.441,2.28 v 0 c 0.986,0.96 1.759,2.08 2.32,3.361 v 0 c 0.56,1.279 0.84,2.665 0.84,4.159 v 0 c 0,1.493 -0.28,2.88 -0.84,4.161 v 0 c -0.561,1.279 -1.334,2.4 -2.32,3.359 v 0 c -0.987,0.96 -2.134,1.72 -3.441,2.281 v 0 c -1.308,0.559 -2.707,0.839 -4.199,0.839 v 0 z" /></g></g></g></g><g
+ id="g206"><g
+ clip-path="url(#clipPath212)"
+ id="g208"><g
+ transform="translate(414.1552,16.9135)"
+ id="g214"><path
+ id="path216"
+ style="fill:#20c4f4;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 0,0 c -1.173,0 -2.347,0.252 -3.52,0.76 -1.173,0.507 -2.213,1.213 -3.12,2.12 -0.907,0.906 -1.653,2 -2.24,3.28 -0.587,1.279 -0.88,2.72 -0.88,4.319 v 7.201 c 0,1.44 0.413,2.4 1.24,2.88 0.827,0.48 2.121,0.72 3.88,0.72 h 53.68 c 1.066,0 1.973,-0.374 2.721,-1.12 0.746,-0.748 1.12,-1.654 1.12,-2.721 0,-1.067 -0.374,-1.973 -1.12,-2.719 C 51.013,13.973 50.106,13.6 49.04,13.6 H -2.079 V 9.68 c 0,-0.534 0.225,-1 0.68,-1.4 0.452,-0.4 1.052,-0.6 1.799,-0.6 h 50.401 c 1.066,0 1.972,-0.373 2.72,-1.12 0.746,-0.748 1.12,-1.654 1.12,-2.72 0,-1.068 -0.374,-1.974 -1.12,-2.72 C 52.773,0.372 51.867,0 50.801,0 Z m -9.76,31.04 c 0,1.066 0.373,1.973 1.12,2.72 0.746,0.746 1.653,1.12 2.72,1.12 h 56.721 c 1.066,0 1.972,-0.374 2.72,-1.12 0.746,-0.747 1.12,-1.654 1.12,-2.72 0,-1.067 -0.374,-1.974 -1.12,-2.72 -0.748,-0.748 -1.654,-1.12 -2.72,-1.12 H -5.92 c -1.067,0 -1.974,0.372 -2.72,1.12 -0.747,0.746 -1.12,1.653 -1.12,2.72" /></g><g
+ transform="translate(183.1937,36.6703)"
+ id="g218"><path
+ id="path220"
+ style="fill:#047bc1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 0,0 C 0.723,-0.724 1.084,-1.602 1.084,-2.634 1.084,-3.668 0.723,-4.545 0,-5.268 -0.724,-5.992 -1.602,-6.353 -2.634,-6.353 h -23.242 c -0.93,0.103 -1.731,0.504 -2.402,1.202 -0.672,0.697 -1.007,1.536 -1.007,2.517 0,1.032 0.361,1.91 1.084,2.634 0.723,0.723 1.601,1.085 2.635,1.085 H -2.634 C -1.602,1.085 -0.724,0.723 0,0" /></g></g></g></g></svg>
diff --git a/_templates/meta_refresh.html b/_templates/meta_refresh.html
new file mode 100644
index 0000000..b940c76
--- /dev/null
+++ b/_templates/meta_refresh.html
@@ -0,0 +1,8 @@
+<!--
+SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+SPDX-License-Identifier: Apache-2.0
+--!>
+<html><head>
+ <meta charset="UTF-8">
+ <meta http-equiv="refresh" content="0;url=master/index.html" />
+</head></html>
diff --git a/_templates/versions.html b/_templates/versions.html
new file mode 100644
index 0000000..8ed5e31
--- /dev/null
+++ b/_templates/versions.html
@@ -0,0 +1,31 @@
+<!--
+SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+SPDX-License-Identifier: Apache-2.0
+--!>
+{%- if current_version %}
+<div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions">
+ <span class="rst-current-version" data-toggle="rst-current-version">
+ <span class="fa fa-book"> Other Versions</span>
+ v: {{ current_version.name }}
+ <span class="fa fa-caret-down"></span>
+ </span>
+ <div class="rst-other-versions">
+ {%- if versions.tags %}
+ <dl>
+ <dt>Tags</dt>
+ {%- for item in versions.tags %}
+ <dd><a href="{{ item.url }}">{{ item.name }}</a></dd>
+ {%- endfor %}
+ </dl>
+ {%- endif %}
+ {%- if versions.branches %}
+ <dl>
+ <dt>Branches</dt>
+ {%- for item in versions.branches %}
+ <dd><a href="{{ item.url }}">{{ item.name }}</a></dd>
+ {%- endfor %}
+ </dl>
+ {%- endif %}
+ </div>
+</div>
+{%- endif %}
diff --git a/conf.py b/conf.py
new file mode 100644
index 0000000..9fa6e27
--- /dev/null
+++ b/conf.py
@@ -0,0 +1,264 @@
+# -*- coding: utf-8 -*-
+#
+# Configuration file for the Sphinx documentation builder.
+#
+# This file does only contain a selection of the most common options. For a
+# full list see the documentation:
+# http://www.sphinx-doc.org/en/master/config
+
+# -- Path setup --------------------------------------------------------------
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+#
+# import os
+# import sys
+# sys.path.insert(0, os.path.abspath('.'))
+
+import os
+
+def get_version():
+ with open("VERSION") as f:
+ return f.read().strip()
+
+# -- Project information -----------------------------------------------------
+
+project = u'SD-Core Docs'
+copyright = u'2021-current, Open Networking Foundation'
+author = u'Open Networking Foundation'
+
+# The short X.Y version
+version = get_version()
+
+# The full version, including alpha/beta/rc tags
+release = version
+
+# -- General configuration ---------------------------------------------------
+
+# If your documentation needs a minimal Sphinx version, state it here.
+#
+# needs_sphinx = '1.0'
+
+# make all warnings errors
+warning_is_error = True
+
+# Add any Sphinx extension module names here, as strings. They can be
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+# ones.
+extensions = [
+ 'sphinx.ext.autosectionlabel',
+ 'sphinx.ext.coverage',
+ 'sphinx.ext.graphviz',
+ 'sphinx.ext.ifconfig',
+ 'sphinx.ext.intersphinx',
+ 'sphinx.ext.mathjax',
+ 'sphinx.ext.todo',
+ 'sphinxcontrib.spelling',
+ "sphinx_multiversion",
+]
+
+# require document prefix on section labels
+autosectionlabel_prefix_document = True
+
+# Text files with lists of words that shouldn't fail the spellchecker:
+spelling_word_list_filename=['dict.txt', ]
+
+# sphinx-multiversion prep, run in each versioned source directory
+prep_commands = [
+]
+
+# inlcude only the branches matching master and aether-*
+smv_branch_whitelist = r'^(master|sdcore-.*)$'
+
+# include all remote branches
+smv_remote_whitelist = r'^.*$'
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# The suffix(es) of source filenames.
+# You can specify multiple suffix as a list of string:
+#
+# source_suffix = ['.rst', '.md']
+source_suffix = ['.rst']
+
+# The master toctree document.
+master_doc = 'index'
+
+# The language for content autogenerated by Sphinx. Refer to documentation
+# for a list of supported languages.
+#
+# This is also used if you do content translation via gettext catalogs.
+# Usually you set "language" from the command line for these cases.
+language = None
+
+# List of patterns, relative to source directory, that match files and
+# directories to ignore when looking for source files.
+# This pattern also affects html_static_path and html_extra_path.
+exclude_patterns = [
+ '*/LICENSE.md',
+ '*/vendor',
+ '.DS_Store',
+ 'Thumbs.db',
+ '_build',
+ 'venv-docs',
+ 'requirements.txt',
+]
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = None
+
+# -- Options for HTML output -------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages. See the documentation for
+# a list of builtin themes.
+#
+html_theme = 'sphinx_rtd_theme'
+
+html_logo = '_static/sdcore.svg'
+
+html_favicon = '_static/sdcore-favicon-128.png'
+
+# Theme options are theme-specific and customize the look and feel of a theme
+# further. For a list of options available for each theme, see the
+# documentation.
+#
+html_theme_options = {
+ 'logo_only': True
+}
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ['_static']
+
+# Custom sidebar templates, must be a dictionary that maps document names
+# to template names.
+#
+# The default sidebars (for documents that don't match any pattern) are
+# defined by theme itself. Builtin themes are using these templates by
+# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
+# 'searchbox.html']``.
+#
+# html_sidebars = {}
+
+# -- Options for HTMLHelp output ---------------------------------------------
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'SD-CoreDocs'
+
+
+# -- Options for LaTeX output ------------------------------------------------
+
+latex_elements = {
+ # The paper size ('letterpaper' or 'a4paper').
+ #
+ # 'papersize': 'letterpaper',
+
+ # The font size ('10pt', '11pt' or '12pt').
+ #
+ # 'pointsize': '10pt',
+
+ # Additional stuff for the LaTeX preamble.
+ #
+ # 'preamble': '',
+
+ # Latex figure (float) alignment
+ #
+ # 'figure_align': 'htbp',
+}
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title,
+# author, documentclass [howto, manual, or own class]).
+latex_documents = [
+ (master_doc, 'SD-CoreDocs.tex', u'SD-Core Docs',
+ u'ONF', 'manual'),
+]
+
+
+# -- Options for manual page output ------------------------------------------
+
+# One entry per manual page. List of tuples
+# (source start file, name, description, authors, manual section).
+man_pages = [
+ (master_doc, 'SD-Core Docs', u'SD-Core Docs',
+ [author], 1)
+]
+
+
+# -- Options for Texinfo output ----------------------------------------------
+
+# Grouping the document tree into Texinfo files. List of tuples
+# (source start file, target name, title, author,
+# dir menu entry, description, category)
+texinfo_documents = [
+ (master_doc, 'SD-Core Docs', u'SD-Core Docs',
+ author, 'SD-CoreDocs', 'One line description of project.',
+ 'Miscellaneous'),
+]
+
+
+# -- Options for Epub output -------------------------------------------------
+
+# Bibliographic Dublin Core info.
+epub_title = project
+
+# The unique identifier of the text. This can be a ISBN number
+# or the project homepage.
+#
+# epub_identifier = ''
+
+# A unique identification for the text.
+#
+# epub_uid = ''
+
+# A list of files that should not be packed into the epub file.
+epub_exclude_files = ['search.html']
+
+
+# -- Extension configuration -------------------------------------------------
+
+# blockdiag/etc. config
+
+rackdiag_antialias = True
+rackdiag_html_image_format = "SVG"
+rackdiag_fontpath = [
+ "_static/fonts/Inconsolata-Regular.ttf",
+ "_static/fonts/Inconsolata-Bold.ttf",
+]
+
+nwdiag_antialias = True
+nwdiag_html_image_format = "SVG"
+nwdiag_fontpath = [
+ "_static/fonts/Inconsolata-Regular.ttf",
+ "_static/fonts/Inconsolata-Bold.ttf",
+]
+
+# -- Options for todo extension ----------------------------------------------
+# If true, `todo` and `todoList` produce output, else they produce nothing.
+todo_include_todos = True
+
+# -- Options for linkcheck ---------------------------------------------------
+# The link checker strips off .md from links and then complains
+linkcheck_ignore = [
+ r'https://jenkins.aetherproject.org/.*',
+ r'https://gerrit.opencord.org/.*',
+]
+
+linkcheck_timeout = 3
+linkcheck_retries = 2
+
+# -- options for Intersphinx extension ---------------------------------------
+
+intersphinx_mapping = {
+ 'sphinx': ('https://www.sphinx-doc.org/en/master', None),
+ 'sysapproach5g': ('https://5g.systemsapproach.org/', None),
+ 'sysapproachnet': ('https://book.systemsapproach.org/', None),
+ 'sysapproachsdn': ('https://sdn.systemsapproach.org/', None),
+ }
+
+def setup(app):
+
+ app.add_css_file('css/rtd_theme_mods.css')
diff --git a/dict.txt b/dict.txt
new file mode 100644
index 0000000..12d8ad2
--- /dev/null
+++ b/dict.txt
@@ -0,0 +1,15 @@
+Aether
+Dockerfile
+ONF
+SD-Core
+dev
+hssdb
+omec
+patchset
+patchsets
+reStructuredText
+repo
+repos
+sdcore
+unsuffixed
+virtualenv
diff --git a/index.rst b/index.rst
new file mode 100644
index 0000000..a86043b
--- /dev/null
+++ b/index.rst
@@ -0,0 +1,38 @@
+SD-Core Documentation
+=====================
+
+SD-Core is an ONF's 5G/LTE Core. More information about Aether can be found at
+the `ONF website <https://opennetworking.org/sd-core/>`_.
+
+
+Getting Started with SD-Core
+----------------------------
+
+Here are some useful places to start with SD-Core:
+
+* Read the most recent :doc:`Release Notes </release/1.0>`.
+
+Community
+---------
+
+Information about participating in the Aether community and development process
+can be found on the `ONF Wiki
+<https://wiki.opennetworking.org/display/COM/SD-Core>`_.
+
+
+.. toctree::
+ :maxdepth: 2
+ :caption: Releases
+ :hidden:
+ :glob:
+
+ release/1*
+ release/process.rst
+
+.. toctree::
+ :maxdepth: 1
+ :caption: Meta
+ :hidden:
+ :glob:
+
+ readme
diff --git a/readme.rst b/readme.rst
new file mode 100644
index 0000000..6b25028
--- /dev/null
+++ b/readme.rst
@@ -0,0 +1,80 @@
+Documentation Guide
+===================
+
+Writing Documentation
+---------------------
+
+Docs are generated using :doc:`Sphinx <sphinx:usage/index>`.
+
+Documentation is written in :doc:`reStructuredText
+<sphinx:usage/restructuredtext/basics>` - see this link for the basic format.
+
+In reStructuredText documents, to create the section hierarchy (mapped in HTML
+to ``<h1>`` through ``<h5>``) use these characters to underline headings in the
+order given: ``=``, ``-`` ``"``, ``'``, ``^``.
+
+Referencing other Documentation
+-------------------------------
+
+Other Sphinx-built documentation, both ONF and non-ONF can be linked to using
+:doc:`Intersphinx <sphinx:usage/extensions/intersphinx>`.
+
+You can see all link targets available on a remote Sphinx's docs by running::
+
+ python -msphinx.ext.intersphinx http://otherdocs/objects.inv
+
+Building the Docs
+------------------
+
+The documentation build process is stored in the ``Makefile``. Building docs
+requires Python to be installed, and most steps will create a virtualenv
+(``venv_docs``) which contains the required tools. You may also need to
+install the ``enchant`` C library using your system's package manager for the
+spelling checker to function properly.
+
+Run ``make html`` to generate html documentation in ``_build/html``.
+
+To check the formatting of documentation, run ``make lint``. This will be done
+in Jenkins to validate the documentation, so please do this before you create a
+patchset.
+
+To check spelling, run ``make spelling``. If there are additional words that
+are correctly spelled but not in the dictionary (acronyms, trademarks, etc.)
+please add them to the ``dict.txt`` file.
+
+Creating new Versions of Docs
+-----------------------------
+
+To change the version shown on the built site, change the contents of the
+``VERSION`` file.
+
+There is a ``make multiversion`` target which will build all versions published
+on the remote to ``_build``. This will use a fork of `sphinx-multiversion
+<https://github.com/Holzhaus/sphinx-multiversion>`_ to build multiple versions
+for the site.
+
+Adding Images and Diagrams
+--------------------------
+
+There are multiple ways to add images and diagrams to the documentation.
+Generally, you should prefer using `SVG
+<https://en.wikipedia.org/wiki/Scalable_Vector_Graphics>`_ images, as these can
+be scaled to any size without quality loss.
+
+If you're creating diagrams, there are multiple tools available.
+:doc:`Graphviz <sphinx:usage/extensions/graphviz>` can render inline text-based
+graphs definitions and diagrams within the documentation, and is best for
+simple diagrams.
+
+More complex diagrams can be created in `Diagrams.net/Draw.io
+<https://www.diagrams.net/>`_ format. When saving these diagrams, use the
+SVG format, and check the "Include a copy of my diagram". This will let
+someone open the SVG later directly from the documentation and edit it, without
+any loss in functionality or quality.
+
+The last resort is to use raster images. If they're drawings or screen
+captures, use the `PNG
+<https://en.wikipedia.org/wiki/Portable_Network_Graphics>`_ format. Consider
+compressing them with a tool like `OptiPNG <http://optipng.sourceforge.net/>`_,
+or `pngquant <https://pngquant.org/>`_. If it's a photograph, use `JPEG
+<https://en.wikipedia.org/wiki/JPEG>`_.
diff --git a/release/1.0.rst b/release/1.0.rst
new file mode 100644
index 0000000..26539e9
--- /dev/null
+++ b/release/1.0.rst
@@ -0,0 +1,32 @@
+SD-Core 1.0 Release
+===================
+
+Highlights
+----------
+
+New Features and Improvements
+-----------------------------
+
+Testing
+-------
+
+Documentation
+-------------
+
+Aether documentation is available at `docs.sd-core.opennetworking.org
+<https://docs.sd-core.opennetworking.org>`_
+
+
+Known Issues and Limitations
+----------------------------
+
+Component Versions in the 1.0 Release
+-------------------------------------
+
+Helm Chart Versions and their component charts and containers:
+
+* sdcore-helm-chart: ``0.1.0``
+
+ * omec-control-plane: ``0.1.0``
+
+ * hssdb: ``c3po-hssdb:0.1.0``
diff --git a/release/process.rst b/release/process.rst
new file mode 100644
index 0000000..4fce892
--- /dev/null
+++ b/release/process.rst
@@ -0,0 +1,118 @@
+Release Process
+===============
+
+Prerequisites
+-------------
+
+SD-Core makes the following assumptions about the components are included in a
+release:
+
+Git tags
+""""""""
+
+Code receives Git tags as a part of the CI process
+
+* Tag content comes from a **VERSION** file within the repo, and tags are
+ created only the version is a SemVer released version (example: ``1.2.3``, no
+ ``-dev`` or ``-rc`` extensions)
+
+* Tagging is *only done by the CI system* (Jenkins), which pushes tags to git
+ repos after a submit/merge of code which changes the **VERSION** file.
+
+* CI system enforces tag uniqueness - no two commits have the same released
+ version tags.
+
+ * You can't re-release or "fix" a version that has problem - make a new
+ version with fixes in it.
+
+Docker container images
+"""""""""""""""""""""""
+
+All docker images are tagged based on their git tags.
+
+* For released versions, the CI system should prevent a Dockerfile from
+ referencing a parent containers that are a moving target, such as ``latest``
+ or ``master``.
+
+ * This allows a container to be rebuilt given an arbitrary git commit with
+ fair confidence that it will result in the same code in the container.
+
+* Official images are only pushed to registries by the CI system
+
+ * Increases repeatability of the process, and prevents human accidents.
+
+Helm charts
+"""""""""""
+
+* Each chart may only contain references to released, SemVer tagged container images
+
+ * Chart CI process must check that a chart version is unique - a chart can't
+ be created with the same version twice. This should be done against the
+ chart repo.
+
+Release Steps
+-------------
+
+All Helm charts are checked that the containers they use have a SemVer version
+tag
+
+A branch is created on the Helm charts repo, with the abbreviated name of the
+release - for example **sdcore-1.0**.
+
+To allow for future patches to go into the repo in a way that does not conflict
+with the version branch, each component repo's **VERSION** file should have it's
+minor version increased. (ex: 1.2.n to 1.3.0-dev, so future 1.3.n+1 component
+release can easily be created).
+
+The same should be done on Helm charts in the chart repos post release, but the
+versions there shouldn't include a ``-dev`` suffix because chart publishing
+requires that every new chart version be unique and unsuffixed SemVer is a
+more consistent release numbering pattern.
+
+Finally, the ``sdcore-helm-charts`` repo overall **VERSION** should also be incremented
+to the next minor version (1.6.0-dev) on the **master** branch, so all 1.0.x
+releases of the overall charts repo will happen on the **sdcore-1.0** branch.
+
+Creating releases on the 1.0.x branch
+"""""""""""""""""""""""""""""""""""""
+
+If a fix is needed only to the helm charts:
+
+1. Make the fix on the master branch of sdcore-helm-charts (assuming that it is
+ required in both places).
+
+2. After the master tests pass, manually cherry-pick the fix to the **sdcore-1.0**
+ branch (the Chart version would be different, requiring the manual step).
+
+3. Cherry-picked patchsets on that branch will be checked by the **sdcore-1.0**
+ branch of tests.
+
+4. When it passes, submitting the change will make a new 1.0.x release
+
+5. Update the documentation to reflect the chart changes, a description of the
+ changes m, and increment the tag on the docs from 1.0.n to 1.0.n+1, to
+ reflect the patch change.
+
+6. If all the charts are updated and working correctly, create a new charts
+ point release by increasing the 1.0.n **VERSION** file in the
+ sdcore-helm-charts repo. This should be the same as the version in the
+ documentation. Immediately make another patch that returns the
+ ``sdcore-helm-charts`` **VERSION** to 1.0.n+1-dev, so that development
+ patches can continue on that branch.
+
+If a fix is needed to the components/containers that are included by the helm charts:
+
+1. Develop a fix to the issue on the master branch, get it approved after
+ passing master tests.
+
+2. If it doesn't exist, create an **sdcore-1.0** branch on the component repo,
+ starting at the commit where the **VERSION** of the component used in 1.0 was
+ created - this is known as "lazy branching".
+
+
+3. Manually cherry-pick to the **sdcore-1.0** branch of the component, incrementing
+ the patch version, and test with the **sdcore-1.0** version of
+ sdcore-system-tests and helm charts.
+
+4. Update helm charts and go through the helm chart update process above
+
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..e81d18d
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,7 @@
+Sphinx~=4.1.2
+doc8~=0.9.0
+reuse~=0.13.0
+docutils==0.16
+sphinx-rtd-theme~=0.5.2
+sphinxcontrib-spelling~=7.2.1
+sphinx-multiversion~=0.2.4