# This config is automatically deployed by cloudbuild/deploy_cron_jobs.sh.
#
# To manually deploy this config, run:
#   gcloud app deploy --project flutter-dashboard cron.yaml
cron:
- description: retrieve missing commits
  url: /api/vacuum-github-commits
  schedule: every 10 minutes

# Disabled for https://github.com/flutter/flutter/issues/121989
# TODO(keyonghan): will delete if `In Progress` hanging issue is resolved:
# https://github.com/flutter/flutter/issues/120395#issuecomment-1444810718
#- description: vacuum stale tasks
#  url: /api/scheduler/vacuum-stale-tasks
#  schedule: every 10 minutes

- description: backfills builds
  url: /api/scheduler/batch-backfiller
  schedule: every 5 minutes

- description: sends build status to GitHub to annotate flutter PRs and commits
  url: /api/push-build-status-to-github?repo=flutter/flutter
  schedule: every 1 minutes

- description: sends pr-specific gold status to GitHub to annotate flutter and engine PRs and commits
  url: /api/push-gold-status-to-github
  schedule: every 5 minutes

- description: sends build status to GitHub to annotate engine PRs and commits
  url: /api/push-build-status-to-github?repo=flutter/engine
  schedule: every 2 minutes

- description: push github rate limit history to bigquery
  url: /api/public/github-rate-limit-status
  schedule: every 1 minutes

- description: detect and flag tests with high flaky rates
  url: /api/file_flaky_issue_and_pr?threshold=0.02
  schedule: every wednesday 16:00

- description: update existing flake issues with latest statistics
  url: /api/update_existing_flaky_issues?threshold=0.02
  schedule: every wednesday 16:10

- description: check flaky builders to either deflake the builder or file a new flaky bug
  url: /api/check_flaky_builders
  schedule: every wednesday 16:20

- description: update branches to reflect most recent commit activity
  url: '/api/update-branches'
  schedule: every wednesday 19:00

- description: check pull request in auto submit bot
  url: /check-pull-request
  target: auto-submit
  schedule: every 1 minutes

- description: check revert review issues for closed issues to update in our database
  url: '/api/update-revert-issues'
  target: auto-submit
  schedule: every 24 hours
