Skip to content

Latest commit

 

History

History
 
 

workflows

Folders and files

# This workflow generates READMEs for all languages

name: Ronbun

permissions:
  contents: write
  pull-requests: write

on: 
  push:
    branches:
      - 'main'
    paths:
      - 'archive/**'
      - '.glotter.yml'
      - 'repo-config.yml'
      - '.github/workflows/readme.yml'
      - 'pyproject.toml'
      - 'poetry.lock'

jobs:
  readme:
    name: "README Generation"

    runs-on: ubuntu-latest
    steps:
    - uses: actions/create-github-app-token@v2
      id: generate-token
      with:
        app-id: ${{ secrets.README_BOT_APP_ID }}
        private-key: ${{ secrets.README_BOT_PRIVATE_KEY }}

    - uses: actions/checkout@v6

    - name: Read repo config
      uses: pietrobolcato/[email protected]
      id: repo-config
      with:
        config: repo-config.yml

    - name: Set up Python
      uses: actions/setup-python@v6
      with:
        python-version: "${{ steps.repo-config.outputs['python-version'] }}"

    - name: Run Poetry Image
      uses: abatilo/actions-poetry@v4
      with:
        poetry-version: "${{ steps.repo-config.outputs['poetry-version'] }}"
        
    - name: Install Dependencies
      run: poetry install
        
    - name: Generate READMEs
      run: poetry run ronbun . --log=INFO
        
    - name: Create Pull Request
      id: cpr
      uses: peter-evans/create-pull-request@v8
      with:
        commit-message: Regenerated READMEs
        author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
        branch: readme-generation
        delete-branch: true
        title: '[Automated Workflow] Add/Modify READMEs'
        labels: enhancement
        token: ${{ steps.generate-token.outputs.token }}

    - name: Enable Pull Request Automerge
      if: steps.cpr.outputs.pull-request-operation == 'created'
      uses: peter-evans/enable-pull-request-automerge@v3
      with:
        pull-request-number: ${{ steps.cpr.outputs.pull-request-number }}
        merge-method: squash
        token: ${{ steps.generate-token.outputs.token }}