name: "time-to-k8s benchmark"
on:
  workflow_dispatch:
  release:
    types: [released]
env:
  GOPROXY: https://proxy.golang.org
  GO_VERSION: '1.20.6'
permissions:
  contents: read

jobs:
  benchmark:
    runs-on: ubuntu-20.04
    steps:
      - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9
      - name: Checkout submodules
        run: git submodule update --init
      - uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753
        with:
          go-version: ${{env.GO_VERSION}}
          cache-dependency-path: ./go.sum
      - name: time-to-k8s Benchmark
        id: timeToK8sBenchmark
        run: |
          ./hack/benchmark/time-to-k8s/time-to-k8s.sh
          echo "version=$(minikube version --short)" >> $GITHUB_OUTPUT
      - name: Create PR
        uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
        with:
          token: ${{ secrets.MINIKUBE_BOT_PAT }}
          commit-message: add time-to-k8s benchmark for ${{ steps.timeToK8sBenchmark.outputs.version }}
          committer: minikube-bot <minikube-bot@google.com>
          author: minikube-bot <minikube-bot@google.com>
          branch: addTimeToK8s${{ steps.timeToK8sBenchmark.outputs.version }}
          branch-suffix: short-commit-hash
          push-to-fork: minikube-bot/minikube
          base: master
          delete-branch: true
          title: Add time-to-k8s benchmark for ${{ steps.timeToK8sBenchmark.outputs.version }}
          body: Updating time-to-k8s benchmark as part of the release process
