Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: packager.py

Issue 29319007: Issue 2711 - Refactored ChainedConfigParser, allowing manipulation of list items (Closed)
Patch Set: Addressed comments Created July 7, 2015, 3:18 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chainedconfigparser.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # coding: utf-8 1 # coding: utf-8
2 2
3 # This Source Code Form is subject to the terms of the Mozilla Public 3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this 4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
6 6
7 # Note: These are the base functions common to all packagers, the actual 7 # Note: These are the base functions common to all packagers, the actual
8 # packagers are implemented in packagerGecko and packagerChrome. 8 # packagers are implemented in packagerGecko and packagerChrome.
9 9
10 import sys, os, re, codecs, subprocess, json, zipfile 10 import sys, os, re, codecs, subprocess, json, zipfile
11 from StringIO import StringIO 11 from StringIO import StringIO
12 from chainedconfigparser import ChainedConfigParser 12 from chainedconfigparser import ChainedConfigParser
13 13
14 import buildtools 14 import buildtools
15 15
16 def getDefaultFileName(metadata, version, ext): 16 def getDefaultFileName(metadata, version, ext):
17 return '%s-%s.%s' % (metadata.get('general', 'basename'), version, ext) 17 return '%s-%s.%s' % (metadata.get('general', 'basename'), version, ext)
18 18
19 def getMetadataPath(baseDir, type): 19 def getMetadataPath(baseDir, type):
20 return os.path.join(baseDir, 'metadata.%s' % type) 20 return os.path.join(baseDir, 'metadata.%s' % type)
21 21
22 def readMetadata(baseDir, type): 22 def readMetadata(baseDir, type):
23 return ChainedConfigParser(getMetadataPath(baseDir, type)) 23 parser = ChainedConfigParser()
24 parser.optionxform = lambda option: option
25 parser.read(getMetadataPath(baseDir, type))
26 return parser
24 27
25 def getBuildNum(baseDir): 28 def getBuildNum(baseDir):
26 try: 29 try:
27 from buildtools.ensure_dependencies import Mercurial, Git 30 from buildtools.ensure_dependencies import Mercurial, Git
28 if Mercurial().istype(baseDir): 31 if Mercurial().istype(baseDir):
29 result = subprocess.check_output(['hg', 'id', '-R', baseDir, '-n']) 32 result = subprocess.check_output(['hg', 'id', '-R', baseDir, '-n'])
30 return re.sub(r'\D', '', result) 33 return re.sub(r'\D', '', result)
31 elif Git().istype(baseDir): 34 elif Git().istype(baseDir):
32 result = subprocess.check_output(['git', 'rev-list', 'HEAD'], cwd=baseDir) 35 result = subprocess.check_output(['git', 'rev-list', 'HEAD'], cwd=baseDir)
33 return len(result.splitlines()) 36 return len(result.splitlines())
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 names = self.keys() 126 names = self.keys()
124 names.sort(key=sortKey) 127 names.sort(key=sortKey)
125 for name in names: 128 for name in names:
126 zip.writestr(name, self[name]) 129 zip.writestr(name, self[name])
127 zip.close() 130 zip.close()
128 131
129 def zipToString(self, sortKey=None): 132 def zipToString(self, sortKey=None):
130 buffer = StringIO() 133 buffer = StringIO()
131 self.zip(buffer, sortKey=sortKey) 134 self.zip(buffer, sortKey=sortKey)
132 return buffer.getvalue() 135 return buffer.getvalue()
OLDNEW
« no previous file with comments | « chainedconfigparser.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld