name: badges
on:
  schedule:
    - cron: '0 * * * *'
  workflow_dispatch:

env:
  BASE_IMAGE: openpilot-base
  DOCKER_REGISTRY: ghcr.io/commaai
  RUN: docker run --shm-size 2G -v $PWD:/tmp/openpilot -w /tmp/openpilot -e PYTHONPATH=/tmp/openpilot -e NUM_JOBS -e JOB_ID -e GITHUB_ACTION -e GITHUB_REF -e GITHUB_HEAD_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_RUN_ID -v $GITHUB_WORKSPACE/.ci_cache/scons_cache:/tmp/scons_cache -v $GITHUB_WORKSPACE/.ci_cache/comma_download_cache:/tmp/comma_download_cache -v $GITHUB_WORKSPACE/.ci_cache/openpilot_cache:/tmp/openpilot_cache $DOCKER_REGISTRY/$BASE_IMAGE:latest /bin/bash -c

jobs:
  badges:
    name: create badges
    runs-on: ubuntu-latest
    if: github.repository == 'commaai/openpilot'
    permissions:
      contents: write
    steps:
    - uses: actions/checkout@v4
      with:
        submodules: true
    - uses: ./.github/workflows/setup-with-retry
    - name: Push badges
      run: |
        ${{ env.RUN }} "python3 selfdrive/ui/translations/create_badges.py"

        rm .gitattributes

        git checkout --orphan badges
        git rm -rf --cached .
        git config user.email "badge-researcher@comma.ai"
        git config user.name "Badge Researcher"

        git add translation_badge.svg
        git commit -m "Add/Update badges"
        git push -f origin HEAD
