Skip to content

GitJobhunter

GitJobhunter #26

Workflow file for this run

name: GitJobhunter
on:
workflow_dispatch: # Allow manual triggering
schedule:
- cron: '0 8 * * *' # Run daily at 8 AM UTC
push:
branches: [ main ]
pull_request:
branches: [ main ]
permissions:
contents: write
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Cache pip dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Run tests
run: |
python -m pytest tests/ -v --tb=short
- name: Run linting (optional)
run: |
python -m flake8 job_finder.py --max-line-length=120 --ignore=E203,W503 || true
find_jobs:
runs-on: ubuntu-latest
needs: test
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
permissions:
contents: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Cache pip dependencies
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Run job finder
env:
DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}
LOG_LEVEL: INFO
MAX_JOBS_PER_RUN: 25
run: python job_finder.py
- name: Commit and push changes
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: "chore: Update seen jobs list"
file_pattern: seen_jobs.json