From c84992093ecc6ab4d2a922fa8008680ba96944b4 Mon Sep 17 00:00:00 2001 From: fboundy Date: Sat, 4 Jul 2026 14:00:20 +0100 Subject: [PATCH] Publish docs to GitHub Pages; fix broken readthedocs link (#33) The README linked to solisconnect.readthedocs.io, which 404s - the project was rebranded from solis_modbus and an RTD project under the new name was never created. Rather than depend on an external RTD dashboard import, build the existing Sphinx docs and deploy them to GitHub Pages via a workflow, and repoint the README (main link plus the Waveshare sensors deep-link) at https://fboundy.github.io/solisconnect/. The .readthedocs.yaml is left in place so RTD still works if the project is later imported. Fixes #33 --- .github/workflows/docs.yaml | 55 +++++++++++++++++++++++++++++++++++++ README.md | 4 +-- 2 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/docs.yaml diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml new file mode 100644 index 0000000..de0ded0 --- /dev/null +++ b/.github/workflows/docs.yaml @@ -0,0 +1,55 @@ +name: Docs + +# Build the Sphinx documentation and publish it to GitHub Pages. +# Replaces the never-provisioned solisconnect.readthedocs.io site (issue #33). + +on: + push: + branches: [main] + paths: + - "docs/**" + - "README.md" + - ".github/workflows/docs.yaml" + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +# Allow one concurrent deployment; don't cancel an in-progress run. +concurrency: + group: pages + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + + - name: Install docs dependencies + run: | + python -m pip install --upgrade pip + pip install sphinx -r docs/requirements.txt + + - name: Build HTML + run: sphinx-build -b html docs/source docs/_build/html + + - uses: actions/upload-pages-artifact@v3 + with: + path: docs/_build/html + + deploy: + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - id: deployment + uses: actions/deploy-pages@v4 diff --git a/README.md b/README.md index d970ee3..dc646bf 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ The SolisCloud API support was framed with reference to these projects: ## Documentation -https://solisconnect.readthedocs.io/ +https://fboundy.github.io/solisconnect/ ## Installation @@ -131,7 +131,7 @@ Home Assistant only allows one `iot_class` value in the manifest. SolisConnect i - **Identification**: This field has been removed from the setup form. If you previously used it, the integration will still read it internally to migrate your old entities, but it is no longer user-configurable. -`Connection Type`: S2 is the default Modbus dongle option. Only select Waveshare if you are using a Waveshare device and some sensors are higher than normal. See https://solisconnect.readthedocs.io/en/latest/sensors.html#waveshare +`Connection Type`: S2 is the default Modbus dongle option. Only select Waveshare if you are using a Waveshare device and some sensors are higher than normal. See https://fboundy.github.io/solisconnect/sensors.html#waveshare # [Solar card setup](https://github.com/slipx06/sunsynk-power-flow-card):