This addresses the review comment from https://phabricator.services.mozilla.com/D6171
--HG--
extra : rebase_source : af26bfda433367e78115930be187528a64bbde91
extra : amend_source : 6ab77c4829ebdcb4701d76e5410790a0f760882f
There are two places where it is references:
- The build process generates a `balrog_props.json` that is not used anywhere.
(This is currently generated as part of beetmover).
- The merge day scripts have unused support for locking some rules.
Differential Revision: https://phabricator.services.mozilla.com/D6170
--HG--
extra : moz-landing-system : lando
CodeCoverageMixin's __init__ method does not have a compatible signature nor does it
call its super with a compatible signature.
CodeCoverageMixin inherits from SingleTestMixin. SingleTextMixin's __init__ method
does not have a compatible signature nor does it call super.
This patch fixes these issues by using the "standard" __init__(self, **kwargs)
signature and making sure both Mixins call it properly.
As defined initially, AndroidMixin was an old-style class not inheriting from object. This
prevents it from being properly called via super() which requires it be a new style class
and also requires that its __init__ method's signature conform to the signatures of the other
mixin's __init_methods.
AndroidMixin originally detected the adb_path using BaseScript's query_exe which required that
the previous initializers complete prior to the call which is not possible. To work around the
problem, adb_path was turned into a property whose value was not looked up until requested.
The intent was to defer the need to reference attributes which had not yet been initialized.
BaseScript's __init__ iterates over the attributes of its object determining if listeners should
be attached for the methods. This can cause problems in mixins which define properties which
require a fully initialized object since accessing the property will invoke the method before it
is ready.
This is worked around in this patch by catching AttributeError in adb_path and ignoring it. The
proper fix however might be to do this catch in BaseScript's __init__ where item = getattr(self, k)
is called.
These changes are not sufficient in of themselves. The additional followup patch to CoverCoverageMixin
and SingleTestMixin are also required for AndroidMixin to be properly initialized.
Since Raptor currently initializes AndroidMix without explicitly giving a device serial number,
mozrunner's android_device.py is modified to export the detected device serial number into the
environment as DEVICE_SERIAL. This allows AndroidMixin to obtain the device's serial number.
Currently the BuildScript mozharness base class has an `ensure_upload_path`
action that we run after the build. This patch changes it to no longer be
an action, and instead simply run as part of `preflight_build` so that the
artifact directory will be created before starting the build. This makes
it more straightforward to write things like log files directly into this
directory without worrying about whether it exists.
Differential Revision: https://phabricator.services.mozilla.com/D6186
--HG--
extra : moz-landing-system : lando
This patch fixes an issue where a suite was being found in the full path to the test which led to the baseline coverage tests being considered on a per-suite basis (like browser-chrome), when it should be on a per-file-extension basis for '.html' files. This is fixed by only considering the test name and excluding the full path to it.
Differential Revision: https://phabricator.services.mozilla.com/D5890
--HG--
extra : moz-landing-system : lando
Imports the changes to the UpdateVerifyConfig class, and sets --override-certs for staging releases.
Differential Revision: https://phabricator.services.mozilla.com/D5705
--HG--
extra : moz-landing-system : lando
Now that Linux PGO builds also do LTO and all the Linux builds use
clang, there's not much use for separate LTO builds.
Differential Revision: https://phabricator.services.mozilla.com/D5632
These are used if MOZ_UPDATE_CHANNEL is set, which isn't normally set on try.
However, when doing staging releases, that variable may be set. Populate the
mobile secrets with the default key that would be used without
MOZ_UPDATE_CHANNEL set on level-1 trees.
Differential Revision: https://phabricator.services.mozilla.com/D5599
--HG--
extra : moz-landing-system : lando
Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1482344 added workdir to the test_description_schema but
did not make it optinally_keyed_by test-platform. Since the Bitbar tests use different Docker images with
different layouts, we need the ability to set the workdir by test-platorm.
Bug 1484264 made changes to how the repackage tasks is configured.
The package-name field was hard-coded to "firefox". This field is later
used to build the Windows installer, and Thunderbird requires that it
be set to "thunderbird" or the build fails.
This patch changes package-name to be a templated field like the others.
Differential Revision: https://phabricator.services.mozilla.com/D5222
--HG--
extra : moz-landing-system : lando
We collect the classfiles from app and geckoview during the build task, but
before this patch we didn't use the app classfiles.
Depends on D4146
Differential Revision: https://phabricator.services.mozilla.com/D5167
--HG--
extra : moz-landing-system : lando
Rename the command and extend it to also archive Fennec class files into
another artifact, target.app_classfiles.zip.
Depends on D4142
Differential Revision: https://phabricator.services.mozilla.com/D4143
--HG--
extra : moz-landing-system : lando
Rather than trying to parse strings, just pass a json blob. This will allow us
to easily do things like mark artifacts to be left unextracted.
Differential Revision: https://phabricator.services.mozilla.com/D3553
--HG--
extra : rebase_source : 4e762c65d1c9f13361d5bae2e4608ba09bb39a91
This unbreaks some tier 3 raptor tasks. There are a few fixes rolled together here:
1) Stop overwriting the 'env' in mozharness_test.py's 'native-engine' implementation
2) Set the workdir to /home/cltbld (which makes sure the fetches are downloaded to there)
3) Download the fetches via mozharness in the 'raptor' script (since they don't use run-task anymore)
Depends on D3651
Differential Revision: https://phabricator.services.mozilla.com/D3652
--HG--
extra : moz-landing-system : lando
We need to grab fetches from several place in mozharness, this creates a
dedicated mixin that can be used from anywhere. If the 'fetch-content' script
is detected that will be used, otherwise we download the fetches manually.
Differential Revision: https://phabricator.services.mozilla.com/D3651
--HG--
extra : moz-landing-system : lando
The script was setting minidump_stackwalk_path, signalling that minidump_stackwalk
is expected to be found pre-installed at that location. When the path is not set,
the executable is downloaded.
Let mozharness/configs/merge_day/bump_esr.py bump esr60 (instead of esr52)
Differential Revision: https://phabricator.services.mozilla.com/D2787
--HG--
extra : moz-landing-system : lando
This patch makes a new baseline coverage test for browser-chrome which makes use of the BrowserTestUtils functions. It also begins the necessary changes so that the baseline test addition uses suites instead of file types.
MozReview-Commit-ID: 7nucHnF8CIn
--HG--
extra : rebase_source : a2a8f61bbbc5025544bebd74cee2a06d46f23fe2
This commit updates the in-tree copy of robustcheckout to match the
4.7 compatible version in version-control-tools at revision
9fafc76e6f1c633897553523db01ad40edce5816.
Differential Revision: https://phabricator.services.mozilla.com/D2674
--HG--
extra : amend_source : a0ea2cd957cac26d3e296a251e17119e6f70457f
extra : histedit_source : 4951bcab68d2e249cf2dc8b6ad5f1fd23893c307
Uses the same mozharness structured output parser configuration on Windows as
on Linux and osx, for consistency.
Removes the ineffective "structured_suites" configuration for Windows unit
tests, since that key is ignored in desktop_unittest.py.
Also changes desktop_unittest.py to use structured output by default in
the absence of the expected unstructured_flavors configuration.
The 'codecoverage' mozharness script and a code coverage mach command for Android
did their own custom bootstrapping of MOZ_FETCHES. Now that run-task does this
automatically, we should make sure we aren't downloading MOZ_FETCHES twice.
Depends on D2167.
Differential Revision: https://phabricator.services.mozilla.com/D2368
--HG--
extra : moz-landing-system : lando
There are no instances of --mozbase-suite in either m-c or c-c, which proves this is unused.
Differential Revision: https://phabricator.services.mozilla.com/D2470
--HG--
extra : moz-landing-system : lando
These files are duplicates of each other, so for simplicity we may as well use the
upstream copies to avoid falling out of sync.
MozReview-Commit-ID: JpG3joT8NNJ
--HG--
extra : rebase_source : d06c8969a9f8871b078c22e72947f7cd7584fb00