Skip to content

Generate Stats Images #1427

Generate Stats Images

Generate Stats Images #1427

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: Generate Stats Images
# Controls when the action will run. Triggers the workflow on push events
on:
push:
branches: [ main ]
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in
# parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Sequence of tasks that will be executed as part of the job
steps:
# Checks-out repository under $GITHUB_WORKSPACE, so the job can access it
- uses: actions/checkout@v4
# Run using Python 3.8 for consistency and aiohttp
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'
architecture: 'x64'
# Cache dependencies. From:
# https://github.com/actions/cache/blob/master/examples.md#python---pip
- uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
# Install dependencies with `pip`
- name: Install requirements
run: |
python3 -m pip install --upgrade pip setuptools wheel
python3 -m pip install -r requirements.txt
# Generate all statistics images
- name: Generate images
run: |
python3 --version
python3 generate_images.py
env:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
EXCLUDED: ${{ secrets.EXCLUDED }}
EXCLUDED_LANGS: ${{ secrets.EXCLUDED_LANGS }}
COUNT_STATS_FROM_FORKS: ${{ secrets.COUNT_STATS_FROM_FORKS }}
# Commits all changed files to the repository
- name: Commit to the output branch of repo
run: |
git config --global user.name "github-stats[bot]"
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
git commit -m 'temp commit' || echo
git checkout output 2>/dev/null || git checkout --orphan output && git rm -rf . && git checkout main -- generated/
# "echo" returns true so the build succeeds, even if no changed files
git commit -m 'Update generated files' || echo
git push origin output -f