Skip to content

Logo Rotation PR Bot #68

Logo Rotation PR Bot

Logo Rotation PR Bot #68

name: Logo Rotation PR Bot
on:
schedule:
- cron: "17 3 * * *"
workflow_dispatch:
inputs:
date:
description: "Optional YYYY-MM-DD date override for testing"
required: false
type: string
jobs:
rotate-website:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.13"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r .github/logo-bot/requirements.txt
- name: Compute active logo and update config
id: logo
shell: bash
env:
INPUT_DATE: ${{ inputs.date }}
run: |
set -euo pipefail
args=(--target website)
if [[ -n "${INPUT_DATE}" ]]; then
args+=(--today "${INPUT_DATE}")
fi
python .github/logo-bot/update_logo.py "${args[@]}" --github-output "$GITHUB_OUTPUT"
- name: Create pull request
if: steps.logo.outputs.changed == 'true'
uses: peter-evans/create-pull-request@v7
with:
branch: ${{ steps.logo.outputs.branch }}
title: ${{ steps.logo.outputs.pr_title }}
commit-message: ${{ steps.logo.outputs.commit_message }}
body: |
Automated logo rotation update for **oggm.github.io**.
- Date: ${{ inputs.date || github.run_started_at }}
- Event: ${{ steps.logo.outputs.event_name }}
- Window: ${{ steps.logo.outputs.window }}
- New logo: ${{ steps.logo.outputs.desired_logo }}
- Event URL: ${{ steps.logo.outputs.event_url }}
- Previous logo: ${{ steps.logo.outputs.current_logo }}
- Previous event URL: ${{ steps.logo.outputs.current_event_url }}
This PR was generated by `.github/workflows/logo-rotation-pr.yml`.
add-paths: |
_config.yml
labels: |
automation
website
rotate-docs:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout this repo (for the script)
uses: actions/checkout@v6
- name: Checkout OGGM/oggm stable
uses: actions/checkout@v6
with:
repository: OGGM/oggm
ref: stable
token: ${{ secrets.CROSS_REPO_PAT }}
path: _target
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.13"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r .github/logo-bot/requirements.txt
- name: Compute active logo and update config
id: logo
shell: bash
env:
INPUT_DATE: ${{ inputs.date }}
run: |
set -euo pipefail
args=(--target docs --workdir _target)
if [[ -n "${INPUT_DATE}" ]]; then
args+=(--today "${INPUT_DATE}")
fi
python .github/logo-bot/update_logo.py "${args[@]}" --github-output "$GITHUB_OUTPUT"
- name: Create pull request
if: steps.logo.outputs.changed == 'true'
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.CROSS_REPO_PAT }}
path: _target
branch: ${{ steps.logo.outputs.branch }}
title: ${{ steps.logo.outputs.pr_title }}
commit-message: ${{ steps.logo.outputs.commit_message }}
body: |
Automated logo rotation update for **docs.oggm.org** (OGGM/oggm stable).
- Date: ${{ inputs.date || github.run_started_at }}
- Event: ${{ steps.logo.outputs.event_name }}
- Window: ${{ steps.logo.outputs.window }}
- New logo: ${{ steps.logo.outputs.desired_logo }}
- Event URL: ${{ steps.logo.outputs.event_url }}
- Previous logo: ${{ steps.logo.outputs.current_logo }}
This PR was generated by `OGGM/oggm.github.io/.github/workflows/logo-rotation-pr.yml`.
add-paths: |
docs/conf.py
labels: |
automation
rotate-tutorials:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout this repo (for the script)
uses: actions/checkout@v6
- name: Checkout OGGM/tutorials stable
uses: actions/checkout@v6
with:
repository: OGGM/tutorials
ref: stable
token: ${{ secrets.CROSS_REPO_PAT }}
path: _target
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.13"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r .github/logo-bot/requirements.txt
- name: Compute active logo and update config
id: logo
shell: bash
env:
INPUT_DATE: ${{ inputs.date }}
run: |
set -euo pipefail
args=(--target tutorials --workdir _target)
if [[ -n "${INPUT_DATE}" ]]; then
args+=(--today "${INPUT_DATE}")
fi
python .github/logo-bot/update_logo.py "${args[@]}" --github-output "$GITHUB_OUTPUT"
- name: Create pull request
if: steps.logo.outputs.changed == 'true'
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.CROSS_REPO_PAT }}
path: _target
branch: ${{ steps.logo.outputs.branch }}
title: ${{ steps.logo.outputs.pr_title }}
commit-message: ${{ steps.logo.outputs.commit_message }}
body: |
Automated logo rotation update for **OGGM/tutorials** (stable branch).
- Date: ${{ inputs.date || github.run_started_at }}
- Event: ${{ steps.logo.outputs.event_name }}
- Window: ${{ steps.logo.outputs.window }}
- New logo: ${{ steps.logo.outputs.desired_logo }}
- Event URL: ${{ steps.logo.outputs.event_url }}
- Previous logo: ${{ steps.logo.outputs.current_logo }}
This PR was generated by `OGGM/oggm.github.io/.github/workflows/logo-rotation-pr.yml`.
add-paths: |
_config.yml
labels: |
automation