Bug 1552519 - For geckoview browser apps startup use local configuration file instead of command line args r=perftest-reviewers,sparky
authorRob Wood <rwood@mozilla.com>
Fri, 12 Jul 2019 16:31:29 +0000
changeset 543201 ac23331d8e5833940665f46ed8602b1c9afa02ea
parent 543200 2c80b3789ea8def9f93f3cb61b6504b31114db1d
child 543202 630e5bec018bbebfe2ad56464dcab375a0a8e867
push id11848
push userffxbld-merge
push dateMon, 26 Aug 2019 19:26:25 +0000
treeherdermozilla-beta@9b31bfdfac10 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersperftest-reviewers, sparky
bugs1552519
milestone70.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1552519 - For geckoview browser apps startup use local configuration file instead of command line args r=perftest-reviewers,sparky Differential Revision: https://phabricator.services.mozilla.com/D35523
taskcluster/ci/test/raptor.yml
testing/raptor/raptor/cmdline.py
testing/raptor/raptor/raptor.py
testing/raptor/raptor/utils.py
testing/raptor/requirements.txt
testing/raptor/test/test_utils.py
--- a/taskcluster/ci/test/raptor.yml
+++ b/taskcluster/ci/test/raptor.yml
@@ -307,17 +307,17 @@ raptor-tp6m-1-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-1
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-1-refbrow:
     description: "Raptor tp6m-1 on the reference browser"
     treeherder-symbol: Rap-refbrow(tp6m-1)
     run-on-projects: []
     target:
         by-test-platform:
             android-hw.*-aarch64.*/.*:
@@ -349,17 +349,17 @@ raptor-tp6m-2-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-2
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-2-geckoview:
     description: "Raptor tp6m-2 on Geckoview"
     try-name: raptor-tp6m-2-geckoview
     treeherder-symbol: Rap(tp6m-2)
     target: geckoview_example.apk
     run-on-projects: ['mozilla-central']
     tier: 2
@@ -438,17 +438,17 @@ raptor-tp6m-3-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-3
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-4-geckoview:
     description: "Raptor tp6m-4 on Geckoview"
     try-name: raptor-tp6m-4-geckoview
     treeherder-symbol: Rap(tp6m-4)
     target: geckoview_example.apk
     run-on-projects: ['mozilla-central']
     tier: 2
@@ -493,17 +493,17 @@ raptor-tp6m-4-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-4
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-5-geckoview:
     description: "Raptor tp6m-5 on Geckoview"
     try-name: raptor-tp6m-5-geckoview
     treeherder-symbol: Rap(tp6m-5)
     run-on-projects: ['mozilla-central']
     target: geckoview_example.apk
     tier: 2
@@ -549,17 +549,17 @@ raptor-tp6m-5-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-5
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-6-geckoview:
     description: "Raptor tp6m-6 on Geckoview"
     try-name: raptor-tp6m-6-geckoview
     treeherder-symbol: Rap(tp6m-6)
     run-on-projects: ['mozilla-central']
     target: geckoview_example.apk
     tier: 2
@@ -604,17 +604,17 @@ raptor-tp6m-6-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-6
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-7-geckoview:
     description: "Raptor tp6m-7 on Geckoview"
     try-name: raptor-tp6m-7-geckoview
     treeherder-symbol: Rap(tp6m-7)
     run-on-projects: ['mozilla-central']
     target: geckoview_example.apk
     tier: 2
@@ -660,17 +660,17 @@ raptor-tp6m-7-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-7
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-8-geckoview:
     description: "Raptor tp6m-8 on Geckoview"
     try-name: raptor-tp6m-8-geckoview
     treeherder-symbol: Rap(tp6m-8)
     run-on-projects: ['mozilla-central']
     target: geckoview_example.apk
     tier: 2
