name: Run-Hexagon

# This is the entry point for hexagon.yml for scheduled and workflow_dispatch events. 

on:
  schedule:
    # 10am UTC is 3am or 4am PT depending on daylight savings.
    - cron: '0 10 * * *'

  # Allow manually triggering of the workflow.
  workflow_dispatch: {}

jobs:
  call-hexagon:
    uses: ./.github/workflows/hexagon.yml
    if: |
      github.event_name == 'workflow_dispatch' ||
      (github.event_name == 'schedule' && github.repository == 'tensorflow/tflite-micro')
    with:
      trigger-sha: ${{ github.sha }}
    secrets:
      tflm-bot-token: ${{ secrets.TFLM_BOT_PACKAGE_READ_TOKEN }}

  issue-on-error:
    needs: [call-hexagon]
    if: ${{ always() && contains(needs.*.result, 'failure') }}
    uses: ./.github/workflows/issue_on_error.yml
    with:
      repo: ${{ github.repository }}
      workflow: ${{ github.workflow }}
      run_id: ${{ github.run_id }}
      run_number: ${{ github.run_number }}
      flag_label: ci:bot_issue
    secrets:
      token: ${{ secrets.GITHUB_TOKEN }}