name: Create Release
on:
  workflow_dispatch:
  schedule:
    - cron: "0 9 * * *"

jobs:
  create_release:
    name: Create Release
    runs-on: ubuntu-latest
    outputs:
      new_tag: ${{ steps.tag_version.outputs.new_tag }}
    steps:
      - uses: actions/checkout@v4

      - name: Bump version and push tag
        id: tag_version
        uses: mathieudutour/github-tag-action@v6.2
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          default_bump: minor

      - name: Create a GitHub release
        uses: ncipollo/release-action@v1
        with:
          tag: ${{ steps.tag_version.outputs.new_tag }}
          name: ${{ steps.tag_version.outputs.new_tag }}
          body: ${{ steps.tag_version.outputs.changelog }}
          generateReleaseNotes: true

  create_docker:
    name: Create Docker Image
    needs: create_release
    uses: luketainton/roboluke-tasks/.github/workflows/docker_publish.yml@main
    with:
      release: ${{ needs.create_release.outputs.new_tag }}