@@ -715,17 +715,17 @@ raptor-tp6m-8-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-8
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-9-geckoview:
     description: "Raptor tp6m-9 on Geckoview"
     try-name: raptor-tp6m-9-geckoview
     treeherder-symbol: Rap(tp6m-9)
     target: geckoview_example.apk
     run-on-projects: ['mozilla-central']
     tier: 2
@@ -771,17 +771,17 @@ raptor-tp6m-9-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-9
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-10-geckoview:
     description: "Raptor tp6m-10 on Geckoview"
     try-name: raptor-tp6m-10-geckoview
     treeherder-symbol: Rap(tp6m-10)
     target: geckoview_example.apk
     run-on-projects: ['mozilla-central']
     tier: 2
@@ -827,17 +827,17 @@ raptor-tp6m-10-fenix:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-10
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-1-fennec:
     description: "Raptor tp6m-1 on Fennec"
     try-name: raptor-tp6m-1-fennec
     treeherder-symbol: Rap(tp6m-1)
     target: target.apk
     run-on-projects: []
     tier: 2
@@ -979,17 +979,17 @@ raptor-tp6m-1-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-1
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-2-fenix-cold:
     description: "Raptor tp6m-2 cold page-load on Fenix"
     try-name: raptor-tp6m-2-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-2)
     run-on-projects: []
     e10s: true
     target:
@@ -1001,17 +1001,17 @@ raptor-tp6m-2-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-2
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-3-fenix-cold:
     description: "Raptor tp6m-3 cold page-load on Fenix"
     try-name: raptor-tp6m-3-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-3)
     run-on-projects: []
     e10s: true
     target:
@@ -1023,17 +1023,17 @@ raptor-tp6m-3-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-3
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-4-fenix-cold:
     description: "Raptor tp6m-4 cold page-load on Fenix"
     try-name: raptor-tp6m-4-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-4)
     run-on-projects: []
     e10s: true
     target:
@@ -1045,17 +1045,17 @@ raptor-tp6m-4-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-4
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-5-fenix-cold:
     description: "Raptor tp6m-5 cold page-load on Fenix"
     try-name: raptor-tp6m-5-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-5)
     run-on-projects: []
     e10s: true
     target:
@@ -1067,17 +1067,17 @@ raptor-tp6m-5-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-5
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-6-fenix-cold:
     description: "Raptor tp6m-6 cold page-load on Fenix"
     try-name: raptor-tp6m-6-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-6)
     run-on-projects: []
     e10s: true
     target:
@@ -1089,17 +1089,17 @@ raptor-tp6m-6-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-6
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-7-fenix-cold:
     description: "Raptor tp6m-7 cold page-load on Fenix"
     try-name: raptor-tp6m-7-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-7)
     run-on-projects: []
     e10s: true
     target:
@@ -1111,17 +1111,17 @@ raptor-tp6m-7-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-7
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-8-fenix-cold:
     description: "Raptor tp6m-8 cold page-load on Fenix"
     try-name: raptor-tp6m-8-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-8)
     run-on-projects: []
     e10s: true
     target:
@@ -1133,17 +1133,17 @@ raptor-tp6m-8-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-8
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-9-fenix-cold:
     description: "Raptor tp6m-9 cold page-load on Fenix"
     try-name: raptor-tp6m-9-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-9)
     run-on-projects: []
     e10s: true
     target:
@@ -1155,17 +1155,17 @@ raptor-tp6m-9-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-9
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-10-fenix-cold:
     description: "Raptor tp6m-10 cold page-load on Fenix"
     try-name: raptor-tp6m-10-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-10)
     run-on-projects: []
     e10s: true
     target:
@@ -1177,17 +1177,17 @@ raptor-tp6m-10-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-10
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-11-fenix-cold:
     description: "Raptor tp6m-11 cold page-load on Fenix"
     try-name: raptor-tp6m-11-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-11)
     run-on-projects: []
     e10s: true
     target:
@@ -1199,17 +1199,17 @@ raptor-tp6m-11-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-11
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-12-fenix-cold:
     description: "Raptor tp6m-12 cold page-load on Fenix"
     try-name: raptor-tp6m-12-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-12)
     run-on-projects: []
     e10s: true
     target:
