Skip to content

Update Homebridge Analytics #85

Update Homebridge Analytics

Update Homebridge Analytics #85

Workflow file for this run

name: Update Homebridge Analytics
on:
workflow_dispatch:
schedule:
- cron: '30 1 * * *'
jobs:
collect_analytics:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
- name: Install dependencies
working-directory: ./scripts
run: npm install
- name: Gather report data
working-directory: ./scripts
run: npm run extract
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Run reports
working-directory: ./scripts
run: npm run reports
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set current date as env variable
run: echo "NOW=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
- name: Commit files
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git add * || true
git commit -a -m "Data Updated ${{ env.NOW }}" || true
- name: Push changes
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
branch: ${{ github.ref }}
copy_data:
needs: collect_analytics
runs-on: ubuntu-latest
steps:
- name: Checkout source branch
uses: actions/checkout@v4
with:
ref: ${{ github.ref }}
- name: Configure Git
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
- name: Fetch all branches
run: git fetch --all
- name: Checkout gh-pages branch
run: git checkout gh-pages
- name: Merge latest from Source branch into gh-pages
run: |
git merge origin/Source --allow-unrelated-histories -X theirs --no-edit
- name: Copy homebridge_plugins.json to docs directory
run: cp homebridge_plugins.json docs/
- name: Commit and push changes
run: |
git add docs/homebridge_plugins.json
git commit -m "Update homebridge_plugins.json in docs directory"
git push origin gh-pages --force
update_vue_application:
needs: copy_data
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
- name: Install dependencies
working-directory: ./vue-data-analyzer
run: npm install
# broke...
# - name: deploy vue application
# working-directory: ./vue-data-analyzer
# run: npm run deploy