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: Don't rely on internal APIs to work around add_section("default") bug Created June 26, 2015, 1:37 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.read(getMetadataPath(baseDir, type))
25 return parser
24 26
25 def getBuildNum(baseDir): 27 def getBuildNum(baseDir):
26 try: 28 try:
27 from buildtools.ensure_dependencies import Mercurial, Git 29 from buildtools.ensure_dependencies import Mercurial, Git
28 if Mercurial().istype(baseDir): 30 if Mercurial().istype(baseDir):
29 result = subprocess.check_output(['hg', 'id', '-R', baseDir, '-n']) 31 result = subprocess.check_output(['hg', 'id', '-R', baseDir, '-n'])
30 return re.sub(r'\D', '', result) 32 return re.sub(r'\D', '', result)
31 elif Git().istype(baseDir): 33 elif Git().istype(baseDir):
32 result = subprocess.check_output(['git', 'rev-list', 'HEAD'], cwd=baseDir) 34 result = subprocess.check_output(['git', 'rev-list', 'HEAD'], cwd=baseDir)
33 return len(result.splitlines()) 35 return len(result.splitlines())
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 names = self.keys() 125 names = self.keys()
124 names.sort(key=sortKey) 126 names.sort(key=sortKey)
125 for name in names: 127 for name in names:
126 zip.writestr(name, self[name]) 128 zip.writestr(name, self[name])
127 zip.close() 129 zip.close()
128 130
129 def zipToString(self, sortKey=None): 131 def zipToString(self, sortKey=None):
130 buffer = StringIO() 132 buffer = StringIO()
131 self.zip(buffer, sortKey=sortKey) 133 self.zip(buffer, sortKey=sortKey)
132 return buffer.getvalue() 134 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