@@ -1221,17 +1221,17 @@ raptor-tp6m-12-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-12
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-13-fenix-cold:
     description: "Raptor tp6m-13 cold page-load on Fenix"
     try-name: raptor-tp6m-13-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-13)
     run-on-projects: []
     e10s: true
     target:
@@ -1243,17 +1243,17 @@ raptor-tp6m-13-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-13
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-14-fenix-cold:
     description: "Raptor tp6m-14 cold page-load on Fenix"
     try-name: raptor-tp6m-14-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-14)
     run-on-projects: []
     e10s: true
     target:
@@ -1265,17 +1265,17 @@ raptor-tp6m-14-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-14
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-15-fenix-cold:
     description: "Raptor tp6m-15 cold page-load on Fenix"
     try-name: raptor-tp6m-15-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-15)
     run-on-projects: []
     e10s: true
     target:
@@ -1287,17 +1287,17 @@ raptor-tp6m-15-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-15
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-16-fenix-cold:
     description: "Raptor tp6m-16 cold page-load on Fenix"
     try-name: raptor-tp6m-16-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-16)
     run-on-projects: []
     e10s: true
     target:
@@ -1309,17 +1309,17 @@ raptor-tp6m-16-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-16
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-17-fenix-cold:
     description: "Raptor tp6m-17 cold page-load on Fenix"
     try-name: raptor-tp6m-17-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-17)
     run-on-projects: []
     e10s: true
     target:
@@ -1331,17 +1331,17 @@ raptor-tp6m-17-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-17
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-18-fenix-cold:
     description: "Raptor tp6m-18 cold page-load on Fenix"
     try-name: raptor-tp6m-18-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-18)
     run-on-projects: []
     e10s: true
     target:
@@ -1353,17 +1353,17 @@ raptor-tp6m-18-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-18
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-19-fenix-cold:
     description: "Raptor tp6m-19 cold page-load on Fenix"
     try-name: raptor-tp6m-19-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-19)
     run-on-projects: []
     e10s: true
     target:
@@ -1375,17 +1375,17 @@ raptor-tp6m-19-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-19
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-20-fenix-cold:
     description: "Raptor tp6m-20 cold page-load on Fenix"
     try-name: raptor-tp6m-20-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-20)
     run-on-projects: []
     e10s: true
     target:
@@ -1397,17 +1397,17 @@ raptor-tp6m-20-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-20
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-21-fenix-cold:
     description: "Raptor tp6m-21 cold page-load on Fenix"
     try-name: raptor-tp6m-21-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-21)
     run-on-projects: []
     e10s: true
     target:
@@ -1419,17 +1419,17 @@ raptor-tp6m-21-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-21
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-22-fenix-cold:
     description: "Raptor tp6m-22 cold page-load on Fenix"
     try-name: raptor-tp6m-22-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-22)
     run-on-projects: []
     e10s: true
     target:
@@ -1441,17 +1441,17 @@ raptor-tp6m-22-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-22
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-23-fenix-cold:
     description: "Raptor tp6m-23 cold page-load on Fenix"
     try-name: raptor-tp6m-23-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-23)
     run-on-projects: []
     e10s: true
     target:
@@ -1463,17 +1463,17 @@ raptor-tp6m-23-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-23
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-24-fenix-cold:
     description: "Raptor tp6m-24 cold page-load on Fenix"
     try-name: raptor-tp6m-24-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-24)
     run-on-projects: []
     e10s: true
     target:
@@ -1485,17 +1485,17 @@ raptor-tp6m-24-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-24
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-25-fenix-cold:
     description: "Raptor tp6m-25 cold page-load on Fenix"
     try-name: raptor-tp6m-25-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-25)
     run-on-projects: []
     e10s: true
     target:
