diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..3655ad5 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,3 @@ +#require review +* @llpeterson @drbruced12 + diff --git a/.github/workflows/publish-docs.yml b/.github/workflows/publish-docs.yml new file mode 100644 index 0000000..25d5230 --- /dev/null +++ b/.github/workflows/publish-docs.yml @@ -0,0 +1,47 @@ +name: Publish Docs Workflow +run-name: ${{ github.actor }} is publishing document artifacts 🚀 +on: + push: + branches: + - master + workflow_dispatch: + + + # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Single deploy job since we're just deploying + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Pages + uses: actions/configure-pages@v4 + - name: Build html + run: make html + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + # Upload build repository + path: './_build/html' + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 + + + + - run: echo "🍏 This job's status is ${{ job.status }}." diff --git a/.github/workflows/validate-docs.yaml b/.github/workflows/validate-docs.yaml new file mode 100644 index 0000000..af639a5 --- /dev/null +++ b/.github/workflows/validate-docs.yaml @@ -0,0 +1,22 @@ +name: Validate Docs Workflow +run-name: ${{ github.actor }} is validating document source +on: [pull_request, workflow_dispatch] +jobs: + Validate_Docs: + runs-on: ubuntu-latest + steps: + - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." + - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" + - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." + - name: Check out repo + uses: actions/checkout@v4 + - name: Validate source + run: make test + - name: Build html + run: make html + - name: List built files + run: | + ls ${{ github.workspace }}/_build/html + + - run: echo "🍏 This job's status is ${{ job.status }}." + diff --git a/Makefile b/Makefile index 9e4a046..17e1144 100644 --- a/Makefile +++ b/Makefile @@ -26,8 +26,8 @@ $(VIRTUALENV): source ./$@/bin/activate ;\ pip install -r requirements.txt -# lint and link verification. linkcheck is built into sphinx -test: lint spelling linkcheck +# lint and spelling verification. linkcheck is skipped for now +test: lint spelling # lint all .rst files lint: $(VIRTUALENV) diff --git a/conf.py b/conf.py index f859a5c..d3caec5 100644 --- a/conf.py +++ b/conf.py @@ -85,7 +85,7 @@ def get_version(): # # 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 +language = 'en' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. @@ -103,9 +103,9 @@ def get_version(): } # Ignore link check for the following websites -# linkcheck_ignore = [ -# 'https://SDN.systemspproach.org/', -# ] +linkcheck_ignore = [ + 'https://amzn.to/', 'https://amazon.com', +] # -- Options for HTML output ------------------------------------------------- @@ -127,6 +127,11 @@ def get_version(): # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] +html_css_files = [ + 'css/rtd_theme_mods.css', + ] + + # HTML Favicon html_favicon = '_static/bridge.ico' @@ -252,8 +257,6 @@ def get_version(): def setup(app): - app.add_css_file('css/rtd_theme_mods.css') - - app.add_js_file('https://www.googletagmanager.com/gtag/js?id=G-C4RNJ35K6B') + app.add_js_file('https://www.googletagmanager.com/gtag/js?id=G-C4RNJ35K6B', loading_method="async") app.add_js_file(None, body=GA_INVOKE_JS) diff --git a/requirements.txt b/requirements.txt index 4bd6069..6a83ba6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -Sphinx~=4.4.0 +Sphinx~=5.3.0 doc8~=0.10.1 docutils~=0.17.1 reuse~=0.14.0