name: Docs

on:
  release:
    types: [published]

jobs:
  open-pr:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout docs repo
        uses: actions/checkout@v3
        with:
          token: ${{ secrets.GHPAT_DOCS_DISPATCH }}
          repository: docker/docker.github.io
          ref: master
      -
        name: Prepare
        run: |
          rm -rf ./_data/compose-cli/*
      -
        name: Build
        uses: docker/build-push-action@v3
        with:
          context: ${{ github.server_url }}/${{ github.repository }}.git#${{ github.event.release.name }}
          target: docs-reference
          outputs: ./_data/compose-cli
      -
        name: Update compose_version in _config.yml
        run: |
          sed -i "s|^compose_version\:.*|compose_version\: \"${{ github.event.release.name }}\"|g" _config.yml
          cat _config.yml | yq .compose_version
      -
        name: Commit changes
        run: |
          git add -A .
      -
        name: Create PR on docs repo
        uses: peter-evans/create-pull-request@923ad837f191474af6b1721408744feb989a4c27 # v4.0.4
        with:
          token: ${{ secrets.GHPAT_DOCS_DISPATCH }}
          push-to-fork: docker-tools-robot/docker.github.io
          commit-message: Update Compose reference API to ${{ github.event.release.name }}
          signoff: true
          branch: dispatch/compose-api-reference-${{ github.event.release.name }}
          delete-branch: true
          title: Update Compose reference API to ${{ github.event.release.name }}
          body: |
            Update the Compose reference API documentation to keep in sync with the latest release `${{ github.event.release.name }}`
          draft: false