def main()

in report/generate_report.py [0:0]


def main(args=None):
  if args is None:
    args = sys.argv[1:]

  parser = argparse.ArgumentParser(description="Bazel Bench Daily Report")
  parser.add_argument("--date", type=str, help="Date in YYYY-mm-dd format.")
  parser.add_argument(
      "--project",
      action="append",
      help=(
          "Projects to generate report for. Use the storage_subdir defined "
          "in the main bazel-bench script in bazelbuild/continuous-integration."
      ),
  )
  parser.add_argument(
      "--storage_bucket",
      help="The GCP Storage bucket to fetch benchmark data from/upload the reports to."
  )
  parser.add_argument(
      "--upload_report",
      type=bool,
      default=False,
      help="Whether to upload the report.")
  parser.add_argument(
      "--bigquery_table",
      help="The BigQuery table to fetch data from. In the format: project:table_identifier."
  )
  parser.add_argument(
      "--report_name",
      type=str,
      help="The name of the generated report.",
      default="report")
  parsed_args = parser.parse_args(args)

  date = (
      datetime.datetime.strptime(parsed_args.date, "%Y-%m-%d").date()
      if parsed_args.date else datetime.date.today())

  bq_project, bq_table = parsed_args.bigquery_table.split(":")
  for project in parsed_args.project:
    _generate_report_for_date(project, date, parsed_args.storage_bucket,
                              parsed_args.report_name,
                              parsed_args.upload_report, bq_project, bq_table)