@@ -1507,17 +1507,17 @@ raptor-tp6m-25-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-25
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6m-26-fenix-cold:
     description: "Raptor tp6m-26 cold page-load on Fenix"
     try-name: raptor-tp6m-26-fenix-cold
     treeherder-symbol: Rap-fenix(tp6m-c-26)
     run-on-projects: []
     e10s: true
     target:
@@ -1529,17 +1529,17 @@ raptor-tp6m-26-fenix-cold:
                 index: project.mobile.fenix.v2.performance-test.latest.arm
                 name: target.apk
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-tp6m-cold-26
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-speedometer-firefox:
     description: "Raptor Speedometer on Firefox"
     variants: ["fission"]
     try-name: raptor-speedometer-firefox
     treeherder-symbol: Rap(sp)
     mozharness:
         extra-options:
@@ -1611,17 +1611,17 @@ raptor-scn-power-idle-fenix:
     max-run-time: 1800
     mozharness:
         extra-options:
             - --test=raptor-scn-power-idle
             - --app=fenix
             - --binary-path=org.mozilla.fenix.performancetest
             - --power-test
             - --host HOST_IP
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-scn-power-idle-fennec:
     description: "Raptor idle-browser power-use measurement on Fennec"
     try-name: raptor-scn-power-idle-fennec
     treeherder-symbol: Rap-fennec(idl-p)
     target: target.apk
     run-on-projects: []
     tier: 3
@@ -1693,17 +1693,17 @@ raptor-scn-power-idle-bg-fenix:
     max-run-time: 1800
     mozharness:
         extra-options:
             - --test=raptor-scn-power-idle-bg
             - --app=fenix
             - --binary-path=org.mozilla.fenix.raptor
             - --power-test
             - --host HOST_IP
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-scn-power-idle-bg-fennec:
     description: "Raptor idle-browser (backgrounded) power-use measurement on Fennec"
     try-name: raptor-scn-power-idle-bg-fennec
     treeherder-symbol: Rap-fennec(idlbg-p)
     target: target.apk
     run-on-projects: []
     tier: 3
@@ -2252,17 +2252,17 @@ raptor-youtube-playback-fenix:
                 name: target.apk
     max-run-time: 3600
     tier: 2
     mozharness:
         extra-options:
             - --test=raptor-youtube-playback
             - --app=fenix
             - --binary-path=org.mozilla.fenix.raptor
-            - --activity=org.mozilla.fenix.browser.BrowserPerformanceTestActivity
+            - --activity=org.mozilla.fenix.IntentReceiverActivity
 
 raptor-tp6-1-firefox-cold:
     description: "Raptor tp6-1 cold page-load on Firefox"
     try-name: raptor-tp6-1-firefox-cold
     treeherder-symbol: Rap(tp6-c-1)
     tier: 2
     mozharness:
         extra-options:
--- a/testing/raptor/raptor/cmdline.py
+++ b/testing/raptor/raptor/cmdline.py
@@ -30,17 +30,17 @@ APPS = {
         "default_activity": "org.mozilla.geckoview_example.GeckoViewActivity",
         "default_intent": "android.intent.action.MAIN"},
     REFBROW: {
         "long_name": "Firefox Android Components Reference Browser",
         "default_activity": "org.mozilla.reference.browser.BrowserTestActivity",
         "default_intent": "android.intent.action.MAIN"},
     FENIX: {
         "long_name": "Firefox Android Fenix Browser",
-        "default_activity": "org.mozilla.fenix.browser.BrowserPerformanceTestActivity",
+        "default_activity": "org.mozilla.fenix.IntentReceiverActivity",
         "default_intent": "android.intent.action.VIEW"}
 }
 INTEGRATED_APPS = list(APPS.keys())
 
 
 def print_all_activities():
     all_activities = []
     for next_app in APPS:
