Index: checkout.py |
diff --git a/checkout.py b/checkout.py |
index da2d86f73a9ab4a40f9371faf894f043d4f9e492..a303b338aca4d2b35ff0caea8c81f3536b8c39dd 100644 |
--- a/checkout.py |
+++ b/checkout.py |
@@ -22,13 +22,6 @@ import scm |
import subprocess2 |
-# Default timeout of 15 minutes. |
-GLOBAL_TIMEOUT = 15*60 |
-# Use a larger timeout for checkout since it can be a genuinely slower |
-# operation. |
-FETCH_TIMEOUT = 30*60 |
- |
- |
def get_code_review_setting(path, key, |
codereview_settings_file='codereview.settings'): |
"""Parses codereview.settings and return the value for the key if present. |
@@ -204,8 +197,7 @@ class RawCheckout(CheckoutBase): |
cmd, |
stdin=p.get(False), |
stderr=subprocess2.STDOUT, |
- cwd=self.project_path, |
- timeout=GLOBAL_TIMEOUT)) |
+ cwd=self.project_path)) |
elif p.is_new and not os.path.exists(filepath): |
# There is only a header. Just create the file. |
open(filepath, 'w').close() |
@@ -284,10 +276,8 @@ class SvnMixIn(object): |
"""Runs svn and throws an exception if the command failed.""" |
kwargs.setdefault('cwd', self.project_path) |
kwargs.setdefault('stdout', self.VOID) |
- kwargs.setdefault('timeout', GLOBAL_TIMEOUT) |
return subprocess2.check_call_out( |
- self._add_svn_flags(args, False), |
- **kwargs) |
+ self._add_svn_flags(args, False), **kwargs) |
def _check_output_svn(self, args, credentials=True, **kwargs): |
"""Runs svn and throws an exception if the command failed. |
@@ -298,7 +288,6 @@ class SvnMixIn(object): |
return subprocess2.check_output( |
self._add_svn_flags(args, True, credentials), |
stderr=subprocess2.STDOUT, |
- timeout=GLOBAL_TIMEOUT, |
**kwargs) |
@staticmethod |
@@ -398,10 +387,7 @@ class SvnCheckout(CheckoutBase, SvnMixIn): |
] |
stdout.append( |
subprocess2.check_output( |
- cmd, |
- stdin=p.get(False), |
- cwd=self.project_path, |
- timeout=GLOBAL_TIMEOUT)) |
+ cmd, stdin=p.get(False), cwd=self.project_path)) |
elif p.is_new and not os.path.exists(filepath): |
# There is only a header. Just create the file if it doesn't |
# exist. |
@@ -497,14 +483,11 @@ class SvnCheckout(CheckoutBase, SvnMixIn): |
logging.info( |
'Directory %s is not present, checking it out.' % self.project_path) |
self._check_call_svn( |
- ['checkout', self.svn_url, self.project_path] + flags, |
- cwd=None, |
- timeout=FETCH_TIMEOUT) |
+ ['checkout', self.svn_url, self.project_path] + flags, cwd=None) |
else: |
- # TODO(maruel): This command will shell out without a timeout. |
scm.SVN.Revert(self.project_path, no_ignore=True) |
# Revive files that were deleted in scm.SVN.Revert(). |
- self._check_call_svn(['update', '--force'] + flags, timeout=FETCH_TIMEOUT) |
+ self._check_call_svn(['update', '--force'] + flags) |
return self._get_revision() |
def _get_revision(self): |
@@ -554,7 +537,8 @@ class GitCheckoutBase(CheckoutBase): |
try: |
revision = self._check_output_git(['rev-parse', revision]) |
except subprocess.CalledProcessError: |
- self._fetch_remote() |
+ self._check_call_git( |
+ ['fetch', self.remote, self.remote_branch, '--quiet']) |
revision = self._check_output_git(['rev-parse', revision]) |
self._check_call_git(['checkout', '--force', '--quiet', revision]) |
else: |
@@ -665,23 +649,18 @@ class GitCheckoutBase(CheckoutBase): |
def _check_call_git(self, args, **kwargs): |
kwargs.setdefault('cwd', self.project_path) |
kwargs.setdefault('stdout', self.VOID) |
- kwargs.setdefault('timeout', GLOBAL_TIMEOUT) |
- return subprocess2.check_call_out( |
- ['git'] + args, **kwargs) |
+ return subprocess2.check_call_out(['git'] + args, **kwargs) |
def _call_git(self, args, **kwargs): |
"""Like check_call but doesn't throw on failure.""" |
kwargs.setdefault('cwd', self.project_path) |
kwargs.setdefault('stdout', self.VOID) |
- return subprocess2.call(['git'] + args, timeout=GLOBAL_TIMEOUT, **kwargs) |
+ return subprocess2.call(['git'] + args, **kwargs) |
def _check_output_git(self, args, **kwargs): |
kwargs.setdefault('cwd', self.project_path) |
return subprocess2.check_output( |
- ['git'] + args, |
- stderr=subprocess2.STDOUT, |
- timeout=GLOBAL_TIMEOUT, |
- **kwargs) |
+ ['git'] + args, stderr=subprocess2.STDOUT, **kwargs) |
def _branches(self): |
"""Returns the list of branches and the active one.""" |
@@ -716,9 +695,7 @@ class GitCheckout(GitCheckoutBase): |
"""Git checkout implementation.""" |
def _fetch_remote(self): |
# git fetch is always verbose even with -q -q so redirect its output. |
- self._check_call_git( |
- ['fetch', self.remote, self.remote_branch, '--quiet'], |
- timeout=FETCH_TIMEOUT) |
+ self._check_output_git(['fetch', self.remote, self.remote_branch]) |
class ReadOnlyCheckout(object): |