Application.ini not found when running Talos for the first time on clean device

RESOLVED WONTFIX

Status

Testing
Talos
RESOLVED WONTFIX
7 years ago
3 years ago

People

(Reporter: cmtalbert, Unassigned)

Tracking

Trunk
ARM
Android
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: talos-android)

Attachments

(1 attachment)

(Reporter)

Description

7 years ago
Created attachment 503945 [details]
my talos config file

I have two application.ini issues I noticed by doing the following:
1. Obtain a fresh, clean tegra
2. Install agent, watcher, fenneccp, firefoxcp, and fennec on it
3. Run Talos ts test using the attached config file

The first problem is something the ffprocess_remote code will need to handle:
Fennec no longer (I'm assuming it once did) unpacks the application.ini file to /data/data/org.mozilla.fennec upon installation.  This means that the first time you run talos against a clean slave, you'll get an error stating that you cannot find application.ini.  Once fennec runs once, application.ini will be found at /data/data/org.mozilla.fennec/application.ini and life will be good.

The second thing seems like either a bug when I generated my config file, or it is a bug in ffprocess or ffprocess_remote (I didn't debug this one):
Also, during the run of ts on a completely clean device, the code was also looking for application.ini at: /sdcard/tests/application.ini -- I didn't debug why it was looking there of all places for it, but that is certainly a bug.  I was more interested in testing the agent than debugging talos so I copied applicaiton.ini to that location, but this does need to be investigated.  It should not have looked there.  I'll attach my config file.

Note, I am running this with the devicemanager-talos patch from bug 624001.
This is a known thing that we are working around inside of installapp.py.  We had a few choices to resolve this:
1) after installing on android, launch the process, wait for it to be running, then terminate it.
2) read application.ini on the host from the .apk that we installed
3) copy over application.ini from the .apk on the host to the profile directory on the device, then access it like it is supposed to be.

We chose option #3 and that is implemented in installApp.py.  Currently this is by design, but if others feel this is wrong, this can be reconsidered.  Using option #3 did lead us down the wrong path when we were not installing the builds because we would get the latest .apk on the host and just push a newer application.ini to the device and report the version.  When we launched fennec, it would overwrite the application.ini in the profile directory with the installed version.
(Reporter)

Comment 2

7 years ago
I hesitate to mess with a working system, if folks are happy with workaround 3 above then we can keep that.

But we should document this some place so that folks don't have to debug it to figure out how to get this working.  There should at the very least be an entry in the readme and/or an informative error message.  Otherwise, this is going to just unnecessarily raise the bar for people who are trying to run talos on their own.

Ideally, I'd have preferred that we went with workaround 1 but, I can live with 3 as long as we have some way for people who haven't ever run talos before to easily get setup and run.  Having these kinds of unclear dependencies is not going to help us in that.
we have removed our dependency on application.ini, but we still have a reference to it, this can be handled.

Comment 4

5 years ago
Hello guys,

There is a problem with application.ini since Firefox/Thunderbird 11 and SeaMonkey 2.8.

Can you read : https://bugzilla.mozilla.org/show_bug.cgi?id=723493 and resolve this bug?

I would like to use new versions.
this bug is for android specifically.
Whiteboard: talos-android
moving the remaining android talos tests to autophone this quarter, autophone is more robust in device management and retrying, most likely we will not see this issue there.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.