Ensure google-format is downloaded when running PRESUBMIT

Bug: b/270105162
Change-Id: I08beef854c692521fee58f809b3d7e2f9be1f202
diff --git a/PRESUBMIT.py b/PRESUBMIT.py
index a329c0f..9b4bb2a 100644
--- a/PRESUBMIT.py
+++ b/PRESUBMIT.py
@@ -5,6 +5,10 @@
 from os import path
 import datetime
 from subprocess import check_output, Popen, PIPE, STDOUT
+import sys
+import inspect
+sys.path.append(path.dirname(inspect.getfile(lambda: None)))
+from tools.utils import EnsureDepFromGoogleCloudStorage
 
 FMT_CMD = path.join(
     'third_party',
@@ -16,7 +20,10 @@
     'google-java-format-diff.py')
 
 FMT_CMD_JDK17 = path.join('tools','google-java-format-diff.py')
-
+FMT_SHA1 = path.join(
+    'third_party', 'google', 'google-java-format', '1.14.0.tar.gz.sha1')
+FMT_TGZ = path.join(
+    'third_party', 'google', 'google-java-format', '1.14.0.tar.gz')
 
 def CheckDoNotMerge(input_api, output_api):
   for l in input_api.change.FullDescriptionText().splitlines():
@@ -26,6 +33,7 @@
   return []
 
 def CheckFormatting(input_api, output_api, branch):
+  EnsureDepFromGoogleCloudStorage(FMT_CMD, FMT_TGZ, FMT_SHA1, 'google-format')
   results = []
   for f in input_api.AffectedFiles():
     path = f.LocalPath()