--- a/python/mozbuild/mozbuild/artifacts.py
+++ b/python/mozbuild/mozbuild/artifacts.py
@@ -122,17 +122,18 @@ class ArtifactJob(object):
('bin/BadCertServer', ('bin', 'bin')),
('bin/GenerateOCSPResponse', ('bin', 'bin')),
('bin/OCSPStaplingServer', ('bin', 'bin')),
('bin/certutil', ('bin', 'bin')),
('bin/fileid', ('bin', 'bin')),
('bin/pk12util', ('bin', 'bin')),
('bin/ssltunnel', ('bin', 'bin')),
('bin/xpcshell', ('bin', 'bin')),
- ('bin/plugins/*', ('bin/plugins', 'plugins'))
+ ('bin/plugins/*', ('bin/plugins', 'plugins')),
+ ('bin/components/*', ('bin/components', 'bin/components')),
}
# We can tell our input is a test archive by this suffix, which happens to
# be the same across platforms.
_test_archive_suffix = '.common.tests.zip'
def __init__(self, package_re, tests_re, log=None, download_symbols=False):
self._package_re = re.compile(package_re)
@@ -217,17 +218,17 @@ class AndroidArtifactJob(ArtifactJob):
package_artifact_patterns = {
'application.ini',
'platform.ini',
'**/*.so',
'**/interfaces.xpt',
}
- def process_artifact(self, filename, processed_filename):
+ def process_package_artifact(self, filename, processed_filename):
# Extract all .so files into the root, which will get copied into dist/bin.
with JarWriter(file=processed_filename, optimize=False, compress_level=5) as writer:
for p, f in UnpackFinder(JarFinder(filename, JarReader(filename))):
if not any(mozpath.match(p, pat) for pat in self.package_artifact_patterns):
continue
dirname, basename = os.path.split(p)
self.log(logging.INFO, 'artifact',
@@ -402,17 +403,18 @@ class WinArtifactJob(ArtifactJob):
('bin/BadCertServer.exe', ('bin', 'bin')),
('bin/GenerateOCSPResponse.exe', ('bin', 'bin')),
('bin/OCSPStaplingServer.exe', ('bin', 'bin')),
('bin/certutil.exe', ('bin', 'bin')),
('bin/fileid.exe', ('bin', 'bin')),
('bin/pk12util.exe', ('bin', 'bin')),
('bin/ssltunnel.exe', ('bin', 'bin')),
('bin/xpcshell.exe', ('bin', 'bin')),
- ('bin/plugins/*', ('bin/plugins', 'plugins'))
+ ('bin/plugins/*', ('bin/plugins', 'plugins')),
+ ('bin/components/*', ('bin/components', 'bin/components')),
}
def process_package_artifact(self, filename, processed_filename):
added_entry = False
with JarWriter(file=processed_filename, optimize=False, compress_level=5) as writer:
for p, f in UnpackFinder(JarFinder(filename, JarReader(filename))):
if not any(mozpath.match(p, pat) for pat in self.package_artifact_patterns):
continue
@@ -431,42 +433,42 @@ class WinArtifactJob(ArtifactJob):
'matched an archive path.'.format(
patterns=self.artifact_patterns))
# Keep the keys of this map in sync with the |mach artifact| --job
# options. The keys of this map correspond to entries at
# https://tools.taskcluster.net/index/artifacts/#gecko.v2.mozilla-central.latest/gecko.v2.mozilla-central.latest
# The values correpsond to a pair of (<package regex>, <test archive regex>).
JOB_DETAILS = {
- 'android-api-15-opt': (AndroidArtifactJob, ('(public/build/fennec-(.*)\.android-arm.apk|public/build/target.apk)',
- None)),
- 'android-api-15-debug': (AndroidArtifactJob, ('public/build/target.apk',
- None)),
- 'android-x86-opt': (AndroidArtifactJob, ('public/build/target.apk',
- None)),
- 'linux-opt': (LinuxArtifactJob, ('public/build/firefox-(.*)\.linux-i686\.tar\.bz2',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'linux-debug': (LinuxArtifactJob, ('public/build/firefox-(.*)\.linux-i686\.tar\.bz2',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'linux64-opt': (LinuxArtifactJob, ('public/build/firefox-(.*)\.linux-x86_64\.tar\.bz2',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'linux64-debug': (LinuxArtifactJob, ('public/build/target\.tar\.bz2',
- 'public/build/target\.common\.tests\.zip')),
- 'macosx64-opt': (MacArtifactJob, ('public/build/firefox-(.*)\.mac\.dmg',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'macosx64-debug': (MacArtifactJob, ('public/build/firefox-(.*)\.mac\.dmg',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'win32-opt': (WinArtifactJob, ('public/build/firefox-(.*)\.win32.zip',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'win32-debug': (WinArtifactJob, ('public/build/firefox-(.*)\.win32.zip',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'win64-opt': (WinArtifactJob, ('public/build/firefox-(.*)\.win64.zip',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
- 'win64-debug': (WinArtifactJob, ('public/build/firefox-(.*)\.win64.zip',
- 'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'android-api-15-opt': (AndroidArtifactJob, (r'(public/build/fennec-(.*)\.android-arm.apk|public/build/target\.apk)',
+ r'public/build/fennec-(.*)\.common\.tests\.zip|public/build/target-(.*)\.common\.tests\.zip')),
+ 'android-api-15-debug': (AndroidArtifactJob, (r'public/build/target\.apk',
+ r'public/build/target\.common\.tests\.zip')),
+ 'android-x86-opt': (AndroidArtifactJob, (r'public/build/target\.apk',
+ r'public/build/target\.common\.tests\.zip')),
+ 'linux-opt': (LinuxArtifactJob, (r'public/build/firefox-(.*)\.linux-i686\.tar\.bz2',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'linux-debug': (LinuxArtifactJob, (r'public/build/firefox-(.*)\.linux-i686\.tar\.bz2',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'linux64-opt': (LinuxArtifactJob, (r'public/build/firefox-(.*)\.linux-x86_64\.tar\.bz2',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'linux64-debug': (LinuxArtifactJob, (r'public/build/target\.tar\.bz2',
+ r'public/build/target\.common\.tests\.zip')),
+ 'macosx64-opt': (MacArtifactJob, (r'public/build/firefox-(.*)\.mac\.dmg',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'macosx64-debug': (MacArtifactJob, (r'public/build/firefox-(.*)\.mac\.dmg',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'win32-opt': (WinArtifactJob, (r'public/build/firefox-(.*)\.win32.zip',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'win32-debug': (WinArtifactJob, (r'public/build/firefox-(.*)\.win32.zip',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'win64-opt': (WinArtifactJob, (r'public/build/firefox-(.*)\.win64.zip',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
+ 'win64-debug': (WinArtifactJob, (r'public/build/firefox-(.*)\.win64.zip',
+ r'public/build/firefox-(.*)\.common\.tests\.zip')),
}
def get_job_details(job, log=None, download_symbols=False):
cls, (package_re, tests_re) = JOB_DETAILS[job]
return cls(package_re, tests_re, log=log, download_symbols=download_symbols)