The MACHTYPE bash variable is an odd thing that returns e.g.
x86_64-redhat-linux-gnu on a CentOS system, but x86_64-pc-linux-gnu
on a Debian system, and possibly something different on other distros.
mach valgrind-test is the only place actually relying on MACHTYPE.
Others rely on information from python modules. Uniformize that, and use
the more generic 'pc' rather than 'redhat'.
--HG--
rename : build/valgrind/i386-redhat-linux-gnu.sup => build/valgrind/i386-pc-linux-gnu.sup
rename : build/valgrind/x86_64-redhat-linux-gnu.sup => build/valgrind/x86_64-pc-linux-gnu.sup
extra : rebase_source : ad94ce69e8094d2b9ddae97a3d261945886c0a61
These magic locations evolve over time. Baking them into
moz.configure is the easiest way to share them across the build
system, and pushing them into a new |mach android *| command continues
a pattern that has been very successful.
MozReview-Commit-ID: CyxVQ0LHHgl
--HG--
extra : rebase_source : 8350d71665f0126aa4ee2c8fec32c4b8e34dc772
These magic locations evolve over time. Baking them into
moz.configure is the easiest way to share them across the build
system, and pushing them into a new |mach android *| command continues
a pattern that has been very successful.
MozReview-Commit-ID: CyxVQ0LHHgl
--HG--
extra : rebase_source : 8350d71665f0126aa4ee2c8fec32c4b8e34dc772
The goal is to use a newer Android-Gradle build plugin version (2.3.3
is latest stable). That requires a modern Gradle (anything 3.3+, but
3.4.1 is the default from my Android Studio), and also a newer
build-tools (25.0.3 is latest stable).
The locations of lint output changed, and we want to use the standard
output location because it's difficult to accommodate variant details
in custom names. We change the location of findbugs output to follow
suit.
This requires either:
- fixing lint errors
- adding to the lint whitelist
- using the new lint baseline
It's best to use the new lint baseline, which will happen in the next commit.
MozReview-Commit-ID: D19FzIDCJrE
--HG--
extra : rebase_source : 12d132c0c3e0dbe2b8873b31360ea96d612de44c
The main bug this fixes is that on reftest, the objdir needs to be added to the
whitelist on Windows. However, this only happens when running on Linux for some
reason.
Changing the --work-path and --obj-path arguments to --sandbox-read-whitelist
was more of a drive-by cleanup than anything necessary.
MozReview-Commit-ID: Dq8ZLETMzeM
--HG--
extra : rebase_source : 3d2cdda125205e76f86235eb373074899fe0789a
Currently the mochitest and reftest runners are forcing a timeout of 60s
(or 900s for valgrind or debug builds) when calling `start_session` of
Marionette. While this method still offers a timeout parameter, the
timeout should be set via the `startup_timeout` argument for Marionette.
Reason is that Marionette doesn't control the browser instance and
is getting called right after the application gets launched. As such
slow running builds can cause timeouts once it takes longer than 60s
for the Marionette server to get started.
By using `startup_timeout` the timeout will even be configurable via
the command line and mozharness config files.
MozReview-Commit-ID: EV7GklBcJjU
--HG--
extra : rebase_source : 9d3c623c49deb92d68c40ba4410c812c864e06bd
We should now only maintain Photon flavor. Remove all Australis related configuration in build scripts.
MozReview-Commit-ID: H4LE8LAso42
--HG--
extra : rebase_source : 2d5a05e43b261d573677834210a7b3fb18aebcac
--verify runs tests many times, in various configurations, in hopes of
finding intermittent failures. This option is added mostly for the -
coming soon! - test-verify task in automation, but can be used from
mach too, as a convenient way to stress tests of interest.
For a while now it has been making the content process sandbox less strict.
MozReview-Commit-ID: Am6fGzViaLk
--HG--
extra : rebase_source : 0bc037f205896c866559a7ab1f7e2c042c3142db
Our linux32-debug build is very slow to startup when running mochitests on aws.
Sometimes we see similar behavior on other linux platforms. Intermittently,
in this environment, startup takes longer than the 120 seconds that marionette
waits, resulting in test failures in bug 1261598. Increasing the marionette
startup timeout to 180 seconds appears to effectively avoid these failures.
This is pretty straight-forward.
Sadly, this will require local developers to add a "skin" product
flavor to their invocations, like:
./mach gradle app:assembleLocalAustralisDebug
In addition, this shows how many different variants of the Gradle
product flavor are embedded into our automation configurations. I
can't solve that at this time.
Since I was here, I took the time to rename "automation" to
"official", which makes "localAustralis" the default in Android
Studio, avoiding a common issue with new builders producing an APK
that doesn't include omni.ja in the IDE.
MozReview-Commit-ID: CtU7zFpNCob
This patch does a few things:
a) Adds the resources location from the .app directory to the read whitelist
b) When it's a non-packaged build, mach run (and various mach tests) set an environment variable for the repo location which we allow reads from.
r=haik,froydnj
MozReview-Commit-ID: KNvAoUs5Ati
--HG--
extra : rebase_source : 81ba8bfee0ca96979cf8e30d75cdd47f06bc10ea
This patch does a few things:
a) Adds the resources location from the .app directory to the read whitelist
b) When it's a non-packaged build, mach run (and various mach tests) set an environment variable for the repo location which we allow reads from.
r=haik,froydnj
MozReview-Commit-ID: KNvAoUs5Ati
--HG--
extra : rebase_source : f637acff32fc8582732de932503dd696abc57877
sutagent is no longer built or used; devicemanagerSUT is completely
unused. After this change, devicemanagerADB is the only implementation of
devicemanager, and test harness options like --dm_trans are eliminated.
./mach robocop calls through to mochitest_options.py to validate the passed command line options, so it's not necessary to define a default Robocop APK path from two different places.
MozReview-Commit-ID: 8CryDqOKDBF
--HG--
extra : rebase_source : 843c1395fe384bc2a03bacf9a61b4abbdc4fca4c
By using --wait-for-jsdebugger, we can allow the test suite to start
automatically and also ensure the JS debugger has a chance to connect.
There's still an extra click to get the tests running though (at least on macOS)
because the test harness needs to be focused and the extra process used for the
Browser Toolbox removes the focus from it.
MozReview-Commit-ID: 1Eg7lqG3KST
--HG--
extra : rebase_source : 5df1ac74a3e083ac6c2293fb1cf8a27509b81274
Information in the ALL_FLAVORS dict is needed by interactive loaners (in the mach_test_package_commands.py
file). Because the normal mach_commands.py file doesn't get copied to the tests.zip, this commit refactors
ALL_FLAVORS into mochitest_options.py (which is copied to tests.zip) to avoid duplicating it. A side
benefit of moving ALL_FLAVORS to mochitest_options.py, is that mochitest_options.py itself can make use of
this dict. This means we no longer need to redefine the --flavor argument in the mach command.
The __init__.py file is added to turn the testing/mochitest directory into a python module. This allows
things like mach_commands.py to do things like 'from mochitest import runtests'. Mach commands are able to
find this module because the 'testing' directory is already added to sys.path in the mach bootstrap.
In the future, having mochitest as an importable module should help with running it from the srcdir. So this
is a change we should start making anyway. Unfortunately, we still need to import the main runtests.py file
from the objdir, as lots of things depend on the SCRIPT_DIR variable being in the objdir. We could probably
fix this with minimal work, but that is scope bloat for this bug.
MozReview-Commit-ID: KtWCk91bX0K
--HG--
extra : rebase_source : 891b9e138cb53b040387369568d8b45987b59ddd
CLOSED TREE
Backed out changeset 1f3f88337227 (bug 1312739)
Backed out changeset ecb1d15e8075 (bug 1312739)
Backed out changeset b2adce340421 (bug 1312739)
Information in the ALL_FLAVORS dict is needed by interactive loaners (in the mach_test_package_commands.py
file). Because the normal mach_commands.py file doesn't get copied to the tests.zip, this commit refactors
ALL_FLAVORS into mochitest_options.py (which is copied to tests.zip) to avoid duplicating it. A side
benefit of moving ALL_FLAVORS to mochitest_options.py, is that mochitest_options.py itself can make use of
this dict. This means we no longer need to redefine the --flavor argument in the mach command.
The __init__.py file is added to turn the testing/mochitest directory into a python module. This allows
things like mach_commands.py to do things like 'from mochitest import runtests'. Mach commands are able to
find this module because the 'testing' directory is already added to sys.path in the mach bootstrap.
In the future, having mochitest as an importable module should help with running it from the srcdir. So this
is a change we should start making anyway. Unfortunately, we still need to import the main runtests.py file
from the objdir, as lots of things depend on the SCRIPT_DIR variable being in the objdir. We could probably
fix this with minimal work, but that is scope bloat for this bug.
MozReview-Commit-ID: KtWCk91bX0K
--HG--
extra : rebase_source : 4d5909f495a453b12e8301e98ed0394dcf5f2470
In mozdevice, it's possible to pass in the path to the adb binary (rather than requiring it to be on the path). The
mochitest android options don't provide any means to set this however (even though the b2g options do). This patch
adds that option in.
This will be used by the mach environment on interactive loaners.
MozReview-Commit-ID: 4lsKGpizfH7
--HG--
extra : rebase_source : 07ad43c8fff3eb83a1eaab9ad0532cd85c4532c7