-
-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
enhancementNew feature or requestNew feature or request
Description
we can make this metrics/.github/workflows
/get-cloudflare.yml code more enhance for better maintainability, clarity, and functionality
name: Fetch Cloudflare Data
on:
schedule:
# Run at 6:00 AM UTC daily
- cron: '0 6 * * *'
jobs:
fetch-cloudflare-data:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '16.x' # Use a more recent Node.js version if supported
- name: Install Dependencies
run: npm install
- name: Fetch Cloudflare Data
env:
CLOUDFLARE_ZONE_TAG: ${{ secrets.CLOUDFLARE_ZONE_TAG }}
CLOUDFLARE_EMAIL: ${{ secrets.CLOUDFLARE_EMAIL }}
CLOUDFLARE_API_KEY: ${{ secrets.CLOUDFLARE_API_KEY }}
run: npm run get-cloudflare
- name: Check for Changes
run: |
git status
if git diff --quiet; then
echo "No changes detected. Exiting..."
exit 0
fi
- name: Stage and Commit Changes
run: |
git config --local user.name "ocf-bot"
git config --local user.email "info@openclimatefix.org"
git add .
git commit -m "🗃 Add latest Cloudflare data"
- name: Fetch and Rebase Main
run: |
git fetch origin main
git pull --rebase origin main
- name: Push Changes to Main
run: git push origin HEAD:main
The key improvements in this code are :-
- Node.js Version: Updated to setup-node@v3 and a newer Node.js version for better support and security.
- Check for Changes: Prevents unnecessary commits if there are no changes.
- Rebase Workflow: Keeps the local branch in sync with main before pushing changes
This wil help in workflow is up-to-date, efficient, and avoids redundant commits and pushes.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request