diff --git a/.gitea/workflows/home-assistant-deploy.yml b/.gitea/workflows/home-assistant-deploy.yml index 7a3f16d..7e77d4f 100644 --- a/.gitea/workflows/home-assistant-deploy.yml +++ b/.gitea/workflows/home-assistant-deploy.yml @@ -65,15 +65,19 @@ jobs: name: Home Assistant Configuration Check needs: [check-and-create-pr] runs-on: ubuntu-latest + env: HA_VERSION: "2025.8.3" + steps: - name: Checkout repository uses: actions/checkout@v4 + - name: Set up Python uses: actions/setup-python@v5 with: python-version: '3.13.2' + - name: Cache pip wheels id: cache-wheels uses: actions/cache@v4 @@ -82,6 +86,7 @@ jobs: key: pip-wheels-${{ runner.os }}-py3.13-ha-${{ env.HA_VERSION }} restore-keys: | pip-wheels-${{ runner.os }}-py3.13- + - name: Gotify Notification (setup) uses: eikendev/gotify-action@master with: @@ -89,13 +94,20 @@ jobs: gotify_app_token: ${{ secrets.RIKKU_RUNNER_GOTIFY_TOKEN }} notification_title: 'GITEA: Home Assistant Config Check' notification_message: 'Setting up Python and dependencies...' - - name: Build wheels & install Home Assistant (future-proof) + + - name: Download HA requirements_all.txt + run: | + curl -sSL -o requirements_all.txt \ + "https://raw.githubusercontent.com/home-assistant/core/${HA_VERSION}/requirements_all.txt" + + - name: Build wheels & install Home Assistant + full deps run: | python -m pip install --upgrade pip wheel - # Build wheels for HA and *all* optional dependencies - pip wheel --wheel-dir ~/.cache/pip "homeassistant[all]==${HA_VERSION}" + # Build wheels for HA, full requirements, and colorlog explicitly + pip wheel --wheel-dir ~/.cache/pip -r requirements_all.txt "homeassistant==${HA_VERSION}" colorlog # Install everything from cached wheels - pip install --no-index --find-links ~/.cache/pip "homeassistant[all]==${HA_VERSION}" + pip install --no-index --find-links ~/.cache/pip -r requirements_all.txt "homeassistant==${HA_VERSION}" colorlog + - name: Gotify Notification (start check) uses: eikendev/gotify-action@master with: @@ -103,9 +115,11 @@ jobs: gotify_app_token: ${{ secrets.RIKKU_RUNNER_GOTIFY_TOKEN }} notification_title: 'GITEA: Home Assistant Config Check' notification_message: 'Starting config check...' + - name: Run Home Assistant config check run: | hass --config ansible/configs/homeassistant --script check_config | tee ha-check.log + - name: Gotify Notification (done) uses: eikendev/gotify-action@master with: @@ -113,6 +127,7 @@ jobs: gotify_app_token: ${{ secrets.RIKKU_RUNNER_GOTIFY_TOKEN }} notification_title: 'GITEA: Home Assistant Config Check' notification_message: '🚀 Config check done!' + # generate-service-list: # name: Generate list of added/modified/deleted services # runs-on: ubuntu-latest