| Index: sitescripts/extensions/bin/createNightlies.py |
| =================================================================== |
| --- a/sitescripts/extensions/bin/createNightlies.py |
| +++ b/sitescripts/extensions/bin/createNightlies.py |
| @@ -26,12 +26,12 @@ |
| """ |
| import sys, os, os.path, codecs, subprocess, ConfigParser, traceback, json, hashlib |
| -import tempfile, re, shutil, urlparse, pipes, time, urllib2, struct |
| +import tempfile, shutil, urlparse, pipes, time, urllib2, struct |
| from datetime import datetime |
| from urllib import urlencode |
| from xml.dom.minidom import parse as parseXml |
| from sitescripts.utils import get_config, setupStderr, get_template |
| -from sitescripts.extensions.utils import compareVersions, Configuration |
| +from sitescripts.extensions.utils import compareVersions, Configuration, getSafariCertificateID |
| MAX_BUILDS = 50 |
| @@ -176,28 +176,10 @@ |
| self.compat.append({'id': 'chrome', 'minVersion': metadata.get('compat', 'chrome')}) |
| def readSafariMetadata(self): |
| - # get the certificate ID from the developer certificate's common name |
| - import M2Crypto |
| - bio = M2Crypto.BIO.openfile(self.config.keyFile) |
| - try: |
| - while not hasattr(self, 'certificateID'): |
| - try: |
| - cert = M2Crypto.X509.load_cert_bio(bio) |
| - except M2Crypto.X509.X509Error: |
| - raise Exception('No safari developer certificate found in chain') |
| - |
| - subject = cert.get_subject() |
| - for entry in subject.get_entries_by_nid(subject.nid['CN']): |
| - m = re.match(r'Safari Developer: \((.*?)\)', entry.get_data().as_text()) |
| - if m: |
| - self.certificateID = m.group(1) |
| - break |
| - finally: |
| - bio.close() |
| - |
| - # read metadata file |
| import buildtools.packagerSafari as packager |
| metadata = packager.readMetadata(self.tempdir, self.config.type) |
| + |
| + self.certificateID = getSafariCertificateID(self.config.keyFile) |
| self.version = packager.getBuildVersion(self.tempdir, metadata, False, self.revision) |
| self.shortVersion = metadata.get("general", "version") |
| self.basename = metadata.get("general", "basename") |