Bug 1408484: Sign release partials with SHA384 when requested.
MozReview-Commit-ID: DZkV4hQzCyG
--- a/lib/python/build/l10n.py
+++ b/lib/python/build/l10n.py
@@ -100,17 +100,18 @@ def l10nRepackPrep(sourceRepoName, objdi
env=env)
def repackLocale(locale, l10nRepoDir, l10nBaseRepo, revision, localeSrcDir,
l10nIni, compareLocalesRepo, env, absObjdir, merge=True,
productName=None, platform=None,
version=None, partialUpdates=None,
buildNumber=None, stageServer=None,
- mozillaDir=None, mozillaSrcDir=None):
+ mozillaDir=None, mozillaSrcDir=None,
+ marSignatureFormat='mar'):
repo = "/".join([l10nBaseRepo, locale])
localeDir = path.join(l10nRepoDir, locale)
mercurial(repo, localeDir)
update(localeDir, revision=revision)
# It's a bad assumption to make, but the source dir is currently always
# one level above the objdir.
absSourceRepoPath = path.split(absObjdir)[0]
@@ -207,18 +208,18 @@ def repackLocale(locale, l10nRepoDir, l1
run_cmd(['mkdir', previous])
run_cmd(
['perl', unwrap_full_update, '%s/%s' % (prevMarDir, prevMar)],
cwd=path.join(nativeDistDir, 'previous'), env=env)
run_cmd(['bash', make_incremental_update, partial_mar, previous,
current], cwd=nativeDistDir, env=env)
if os.environ.get('MOZ_SIGN_CMD'):
run_cmd(['bash', '-c',
- '%s -f mar "%s"' %
- (os.environ['MOZ_SIGN_CMD'], partial_mar)],
+ '%s -f %s "%s"' %
+ (os.environ['MOZ_SIGN_CMD'], marSignatureFormat, partial_mar)],
env=env)
UPLOAD_EXTRA_FILES.append(
'%s/%s.asc' % (updateDir, partial_mar_name))
else:
log.warning(
"Skipping partial MAR creation for %s %s" % (oldVersion,
locale))
--- a/scripts/l10n/create-release-repacks.py
+++ b/scripts/l10n/create-release-repacks.py
@@ -41,17 +41,18 @@ def createRepacks(sourceRepo, revision,
mozconfigPath, srcMozconfigPath, objdir, makeDirs, appName,
locales, product, version, buildNumber,
stageServer, stageUsername, stageSshKey, ftpServer,
compareLocalesRepo, merge, platform, brand, appVersion,
generatePartials=False, partialUpdates=None,
usePymake=False, tooltoolManifest=None,
tooltool_script=None, tooltool_urls=None,
balrog_submitter=None, balrog_hash="sha512",
- mozillaDir=None, mozillaSrcDir=None, bucket_prefix=None):
+ mozillaDir=None, mozillaSrcDir=None, bucket_prefix=None,
+ marSignatureFormat='mar'):
buildid = retry(getBuildID, args=(platform, product, version,
buildNumber, 'candidates', ftpServer))
log.info('Got buildid: %s' % buildid)
sourceRepoName = path.split(sourceRepo)[-1]
absObjdir = path.abspath(path.join(sourceRepoName, objdir))
localeSrcDir = path.join(absObjdir, appName, "locales")
# Even on Windows we need to use "/" as a separator for this because
# compare-locales doesn"t work any other way
@@ -134,17 +135,18 @@ def createRepacks(sourceRepo, revision,
checksums_file = repackLocale(locale=l, l10nRepoDir=l10nRepoDir,
l10nBaseRepo=l10nBaseRepo, revision=revision,
localeSrcDir=localeSrcDir, l10nIni=l10nIni,
compareLocalesRepo=compareLocalesRepo, env=env,
absObjdir=absObjdir, merge=merge,
productName=product, platform=platform,
version=version, partialUpdates=partialUpdates,
buildNumber=buildNumber, stageServer=ftpServer,
- mozillaDir=mozillaDir, mozillaSrcDir=mozillaSrcDir)
+ mozillaDir=mozillaDir, mozillaSrcDir=mozillaSrcDir,
+ marSignatureFormat=marSignatureFormat)
if balrog_submitter:
# TODO: partials, after bug 797033 is fixed
checksums = parseChecksumsFile(open(checksums_file).read())
completeInfo = []
partialInfo = []
for f, info in checksums.iteritems():
if f.endswith('.complete.mar'):
@@ -377,9 +379,10 @@ if __name__ == "__main__":
usePymake=options.use_pymake,
tooltoolManifest=options.tooltool_manifest,
tooltool_script=options.tooltool_script,
tooltool_urls=options.tooltool_urls,
balrog_submitter=balrog_submitter,
mozillaDir=mozillaDir,
mozillaSrcDir=mozillaSrcDir,
bucket_prefix=branchConfig['bucket_prefix'],
+ marSignatureFormat=releaseConfig.get('marSignatureFormat', 'mar')
)