# Workflow derived from https://github.com/r-lib/actions/tree/master/examples

on:
  release:
    types: [published]
  push:
    branches: [master, main]
    paths:
      - DESCRIPTION
      - inst/CITATION
  workflow_dispatch:

name: Update CITATION.cff

jobs:
  update-citation-cff:
    runs-on: macos-latest
    env:
      GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
    steps:
      - uses: actions/checkout@v4
      - uses: r-lib/actions/setup-r@v2
      - uses: r-lib/actions/setup-r-dependencies@v2
        with:
          extra-packages: |
            any::cffr
            any::V8

      - name: Update CITATION.cff
        run: |
          # Update CITATION.cff file
          cffr::cff_write(keys = list())
        shell: Rscript {0}
        
      - name: Commit results
        run: |
          git config --local user.name "$GITHUB_ACTOR"
          git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com"
          git add CITATION.cff
          git commit -m 'doc: update CITATION.cff' || echo "No changes to commit"
          git push origin || echo "No changes to commit"