--- a/testing/raptor/raptor/raptor.py
+++ b/testing/raptor/raptor/raptor.py
@@ -52,17 +52,17 @@ from cmdline import (parse_args,
 from control_server import RaptorControlServer
 from gecko_profile import GeckoProfile
 from gen_test_config import gen_test_config
 from outputhandler import OutputHandler
 from manifest import get_raptor_test_list
 from memory import generate_android_memory_profile
 from power import init_android_power_test, finish_android_power_test
 from results import RaptorResultsHandler
-from utils import view_gecko_profile
+from utils import view_gecko_profile, write_yml_file
 from cpu import generate_android_cpu_profile
 
 LOG = RaptorLogger(component='raptor-main')
 
 
 class SignalHandler:
 
     def __init__(self):
@@ -750,16 +750,17 @@ class RaptorAndroid(Raptor):
             self.tune_performance()
 
         LOG.info("creating remote root folder for raptor: %s" % self.remote_test_root)
         self.device.rm(self.remote_test_root, force=True, recursive=True)
         self.device.mkdir(self.remote_test_root)
         self.device.chmod(self.remote_test_root, recursive=True, root=True)
 
         self.clear_app_data()
+        self.set_debug_app_flag()
 
     def tune_performance(self):
         """Set various performance-oriented parameters, to reduce jitter.
 
         For more information, see https://bugzilla.mozilla.org/show_bug.cgi?id=1547135.
         """
         LOG.info("tuning android device performance")
         self.set_svc_power_stayon()
@@ -934,16 +935,21 @@ class RaptorAndroid(Raptor):
         path = os.path.join(self.profile_data_dir, 'raptor-android')
         LOG.info("Merging profile: {}".format(path))
         self.profile.merge(path)
 
     def clear_app_data(self):
         LOG.info("clearing %s app data" % self.config['binary'])
         self.device.shell("pm clear %s" % self.config['binary'])
 
+    def set_debug_app_flag(self):
+        # required so release apks will read the android config.yml file
+        LOG.info("setting debug-app flag for %s" % self.config['binary'])
+        self.device.shell("am set-debug-app --persistent %s" % self.config['binary'])
+
     def copy_profile_to_device(self):
         """Copy the profile to the device, and update permissions of all files."""
         if not self.device.is_app_installed(self.config['binary']):
             raise Exception('%s is not installed' % self.config['binary'])
 
         try:
             LOG.info("copying profile to device: %s" % self.remote_profile)
             self.device.rm(self.remote_profile, force=True, recursive=True)
@@ -971,16 +977,51 @@ class RaptorAndroid(Raptor):
 
     def log_android_device_temperature(self):
         # retrieve and log the android device temperature
         thermal_zone0 = float(self.device.shell_output('cat sys/class/thermal/thermal_zone0/temp'))
         zone_type = self.device.shell_output('cat sys/class/thermal/thermal_zone0/type')
         LOG.info("(thermal_zone0) device temperature: %.3f zone type: %s"
                  % (thermal_zone0 / 1000, zone_type))
 
+    def write_android_app_config(self):
+        # geckoview supports having a local on-device config file; use this file
+        # to tell the app to use the specified browser profile, as well as other opts
+        # on-device: /data/local/tmp/com.yourcompany.yourapp-geckoview-config.yaml
+        # https://mozilla.github.io/geckoview/tutorials/automation.html#configuration-file-format
+
+        # only supported for geckoview apps
+        if self.config['app'] == "fennec":
+            return
+        LOG.info("creating android app config.yml")
+
+        yml_config_data = dict(
+            args=['--profile', self.remote_profile, 'use_multiprocess', self.config['e10s']],
+            env=dict(
+                LOG_VERBOSE=1,
+                R_LOG_LEVEL=6,
+                MOZ_WEBRENDER=int(self.config['enable_webrender']),
+            )
+        )
+
+        yml_name = '%s-geckoview-config.yaml' % self.config['binary']
+        yml_on_host = os.path.join(tempfile.mkdtemp(), yml_name)
+        write_yml_file(yml_on_host, yml_config_data)
+        yml_on_device = os.path.join('/data', 'local', 'tmp', yml_name)
+
+        try:
+            LOG.info("copying %s to device: %s" % (yml_on_host, yml_on_device))
+            self.device.rm(yml_on_device, force=True, recursive=True)
+            self.device.push(yml_on_host, yml_on_device)
+            self.device.chmod(yml_on_device, recursive=True, root=True)
+
+        except Exception:
+            LOG.critical("failed to push %s to device!" % yml_on_device)
+            raise
+
     def launch_firefox_android_app(self, test_name):
         LOG.info("starting %s" % self.config['app'])
 
         extra_args = ["-profile", self.remote_profile,
                       "--es", "env0", "LOG_VERBOSE=1",
                       "--es", "env1", "R_LOG_LEVEL=6",
                       "--es", "env2", "MOZ_WEBRENDER=%d" % self.config['enable_webrender']]
 
@@ -990,29 +1031,23 @@ class RaptorAndroid(Raptor):
 
             if self.config['app'] == "fennec":
                 self.device.launch_fennec(self.config['binary'],
                                           extra_args=extra_args,
                                           url='about:blank',
                                           fail_if_running=False)
             else:
 
-                # Additional command line arguments that the app will read and use (e.g.
-                # with a custom profile)
-                extras = {}
-                if extra_args:
-                    extras['args'] = " ".join(extra_args)
-
-                # add e10s=True
-                extras['use_multiprocess'] = self.config['e10s']
+                # command line 'extra' args not used with geckoview apps; instead we use
+                # an on-device config.yml file (see write_android_app_config)
 
                 self.device.launch_application(self.config['binary'],
                                                self.config['activity'],
                                                self.config['intent'],
-                                               extras=extras,
+                                               extras=None,
                                                url='about:blank',
                                                fail_if_running=False)
 
             # Check if app has started and it's running
             if not self.device.process_exist(self.config['binary']):
                 raise Exception("Error launching %s. App did not start properly!" %
                                 self.config['binary'])
             self.app_launched = True
@@ -1113,18 +1148,18 @@ class RaptorAndroid(Raptor):
 
         for test['browser_cycle'] in range(1, test['expected_browser_cycles'] + 1):
 
             LOG.info("begin browser cycle %d of %d for test %s"
                      % (test['browser_cycle'], test['expected_browser_cycles'], test['name']))
 
             self.run_test_setup(test)
 
-            # clear the android app data before the next app startup
             self.clear_app_data()
+            self.set_debug_app_flag()
 
             if test['browser_cycle'] == 1:
                 if test.get('playback') is not None:
                     self.start_playback(test)
 
                     # an ssl cert db has now been created in the profile; copy it out so we
                     # can use the same cert db in future test cycles / browser restarts
                     local_cert_db_dir = tempfile.mkdtemp()
@@ -1151,16 +1186,19 @@ class RaptorAndroid(Raptor):
                 self.run_test_setup(test)
 
             if test.get('playback') is not None:
                 self.turn_on_android_app_proxy()
 
             self.copy_profile_to_device()
             self.log_android_device_temperature()
 
+            # write android app config.yml
+            self.write_android_app_config()
+
             # now start the browser/app under test
             self.launch_firefox_android_app(test['name'])
 
             # If we are measuring CPU, let's grab a snapshot
             if self.config['cpu_test']:
                 generate_android_cpu_profile(self, test['name'])
 
             # set our control server flag to indicate we are running the browser/app
@@ -1188,19 +1226,23 @@ class RaptorAndroid(Raptor):
 
         if self.config['host'] not in ('localhost', '127.0.0.1'):
             self.delete_proxy_settings_from_profile()
 
         if test.get('playback') is not None:
             self.turn_on_android_app_proxy()
 
         self.clear_app_data()
+        self.set_debug_app_flag()
         self.copy_profile_to_device()
         self.log_android_device_temperature()
 
+        # write android app config.yml
+        self.write_android_app_config()
+
         # now start the browser/app under test
         self.launch_firefox_android_app(test['name'])
 
         # If we are collecting CPU info, let's grab the details
         if self.config['cpu_test']:
             generate_android_cpu_profile(self, test['name'])
 
         # set our control server flag to indicate we are running the browser/app
--- a/testing/raptor/raptor/utils.py
+++ b/testing/raptor/raptor/utils.py
@@ -4,16 +4,17 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 from __future__ import absolute_import
 
 import os
 import subprocess
 import sys
 import time
+import yaml
 
 from logger.logger import RaptorLogger
 
 LOG = RaptorLogger(component='raptor-utils')
 here = os.path.dirname(os.path.realpath(__file__))
 
 external_tools_path = os.environ.get('EXTERNALTOOLSPATH', None)
 
@@ -97,8 +98,19 @@ def view_gecko_profile(ffox_bin):
         return
 
     time.sleep(5)
     ret = view_profile.poll()
     if ret is None:
         LOG_GECKO.info("view-gecko-profile successfully started as pid %d" % view_profile.pid)
     else:
         LOG_GECKO.error('view-gecko-profile process failed to start, poll returned: %s' % ret)
+
+
+def write_yml_file(yml_file, yml_data):
+    # write provided data to specified local yaml file
+    LOG.info("writing %s to %s" % (yml_data, yml_file))
+
+    try:
+        with open(yml_file, 'w') as outfile:
+            yaml.dump(yml_data, outfile, default_flow_style=False)
+    except Exception as e:
+        LOG.critical("failed to write yaml file, exeption: %s" % e)
--- a/testing/raptor/requirements.txt
+++ b/testing/raptor/requirements.txt
@@ -1,7 +1,8 @@
 mozcrash ~= 1.0
 mozrunner ~= 7.0
 mozprofile ~= 2.1
 manifestparser >= 1.1
 wptserve ~= 1.4.0
 mozdevice >= 3.0.1
 mozproxy >= 1.0
+pyyaml ~= 3.1
--- a/testing/raptor/test/test_utils.py
+++ b/testing/raptor/test/test_utils.py
@@ -1,22 +1,24 @@
 from __future__ import absolute_import, unicode_literals
 
 import mozunit
 import os
 import pytest
 import sys
+import tempfile
+import yaml
 
 # need this so raptor imports work both from /raptor and via mach
 here = os.path.abspath(os.path.dirname(__file__))
 
 raptor_dir = os.path.join(os.path.dirname(here), 'raptor')
 sys.path.insert(0, raptor_dir)
 
-from utils import transform_platform
+from utils import transform_platform, write_yml_file
 
 
 @pytest.mark.parametrize('platform', ['win', 'mac', 'linux64'])
 def test_transform_platform(platform):
     transformed = transform_platform("mitmproxy-rel-bin-{platform}.manifest", platform)
     assert "{platform}" not in transformed
     if platform == 'mac':
         assert "osx" in transformed
@@ -32,10 +34,29 @@ def test_transform_platform_no_change():
 @pytest.mark.parametrize('processor', ['x86_64', 'other'])
 def test_transform_platform_processor(processor):
     transformed = transform_platform("string-with-processor-{x64}.manifest", 'win', processor)
     assert "{x64}" not in transformed
     if processor == 'x86_64':
         assert "_x64" in transformed
 
 
+def test_write_yml_file():
+    yml_file = os.path.join(tempfile.mkdtemp(), 'utils.yaml')
+
+    yml_data = dict(
+        args=['--a', 'apple', '--b', 'banana'],
+        env=dict(
+            LOG_VERBOSE=1
+        )
+    )
+
+    assert not os.path.exists(yml_file)
+    write_yml_file(yml_file, yml_data)
+    assert os.path.exists(yml_file)
+
+    with open(yml_file, 'r') as yml_in:
+        yml_loaded = yaml.load(yml_in)
+        assert yml_loaded == yml_data
+
+
 if __name__ == '__main__':
     mozunit.main()