Update GeoJSON File #22
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Update GeoJSON File | |
on: | |
schedule: | |
- cron: '0 0 * * *' # Runs daily at midnight UTC | |
workflow_dispatch: # Allows manual triggering of the workflow | |
jobs: | |
fetch-and-update-geojson: | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Check out the repository | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 # Fetch the entire history to avoid issues with rebase | |
# Step 2: Download the GeoJSON files from Google Drive | |
- name: Download GeoJSON files | |
run: | | |
curl -L -o data/aba_alert.geojson "https://drive.google.com/uc?export=download&id=${{ secrets.GDRIVE_FILE_ID_ABA_ALERT }}" | |
curl -L -o data/life_needs_alert.geojson "https://drive.google.com/uc?export=download&id=${{ secrets.GDRIVE_FILE_ID_LIFE_NEEDS_ALERT }}" | |
curl -L -o data/year_needs_alert.geojson "https://drive.google.com/uc?export=download&id=${{ secrets.GDRIVE_FILE_ID_YEAR_NEEDS_ALERT }}" | |
# Step 3: Commit and force push changes | |
- name: Commit and force push changes | |
run: | | |
git config --global user.name "GitHub Actions" | |
git config --global user.email "actions@github.com" | |
# Reset the branch to match the remote to avoid rebase errors | |
git fetch origin | |
git reset --soft origin/main # Retain changes but synchronize with remote | |
# Add and commit the downloaded files | |
git add data/aba_alert.geojson data/life_needs_alert.geojson data/year_needs_alert.geojson | |
git commit -m "Update GeoJSON files from Google Drive" || echo "No changes to commit" | |
# Force push to overwrite remote | |
git push --force origin main |