name: Weather Alerts on: schedule: - cron: '0 * * * *' # Every hour at :00 workflow_dispatch: {} # Manual trigger jobs: check-weather: runs-on: ubuntu-latest steps: - name: Install Python run: | apt-get update apt-get install -y python3 python3-pip python3-venv git - name: Checkout repository env: GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }} SERVER_URL: ${{ github.server_url }} REPOSITORY: ${{ github.repository }} run: | SERVER_HOST="${SERVER_URL#https://}" SERVER_HOST="${SERVER_HOST#http://}" git clone --depth 1 "https://oauth2:${GITEA_TOKEN}@${SERVER_HOST}/${REPOSITORY}.git" . git config user.name "Gitea Actions" git config user.email "actions@gitea.local" - name: Install dependencies run: pip install --break-system-packages -r requirements.txt - name: Run weather alerts env: VISUALCROSSING_API_KEY: ${{ secrets.VISUALCROSSING_API_KEY }} NTFY_ACCESS_TOKEN: ${{ secrets.NTFY_ACCESS_TOKEN }} run: python3 -m app.main - name: Commit state changes run: | git add data/state.json git diff --staged --quiet || git commit -m "chore: update weather alert state [skip ci]" git push