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

Side by Side Diff: dart/editor/build/promote.py

Issue 11108021: Merge revision 13627 to trunk. (Closed) Base URL: http://dart.googlecode.com/svn/trunk/
Patch Set: Created 8 years, 2 months 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 | Annotate | Revision Log
« no previous file with comments | « dart/editor/build/build.py ('k') | dart/tools/VERSION » ('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/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 3 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
4 # for details. All rights reserved. Use of this source code is governed by a 4 # for details. All rights reserved. Use of this source code is governed by a
5 # BSD-style license that can be found in the LICENSE file. 5 # BSD-style license that can be found in the LICENSE file.
6 6
7 # Dart Editor promote and google storage cleanup tools. 7 # Dart Editor promote and google storage cleanup tools.
8 8
9 import gsutil 9 import gsutil
10 import optparse 10 import optparse
11 import os 11 import os
12 import subprocess 12 import subprocess
13 import sys 13 import sys
14 14
15 from os.path import join 15 from os.path import join
16 16
17 CONTINUOUS = 'gs://dart-editor-archive-continuous' 17 CONTINUOUS = 'gs://dart-editor-archive-continuous'
18 TRUNK = 'gs://dart-editor-archive-trunk'
18 TESTING = 'gs://dart-editor-archive-testing' 19 TESTING = 'gs://dart-editor-archive-testing'
19 INTEGRATION = 'gs://dart-editor-archive-integration' 20 INTEGRATION = 'gs://dart-editor-archive-integration'
20 RELEASE = 'gs://dart-editor-archive-release' 21 RELEASE = 'gs://dart-editor-archive-release'
21 22
22 DART_PATH = os.path.join('..', '..', '..', 'dart') 23 DART_PATH = os.path.join('..', '..', '..', 'dart')
23 24
24 def _BuildOptions(): 25 def _BuildOptions():
25 """Setup the argument processing for this program. 26 """Setup the argument processing for this program.
26 27
27 Returns: 28 Returns:
(...skipping 19 matching lines...) Expand all
47 48
48 promote revision 567 from integration to release 49 promote revision 567 from integration to release
49 python gsTool.py promote --integration --revision=567""" 50 python gsTool.py promote --integration --revision=567"""
50 51
51 52
52 result = optparse.OptionParser(usage=usage) 53 result = optparse.OptionParser(usage=usage)
53 result.set_default('gsbucketuri', 'gs://dart-editor-archive-continuous') 54 result.set_default('gsbucketuri', 'gs://dart-editor-archive-continuous')
54 result.set_default('keepcount', 1000) 55 result.set_default('keepcount', 1000)
55 result.set_default('dryrun', False) 56 result.set_default('dryrun', False)
56 result.set_default('continuous', False) 57 result.set_default('continuous', False)
58 result.set_default('trunk', False)
57 result.set_default('integration', False) 59 result.set_default('integration', False)
58 result.set_default('testing', False) 60 result.set_default('testing', False)
59 group = optparse.OptionGroup(result, 'Cleanup', 61 group = optparse.OptionGroup(result, 'Cleanup',
60 'options used to cleanup Google Storage') 62 'options used to cleanup Google Storage')
61 group.add_option('--keepcount', 63 group.add_option('--keepcount',
62 type='int', 64 type='int',
63 help='Numer of Builds to keep.', 65 help='Numer of Builds to keep.',
64 action='store') 66 action='store')
65 result.add_option_group(group) 67 result.add_option_group(group)
66 68
67 group = optparse.OptionGroup(result, 'Promote', 69 group = optparse.OptionGroup(result, 'Promote',
68 'options used to promote code') 70 'options used to promote code')
69 group.add_option('--revision', 71 group.add_option('--revision',
70 help='The svn revision to promote', 72 help='The svn revision to promote',
71 action='store') 73 action='store')
72 group.add_option('--continuous', 74 group.add_option('--continuous',
73 help='Promote from continuous', 75 help='Promote from continuous',
74 action='store_true') 76 action='store_true')
77 group.add_option('--trunk',
78 help='Promote from trunk',
79 action='store_true')
75 group.add_option('--integration', 80 group.add_option('--integration',
76 help='Promote from integration', 81 help='Promote from integration',
77 action='store_true') 82 action='store_true')
78 result.add_option_group(group) 83 result.add_option_group(group)
79 84
80 result.add_option('--gsbucketuri', 85 result.add_option('--gsbucketuri',
81 help='Dart Continuous Google Storage bucket URI.', 86 help='Dart Continuous Google Storage bucket URI.',
82 action='store') 87 action='store')
83 result.add_option('--gsutilloc', 88 result.add_option('--gsutilloc',
84 help='location of gsutil the program', 89 help='location of gsutil the program',
(...skipping 20 matching lines...) Expand all
105 print 'At least one command must be specified' 110 print 'At least one command must be specified'
106 parser.print_help() 111 parser.print_help()
107 sys.exit(1) 112 sys.exit(1)
108 113
109 if args[0] == 'promote': 114 if args[0] == 'promote':
110 command = 'promote' 115 command = 'promote'
111 if options.revision is None: 116 if options.revision is None:
112 print 'You must specify a --revision to specify which revision to promote' 117 print 'You must specify a --revision to specify which revision to promote'
113 parser.print_help() 118 parser.print_help()
114 sys.exit(3) 119 sys.exit(3)
115 if not (options.continuous or options.integration or options.testing): 120 if not (options.continuous or options.integration or
116 print 'You must specify one of --continuous or --integration or --testing' 121 options.testing or options.trunk):
122 print 'You must specify --continuous, --integration, --testing, or --trunk '
117 parser.print_help() 123 parser.print_help()
118 sys.exit(4) 124 sys.exit(4)
119 if options.continuous and options.integration: 125 if options.continuous and options.integration:
120 print 'continuous and integration can not be specified at the same time' 126 print 'continuous and integration can not be specified at the same time'
121 parser.print_help() 127 parser.print_help()
122 sys.exit(5) 128 sys.exit(5)
123 if (options.continuous or options.integration) and options.testing: 129 if (options.continuous or options.integration) and options.testing:
124 print """Warning --continuous or --integration and --testing are 130 print """Warning --continuous or --integration and --testing are
125 specified. The --testing flag will take precedence and all data will 131 specified. The --testing flag will take precedence and all data will
126 go to the testing bucket {0}""".format(TESTING) 132 go to the testing bucket {0}""".format(TESTING)
(...skipping 12 matching lines...) Expand all
139 145
140 if options.testing: 146 if options.testing:
141 bucket_from = CONTINUOUS 147 bucket_from = CONTINUOUS
142 bucket_to = TESTING 148 bucket_to = TESTING
143 print """The --testing attribute is specified. All data will go to the 149 print """The --testing attribute is specified. All data will go to the
144 testing bucket {0}. Press enter to continue""".format(TESTING) 150 testing bucket {0}. Press enter to continue""".format(TESTING)
145 raw_input('Press Enter to continue') 151 raw_input('Press Enter to continue')
146 elif options.continuous: 152 elif options.continuous:
147 bucket_from = CONTINUOUS 153 bucket_from = CONTINUOUS
148 bucket_to = INTEGRATION 154 bucket_to = INTEGRATION
155 elif options.trunk:
156 bucket_from = TRUNK
157 bucket_to = INTEGRATION
149 elif options.integration: 158 elif options.integration:
150 bucket_from = INTEGRATION 159 bucket_from = INTEGRATION
151 bucket_to = RELEASE 160 bucket_to = RELEASE
152 161
153 if command == 'cleanup': 162 if command == 'cleanup':
154 #if the testing flag is set remove the date from the testing bucket 163 #if the testing flag is set remove the date from the testing bucket
155 if options.testing: 164 if options.testing:
156 bucket = TESTING 165 bucket = TESTING
157 #otherwise use the value passed as --gsbucketuri 166 #otherwise use the value passed as --gsbucketuri
158 else: 167 else:
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 if directory is not None: 274 if directory is not None:
266 cwd = os.getcwd() 275 cwd = os.getcwd()
267 os.chdir(directory) 276 os.chdir(directory)
268 subprocess.call(cmd, env=os.environ) 277 subprocess.call(cmd, env=os.environ)
269 if directory is not None: 278 if directory is not None:
270 os.chdir(cwd) 279 os.chdir(cwd)
271 280
272 281
273 if __name__ == '__main__': 282 if __name__ == '__main__':
274 sys.exit(main()) 283 sys.exit(main())
OLDNEW
« no previous file with comments | « dart/editor/build/build.py ('k') | dart/tools/VERSION » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698