def main()

in scripts/alerts/validate_alerts_format.py [0:0]


def main():
  path = sys.argv[1]
  # only run validation script on files added/changed in
  # alerts folder
  if os.path.dirname(os.path.dirname(path)) != "alerts":
    sys.exit()

  file_name = os.path.basename(path)
  file_name_parts = file_name.split(".")
  # metadata file added/changed would be checked for expected fields
  if file_name == "metadata.yaml":
    check_metadata_entries(path)

  # all json files added to alerts folder are implictly taken as alert policy jsons
  # and must follow expected file hierarchy and naming
  elif path.split(".")[-1] == "json":
    # checking if json file name is in the correct format
    check_json_file_name(path, file_name_parts)
    # check if file has entry in metadata.yaml
    check_json_in_metadata(path, file_name_parts[0], file_name_parts[1])
    # checking if json content is indeed an alert policy
    check_is_alert_policy_json(path)