Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(672)

Side by Side Diff: gcl.py

Issue 507072: Factor out PathDifference into gclient_utils for a later reuse. (Closed)
Patch Set: Created 11 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | gclient_utils.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Wrapper script around Rietveld's upload.py that groups files into 6 """Wrapper script around Rietveld's upload.py that groups files into
7 changelists.""" 7 changelists."""
8 8
9 import getpass 9 import getpass
10 import os 10 import os
(...skipping 801 matching lines...) Expand 10 before | Expand all | Expand 10 after
812 812
813 def TryChange(change_info, args, swallow_exception): 813 def TryChange(change_info, args, swallow_exception):
814 """Create a diff file of change_info and send it to the try server.""" 814 """Create a diff file of change_info and send it to the try server."""
815 try: 815 try:
816 import trychange 816 import trychange
817 except ImportError: 817 except ImportError:
818 if swallow_exception: 818 if swallow_exception:
819 return 819 return
820 ErrorExit("You need to install trychange.py to use the try server.") 820 ErrorExit("You need to install trychange.py to use the try server.")
821 821
822 def PathDifference(root, subpath):
823 """Returns the difference subpath minus root."""
824 root = os.path.realpath(root)
825 subpath = os.path.realpath(subpath)
826 if not subpath.startswith(root):
827 return None
828 # If the root does not have a trailing \ or /, we add it so the returned
829 # path starts immediately after the seperator regardless of whether it is
830 # provided.
831 root = os.path.join(root, '')
832 return subpath[len(root):]
833
834 trychange_args = [] 822 trychange_args = []
835 settings = { 823 settings = {
836 'port': GetCodeReviewSetting('TRYSERVER_HTTP_PORT'), 824 'port': GetCodeReviewSetting('TRYSERVER_HTTP_PORT'),
837 'host': GetCodeReviewSetting('TRYSERVER_HTTP_HOST'), 825 'host': GetCodeReviewSetting('TRYSERVER_HTTP_HOST'),
838 'svn_repo': GetCodeReviewSetting('TRYSERVER_SVN_URL'), 826 'svn_repo': GetCodeReviewSetting('TRYSERVER_SVN_URL'),
839 'project': GetCodeReviewSetting('TRYSERVER_PROJECT'), 827 'project': GetCodeReviewSetting('TRYSERVER_PROJECT'),
840 'root': GetCodeReviewSetting('TRYSERVER_ROOT'), 828 'root': GetCodeReviewSetting('TRYSERVER_ROOT'),
841 'patchlevel': GetCodeReviewSetting('TRYSERVER_PATCHLEVEL'), 829 'patchlevel': GetCodeReviewSetting('TRYSERVER_PATCHLEVEL'),
842 } 830 }
843 for (k, v) in settings.iteritems(): 831 for (k, v) in settings.iteritems():
844 if v: 832 if v:
845 trychange_args.extend(['--' + k, v]) 833 trychange_args.extend(['--' + k, v])
846 834
847 gclient_root = gclient_utils.FindGclientRoot(GetRepositoryRoot()) 835 gclient_root = gclient_utils.FindGclientRoot(GetRepositoryRoot())
848 if gclient_root: 836 if gclient_root:
849 trychange_args.extend(['--root', PathDifference(gclient_root, 837 trychange_args.extend(['--root',
850 GetRepositoryRoot())]) 838 gclient_utils.PathDifference(gclient_root,
839 GetRepositoryRoot())])
851 if change_info: 840 if change_info:
852 trychange_args.extend(['--name', change_info.name]) 841 trychange_args.extend(['--name', change_info.name])
853 if change_info.issue: 842 if change_info.issue:
854 trychange_args.extend(["--issue", str(change_info.issue)]) 843 trychange_args.extend(["--issue", str(change_info.issue)])
855 if change_info.patchset: 844 if change_info.patchset:
856 trychange_args.extend(["--patchset", str(change_info.patchset)]) 845 trychange_args.extend(["--patchset", str(change_info.patchset)])
857 trychange_args.extend(args) 846 trychange_args.extend(args)
858 file_list = change_info.GetFileNames() 847 file_list = change_info.GetFileNames()
859 else: 848 else:
860 trychange_args.extend(args) 849 trychange_args.extend(args)
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
1229 return 0 1218 return 0
1230 args =["svn", command] 1219 args =["svn", command]
1231 root = GetRepositoryRoot() 1220 root = GetRepositoryRoot()
1232 args.extend([os.path.join(root, x) for x in change_info.GetFileNames()]) 1221 args.extend([os.path.join(root, x) for x in change_info.GetFileNames()])
1233 RunShell(args, True) 1222 RunShell(args, True)
1234 return 0 1223 return 0
1235 1224
1236 1225
1237 if __name__ == "__main__": 1226 if __name__ == "__main__":
1238 sys.exit(main()) 1227 sys.exit(main())
OLDNEW
« no previous file with comments | « no previous file | gclient_utils.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698