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