Daily TIF Update #2
This file contains hidden or 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: Daily TIF Update | |
| on: | |
| schedule: | |
| # Every day at 02:17 UTC | |
| - cron: '17 02 * * *' | |
| workflow_dispatch: # allow manual trigger from Actions tab | |
| permissions: | |
| contents: write | |
| jobs: | |
| update-feeds: | |
| name: Check status & update README | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Set up Python 3.12 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.12' | |
| - name: Install dependencies | |
| run: pip install -r requirements.txt | |
| # Step 1: validate CSV before doing anything | |
| - name: Validate CSV | |
| working-directory: scripts | |
| run: python3 tif-validator.py | |
| # Step 2: check live HTTP status of every feed URL | |
| # writes/updates FeedStatus column in threat-intelligence-feeds.csv | |
| - name: Check feed statuses | |
| working-directory: scripts | |
| run: python3 tif-status-checker.py | |
| continue-on-error: true | |
| # Step 3: rebuild README-STATISTICS.md and inject tables into README.md | |
| # reads FeedStatus from CSV β shows π’/π΄/π/β/βͺ in the feeds table | |
| - name: Update README statistics and feeds table | |
| working-directory: scripts | |
| run: python3 tif-update-readme.py | |
| # Step 4: commit if anything changed (CSV statuses, README, StatisticsTable) | |
| - name: Commit and push changes | |
| run: | | |
| git config user.name "github-actions[bot]" | |
| git config user.email "github-actions[bot]@users.noreply.github.com" | |
| git add threat-intelligence-feeds.csv README-STATISTICS.md README.md | |
| git diff --cached --quiet \ | |
| && echo "No changes to commit." \ | |
| || git commit -m "Daily TI-feed status update [$(date -u '+%d-%m-%Y')]" | |
| git push |