| Index: tools/release/releases.py
|
| diff --git a/tools/release/releases.py b/tools/release/releases.py
|
| index 5084aa6d0c6bc31a5b1a9a8160814d3249387d5c..a92af331046a168a1ec928ab101051d5050ffe98 100755
|
| --- a/tools/release/releases.py
|
| +++ b/tools/release/releases.py
|
| @@ -444,6 +444,10 @@ class WriteOutput(Step):
|
| MESSAGE = "Print output."
|
|
|
| def Run(self):
|
| +
|
| + output = {'releases':self['releases'],
|
| + 'chrome_releases':self['chrome_releases']}
|
| +
|
| if self._options.csv:
|
| with open(self._options.csv, "w") as f:
|
| writer = csv.DictWriter(f,
|
| @@ -455,9 +459,9 @@ class WriteOutput(Step):
|
| writer.writerow(release)
|
| if self._options.json:
|
| with open(self._options.json, "w") as f:
|
| - f.write(json.dumps(self["releases"]))
|
| + f.write(json.dumps(output))
|
| if not self._options.csv and not self._options.json:
|
| - print self["releases"] # pragma: no cover
|
| + print output # pragma: no cover
|
|
|
|
|
| class Releases(ScriptsBase):
|
| @@ -486,16 +490,44 @@ class Releases(ScriptsBase):
|
| }
|
|
|
| def _Steps(self):
|
| +
|
| return [
|
| Preparation,
|
| RetrieveV8Releases,
|
| UpdateChromiumCheckout,
|
| RetrieveChromiumV8Releases,
|
| RietrieveChromiumBranches,
|
| + RetrieveInformationOnCanary,
|
| CleanUp,
|
| - WriteOutput,
|
| + WriteOutput
|
| ]
|
|
|
|
|
| +class RetrieveInformationOnCanary(Step):
|
| + MESSAGE = 'Retrieves relevant information on the latest Chrome Canary'
|
| +
|
| + def Run(self):
|
| +
|
| + params = None
|
| + resultRaw = self.ReadURL('http://omahaproxy.appspot.com/all.json', params, wait_plan=[5, 20])
|
| + recentReleases = json.loads(resultRaw)
|
| + print recentReleases
|
| +
|
| + allCanaries = []
|
| +
|
| + for currentOS in recentReleases:
|
| + for currentVersion in currentOS['versions']:
|
| + currentCandidate = {'version':currentVersion['version'],
|
| + 'os':currentVersion['os'],
|
| + 'release_date': currentVersion['current_reldate'],
|
| + 'v8_version':currentVersion['v8_version']}
|
| +
|
| + if currentVersion['channel'] == 'canary':
|
| + allCanaries.append(currentCandidate)
|
| +
|
| + chromeReleases = {'canaries':allCanaries}
|
| + self['chrome_releases'] = chromeReleases
|
| +
|
| +
|
| if __name__ == "__main__": # pragma: no cover
|
| sys.exit(Releases().Run())
|
|
|