From 7f0823cde4ccfed65d7a85c4d18ae0b19e421bbd Mon Sep 17 00:00:00 2001 From: "Rodrigo A. Melo" Date: Sun, 5 Sep 2021 23:07:01 -0300 Subject: [PATCH 1/4] docs: add infrastructure taken from the Vunit main project --- .gitignore | 3 + docs/_static/VUnit_logo_175x175.png | Bin 0 -> 12744 bytes docs/_static/vunit.ico | Bin 0 -> 2238 bytes docs/conf.py | 85 ++++++++++++++++++++++++++++ docs/index.rst | 18 ++++++ 5 files changed, 106 insertions(+) create mode 100644 docs/_static/VUnit_logo_175x175.png create mode 100644 docs/_static/vunit.ico create mode 100644 docs/conf.py create mode 100644 docs/index.rst diff --git a/.gitignore b/.gitignore index c19ddd9..0458a47 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ __pycache__/ vunit_out/ +/docs/_build +/docs/_theme +*.tgz diff --git a/docs/_static/VUnit_logo_175x175.png b/docs/_static/VUnit_logo_175x175.png new file mode 100644 index 0000000000000000000000000000000000000000..3836371faf62f1be2df616d4c8f86d8132c411ea GIT binary patch literal 12744 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%0Dsc;iVI#=IDCs=J5R zhWtS5K%j>Tse#d((Xw zyq{3NJUxo3s{vJgW`8h(AN*l3-nWjyYccTXyr{0ILs!oz44lm1jrRrM0311OSJh{J zyI~MI4h&wl1i(8TZcJbGtKzfH`$DK~9b=ou;QiCj@MI9ZgI84XS)IevsC9VRrZIT` zGBGiDnV1;7 zOblKoCI&AP6N8tD>C?f>g5pdng;&(E&^S}AW1TKNs^^tFml}sHf^vW)x=6pm|~|SqkyUnw(I^L3`QVHvc&rXAveE3 z(nng71uuMaGd$iXTScZtm&X^yFTSw}>B-jX-35VzKM->BJp+@+e7?|vZ*cdvA{_g1 z4HAt4A~L|d2qsF&03tGwXb^DZscqQ1y?DXb`FtVt3``yqeg4R64%gHpR*Mlj-3Q$S zjsx!AT7;H0nK*aBg}$L_M8fP&%tZ8XCJHFbO+@AT>;><*01ysG;c!jC=a0O`)iw0! zox`&&ySEpYrll@rE6Aj1O}MY(cwJ9tPS&!G{PybNkbBB|uy4>EnV#{m)nQVsre{3p z8+1q9Q{IEytBXSd031K^vVCpEfxxl^!<|Nh2$Mi5gxRk|az1K*-%QFnP@9kGxh@p7rkb>f-C-x&IGGz?ol4oY@=z O0000cLZ0u@(JqB0{1Rhef{ot=zoehO;%XYuCtIn?H);_buBsLxA7Ltz#gin8&c zgpbD3hiDW$LQ`2jnkx#?{Hh2omBo}LXsLRN@3jK_sC$8*_2p=7c#XCX)oA-zgZ7Va z(9u{&`4$~b_2~Tk4qac~qpP_A-CsYU=UXFszBi%oS2OxrTQJbw24QzQggqS)_I6_E zcQ1wq`Y|l*$H?FSMu!I}hcG%a4AJNaM50lQi9{G18=LMG{rCUhz+bxoGoS4$!pGd7 zW1=EB{yYO!M>7ah&Gi-dvas=B|GFfh$laLnaFj^~6Q4giXMG2p=i-0TOLQAN+WP{xN z#pJUmw_;a|seB#Tk($8l2x^?Ca5eV9HnTSSm?3K74YK*BhYLz_qA|pVG0Y8#kwl literal 0 HcmV?d00001 diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..e50eec1 --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,85 @@ +# -*- coding: utf-8 -*- + +import os +import sys +from pathlib import Path + +# -- Sphinx Options ----------------------------------------------------------- + +# If your project needs a minimal Sphinx version, state it here. +needs_sphinx = "3.0" + +extensions = [ + "sphinx.ext.extlinks", + "sphinx.ext.intersphinx", + "sphinx.ext.todo", + "sphinxarg.ext", # Automatic argparse command line argument documentation +] + +# The suffix(es) of source filenames. +source_suffix = { + ".rst": "restructuredtext" +} + +master_doc = "index" + +project = u"Introduction to TDD and CI With VUnit" +copyright = u"2014-2021, Lars Asplund" +author = u"LarsAsplund and contributors" + +version = "" +release = "" + +language = None + +exclude_patterns = [] + +pygments_style = "sphinx" + +todo_include_todos = False + +# -- Options for HTML output ---------------------------------------------- + +html_theme_path = ["."] +html_theme = "_theme" + +html_theme_options = { + "analytics_id": "UA-abcdefghi-j", + "logo_only": True, + "vcs_pageview_mode": "blob", + "style_nav_header_background": "#0c479d", + "home_breadcrumbs": False, +} +html_context = { + "conf_py_path": "%s/" % Path(__file__).parent.name, + "display_github": True, + "github_user": "VUnit", + "github_repo": "vunit", + "github_version": "master/", +} + +html_static_path = ["_static"] + +html_logo = str(Path(html_static_path[0]) / "VUnit_logo_175x175.png") + +html_favicon = str(Path(html_static_path[0]) / "vunit.ico") + +# Output file base name for HTML help builder. +htmlhelp_basename = "VUnitDoc" + +# -- InterSphinx ---------------------------------------------------------- + +intersphinx_mapping = { + "ghdl": ("https://ghdl.github.io/ghdl", None), + "python": ("https://docs.python.org/3.8/", None), + "vunit": ("https://vunit.github.io", None), +} + +# -- ExtLinks ------------------------------------------------------------- + +extlinks = { + "vunit_example": ("https://github.com/VUnit/vunit/tree/master/examples/%s/", ""), + "vunit_file": ("https://github.com/VUnit/vunit/tree/master/%s/", ""), + "vunit_commit": ("https://github.com/vunit/vunit/tree/%s/", "@"), + "vunit_issue": ("https://github.com/VUnit/vunit/issues/%s/", "#"), +} diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..8ee5d39 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,18 @@ + +.. centered:: |shieldRepo|_ |shieldGitter|_ |shieldTwitter|_ + +.. |shieldRepo| image:: https://img.shields.io/badge/VUnit/vunit-0c479d.svg?longCache=true&style=flat-square&logo=github +.. _shieldRepo: https://github.com/VUnit/tdd-intro + +.. |shieldGitter| image:: https://img.shields.io/gitter/room/VUnit/vunit.svg?longCache=true&style=flat-square&logo=gitter&logoColor=4db797&color=4db797 +.. _shieldGitter: https://gitter.im/VUnit/vunit + +.. |shieldTwitter| image:: https://img.shields.io/twitter/follow/VUnitFramework.svg?longCache=true&style=flat-square&color=1DA1F2&label=%40VUnitFramework&logo=twitter&logoColor=fff +.. _shieldTwitter: https://www.twitter.com/VUnitFramework + +Introduction to Test-Driven Development and Continuous Integration With VUnit +============================================================================= + +.. toctree:: + :caption: Tutorial + :hidden: From 9809344d9d1571406903f3baa13df58364c381f3 Mon Sep 17 00:00:00 2001 From: "Rodrigo A. Melo" Date: Tue, 7 Sep 2021 20:41:18 -0300 Subject: [PATCH 2/4] ci: add a workflow for docs based on the BTD action --- .github/workflows/docs.yml | 28 ++++++++++++++++++++++++++++ docs/conf.py | 13 ++++++------- 2 files changed, 34 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/docs.yml diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000..56cc653 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,28 @@ +name: Docs + +on: + push: + pull_request: + workflow_dispatch: + +jobs: + + BuildTheDocs: + name: BuildTheDocs + runs-on: ubuntu-latest + + steps: + + - name: 'Checkout' + uses: actions/checkout@v2 + + - name: 'Run BuildTheDocs and publish to GitHub Pages' + uses: buildthedocs/btd@v0 + with: + token: ${{ github.token }} + + - name: 'Upload artifacts' + uses: actions/upload-artifact@master + with: + name: doc + path: docs/_build/html diff --git a/docs/conf.py b/docs/conf.py index e50eec1..67de645 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -2,6 +2,7 @@ import os import sys +from json import loads from pathlib import Path # -- Sphinx Options ----------------------------------------------------------- @@ -50,13 +51,11 @@ "style_nav_header_background": "#0c479d", "home_breadcrumbs": False, } -html_context = { - "conf_py_path": "%s/" % Path(__file__).parent.name, - "display_github": True, - "github_user": "VUnit", - "github_repo": "vunit", - "github_version": "master/", -} + +ctx = Path(__file__).resolve().parent / 'context.json' +if ctx.is_file(): + html_context.update(loads(ctx.open('r').read())) + html_static_path = ["_static"] From dabd2789cc4b40adf8f11cee94ec5024c6000789 Mon Sep 17 00:00:00 2001 From: "Rodrigo A. Melo" Date: Sun, 19 Sep 2021 21:23:36 -0300 Subject: [PATCH 3/4] docs: add btd.yml and Makefile --- .btd.yml | 6 ++++++ docs/Makefile | 23 +++++++++++++++++++++++ docs/conf.py | 11 +++++++---- docs/index.rst | 9 ++++++--- 4 files changed, 42 insertions(+), 7 deletions(-) create mode 100644 .btd.yml create mode 100644 docs/Makefile diff --git a/.btd.yml b/.btd.yml new file mode 100644 index 0000000..ed99d3d --- /dev/null +++ b/.btd.yml @@ -0,0 +1,6 @@ +input: docs +output: _build +requirements: requirements.txt +target: gh-pages +formats: [ html ] +theme: https://codeload.github.com/buildthedocs/sphinx.theme/tar.gz/v1 diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..ecb35e3 --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,23 @@ +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = _build + +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees -T -D language=en $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +#--- + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + +#--- + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + +#--- + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex diff --git a/docs/conf.py b/docs/conf.py index 67de645..2e8d924 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -13,8 +13,7 @@ extensions = [ "sphinx.ext.extlinks", "sphinx.ext.intersphinx", - "sphinx.ext.todo", - "sphinxarg.ext", # Automatic argparse command line argument documentation + "sphinx.ext.todo" ] # The suffix(es) of source filenames. @@ -24,7 +23,7 @@ master_doc = "index" -project = u"Introduction to TDD and CI With VUnit" +project = u"VUnit: Introduction to TDD and CI" copyright = u"2014-2021, Lars Asplund" author = u"LarsAsplund and contributors" @@ -52,6 +51,7 @@ "home_breadcrumbs": False, } +html_context = {} ctx = Path(__file__).resolve().parent / 'context.json' if ctx.is_file(): html_context.update(loads(ctx.open('r').read())) @@ -79,6 +79,9 @@ extlinks = { "vunit_example": ("https://github.com/VUnit/vunit/tree/master/examples/%s/", ""), "vunit_file": ("https://github.com/VUnit/vunit/tree/master/%s/", ""), - "vunit_commit": ("https://github.com/vunit/vunit/tree/%s/", "@"), + "vunit_commit": ("https://github.com/VUnit/vunit/tree/%s/", "@"), "vunit_issue": ("https://github.com/VUnit/vunit/issues/%s/", "#"), + "tdd_file": ("https://github.com/VUnit/tdd-intro/tree/master/%s/", ""), + "tdd_commit": ("https://github.com/VUnit/tdd-intro/tree/%s/", "@"), + "tdd_issue": ("https://github.com/VUnit/tdd-intro/issues/%s/", "#"), } diff --git a/docs/index.rst b/docs/index.rst index 8ee5d39..d294903 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,8 +1,11 @@ -.. centered:: |shieldRepo|_ |shieldGitter|_ |shieldTwitter|_ +.. centered:: |shieldTdd|_ |shieldVunit|_ |shieldGitter|_ |shieldTwitter|_ -.. |shieldRepo| image:: https://img.shields.io/badge/VUnit/vunit-0c479d.svg?longCache=true&style=flat-square&logo=github -.. _shieldRepo: https://github.com/VUnit/tdd-intro +.. |shieldTdd| image:: https://img.shields.io/badge/VUnit/tdd--intro-0c479d.svg?longCache=true&style=flat-square&logo=github +.. _shieldTdd: https://github.com/VUnit/tdd-intro + +.. |shieldVunit| image:: https://img.shields.io/badge/VUnit/vunit-0c479d.svg?longCache=true&style=flat-square&logo=github +.. _shieldVunit: https://github.com/VUnit/vunit .. |shieldGitter| image:: https://img.shields.io/gitter/room/VUnit/vunit.svg?longCache=true&style=flat-square&logo=gitter&logoColor=4db797&color=4db797 .. _shieldGitter: https://gitter.im/VUnit/vunit From 9271d281af50155f22e490f22d8375cf6452fc09 Mon Sep 17 00:00:00 2001 From: umarcor Date: Mon, 20 Sep 2021 03:50:17 +0200 Subject: [PATCH 4/4] docs: copy rst instructions into the sphinx scope --- .gitignore | 1 + docs/conf.py | 13 +++++++++++++ docs/index.rst | 6 +++++- tutorial/exercise_01/instructions.rst | 4 ++++ tutorial/exercise_02/instructions.rst | 4 ++++ 5 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 tutorial/exercise_01/instructions.rst create mode 100644 tutorial/exercise_02/instructions.rst diff --git a/.gitignore b/.gitignore index 0458a47..8768884 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ __pycache__/ vunit_out/ /docs/_build /docs/_theme +/docs/tutorial *.tgz diff --git a/docs/conf.py b/docs/conf.py index 2e8d924..2717b8b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -4,6 +4,19 @@ import sys from json import loads from pathlib import Path +from shutil import copyfile + +ROOT = Path(__file__).resolve().parent + +TUTORIAL = ROOT / "tutorial" + +if not TUTORIAL.exists(): + TUTORIAL.mkdir(exist_ok=True) + +for idx in range(1,8): + instructions = ROOT.parent / "tutorial/exercise_0{}/instructions.rst".format(idx) + if instructions.exists(): + copyfile(instructions, TUTORIAL / "ex0{}.rst".format(idx)) # -- Sphinx Options ----------------------------------------------------------- diff --git a/docs/index.rst b/docs/index.rst index d294903..14fe42d 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,3 +1,4 @@ +.. VUnit:TDDIntro: .. centered:: |shieldTdd|_ |shieldVunit|_ |shieldGitter|_ |shieldTwitter|_ @@ -13,9 +14,12 @@ .. |shieldTwitter| image:: https://img.shields.io/twitter/follow/VUnitFramework.svg?longCache=true&style=flat-square&color=1DA1F2&label=%40VUnitFramework&logo=twitter&logoColor=fff .. _shieldTwitter: https://www.twitter.com/VUnitFramework -Introduction to Test-Driven Development and Continuous Integration With VUnit +Introduction to Test-Driven Development and Continuous Integration with VUnit ============================================================================= .. toctree:: :caption: Tutorial :hidden: + + tutorial/ex01.rst + tutorial/ex02.rst diff --git a/tutorial/exercise_01/instructions.rst b/tutorial/exercise_01/instructions.rst new file mode 100644 index 0000000..448b563 --- /dev/null +++ b/tutorial/exercise_01/instructions.rst @@ -0,0 +1,4 @@ +.. VUnit:Tutorial:Exercise01: + +Exercise 01 +########### diff --git a/tutorial/exercise_02/instructions.rst b/tutorial/exercise_02/instructions.rst new file mode 100644 index 0000000..f83ae57 --- /dev/null +++ b/tutorial/exercise_02/instructions.rst @@ -0,0 +1,4 @@ +.. VUnit:Tutorial:Exercise02: + +Exercise 02 +###########