# Copyright 2022 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import os
import subprocess


def depot_tools_version():
  depot_tools_root = os.path.dirname(os.path.abspath(__file__))
  try:
    commit_hash = subprocess.check_output(['git', 'rev-parse', 'HEAD'],
                                          cwd=depot_tools_root).decode(
                                              'utf-8', 'ignore')
    return 'git-%s' % commit_hash
  except Exception:
    pass

  # git check failed, let's check last modification of frequently checked file
  try:
    mtime = os.path.getmtime(
        os.path.join(depot_tools_root, 'infra', 'config', 'recipes.cfg'))
    return 'recipes.cfg-%d' % (mtime)
  except Exception:
    return 'unknown'