Trigger action when prebuilt yaml changes

This commit is contained in:
Edward Firmo
2024-02-19 12:21:30 +01:00
parent 7c63d276cc
commit 38f6e66b85
2 changed files with 45 additions and 1 deletions

View File

@@ -7,11 +7,13 @@ on:
paths:
- "nspanel_esphome*.yaml"
- "esphome/nspanel_esphome*.yaml"
- "prebuilt/nspanel_esphome*.yaml"
- ".test/*.yaml"
pull_request:
paths:
- "nspanel_esphome*.yaml"
- "esphome/nspanel_esphome*.yaml"
- "prebuilt/nspanel_esphome*.yaml"
- ".test/*.yaml"
workflow_dispatch:
@@ -193,7 +195,6 @@ jobs:
uses: barndawgie/build-action@v1.9.0
with:
yaml_file: prebuilt/nspanel_esphome_prebuilt.yaml
version: latest
- name: Move and Rename Firmware File
run: |

View File

@@ -178,4 +178,47 @@ jobs:
with:
yaml_file: "./.test/esphome_advanced_climate_heat_customizations.yaml"
version: beta
build_prebuilt_firmware:
name: Prebuilt Firmware
runs-on: ubuntu-latest
needs: build_core # Ensure this job runs after the core build job
steps:
- uses: actions/checkout@v4.1.0
with:
fetch-depth: '0'
- name: Build ESPHome Prebuilt Firmware
uses: barndawgie/build-action@v1.9.0
with:
yaml_file: prebuilt/nspanel_esphome_prebuilt.yaml
version: beta
- name: Move and Rename Firmware File
run: |
mkdir -p prebuilt
cp prebuilt/.esphome/build/nspanel/.pioenvs/nspanel/firmware.bin prebuilt/nspanel_esphome_prebuilt.bin || true
cp prebuilt/.esphome/build/nspanel/.pioenvs/nspanel/firmware-factory.bin prebuilt/nspanel_esphome_prebuilt-factory.bin || true
- name: Set Commit Message
id: set_commit_message
run: |
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
echo "COMMIT_MESSAGE=Pre-built firmware for NSPanel - ${{ github.event.pull_request.title }}" >> $GITHUB_ENV
elif [[ "${{ github.event_name }}" == "push" ]]; then
commit_message=$(git log -1 --pretty=format:'%s')
echo "COMMIT_MESSAGE=Pre-built firmware for NSPanel - $commit_message" >> $GITHUB_ENV
else
echo "COMMIT_MESSAGE=Pre-built firmware for NSPanel" >> $GITHUB_ENV
fi
- name: Commit and Push Firmware Files
run: |
git config --global user.name 'GitHub Actions'
git config --global user.email 'actions@github.com'
git add prebuilt/*.bin
git commit -m "${{ env.COMMIT_MESSAGE }}"
git push
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
...