ReleaseEngineering/Platforms/Android: Difference between revisions

Add info about split apks
(Add info about split apks)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
'''NOTE: This is still WIP.'''
= Introduction =  
= Introduction =  
Mozilla releases a version of [[Mobile/Platforms/Android|Firefox for Android]].
Mozilla releases a version of [[Mobile/Platforms/Android|Firefox for Android]].
Line 7: Line 5:


Currently, we build on EC2 instances (bld-linux64-ec2-XXX machines) and in-house machines (bld-linux64-ix-XXX machines).
Currently, we build on EC2 instances (bld-linux64-ec2-XXX machines) and in-house machines (bld-linux64-ix-XXX machines).
We create builds for three different architectures: armv6, armv7 and x86.
We create builds for three different architectures: Android API9, Android API10 and Android 4.2 x86.
We run unit tests and performance test differently for each build.
We run unit tests and performance test differently for each build.
You can see all jobs running in [https://treeherder.mozilla.org/ui/#/jobs?repo=mozilla-inbound&filter-searchStr=android].


= Builds & tests =
= Builds & tests =
== Armv6 ==
More info needed as to how we build this.
=== Android 2.2 ===
Jobs: '''unit tests''' tests <br />
Setup configuration: Foopies-board setup and fixed allocation (no mozpool).<br />
Hosts: Tegra boards (tegra-XXX) <br />
Scripts: [http://hg.mozilla.org/build/buildbotcustom/file/default/process/factory.py factory.py] <br />
Configs: [http://hg.mozilla.org/build/mozharness/file/default/configs/android/android_panda_releng.py android_panda_releng.py] and [http://hg.mozilla.org/build/mozharness/file/default/configs/androidandroid_panda_talos_releng.py android_panda_talos_releng.py]<br />
Artifacts: SUT agent, watcher


== Armv7 ==
== Armv7 API 9 ==
For this architecture we build both '''optimized''' and '''debug''' builds.
For this architecture we build both '''optimized''' and '''debug''' builds.
NOTE: We don't yet run tests on the debug builds.
NOTE: We don't yet run tests on the debug builds.
Line 28: Line 17:
More info needed as to how we build this.
More info needed as to how we build this.


=== Android 2.2 ===
=== Android 2.3 API 9===
Jobs: '''unit tests''' tests <br />
Setup configuration: Foopies-board setup and fixed allocation (no mozpool).<br />
Hosts: Tegra boards (tegra-XXX) <br />
Scripts: [http://hg.mozilla.org/build/buildbotcustom/file/default/process/factory.py factory.py] <br />
Configs: [http://hg.mozilla.org/build/mozharness/file/default/configs/android/android_panda_releng.py android_panda_releng.py] and [http://hg.mozilla.org/build/mozharness/file/default/configs/androidandroid_panda_talos_releng.py android_panda_talos_releng.py]<br />
Artifacts: SUT agent, watcher
 
=== Android 2.3 ===
This is still WIP.
 
Jobs: '''unit tests''' tests <br />
Jobs: '''unit tests''' tests <br />
Setup configuration: Emulator (single-core) <br />
Setup configuration: Emulator (single-core) <br />
Line 46: Line 25:
Artifacts: SUT agent, watcher, Android emulator, Android SDK, AVD definitions
Artifacts: SUT agent, watcher, Android emulator, Android SDK, AVD definitions


=== Android 4.0 ===
== Armv7 API 10 ==
For this architecture we build both '''optimized''' and '''debug''' builds.
NOTE: We don't yet run tests on the debug builds.
 
More info needed as to how we build this.
 
=== Android 4.0 API 10 ===
Jobs: '''unit tests''' and '''performance'' tests <br />
Jobs: '''unit tests''' and '''performance'' tests <br />
Setup configuration: Foopies-board setup and fixed allocation (no mozpool) <br />
Setup configuration: Foopies-board setup and fixed allocation (no mozpool) <br />
Line 54: Line 39:
Artifacts: SUT agent, watcher
Artifacts: SUT agent, watcher


== x86 ==
== Android x86 ==
More info needed as to how we build this.
More info needed as to how we build this.


Line 64: Line 49:
Configs: [http://hg.mozilla.org/build/mozharness/file/default/configs/android/androidarm.py androidarm.py]
Configs: [http://hg.mozilla.org/build/mozharness/file/default/configs/android/androidarm.py androidarm.py]
Artifacts: SUT agent, watcher, Android emulator, Android SDK, AVD definitions
Artifacts: SUT agent, watcher, Android emulator, Android SDK, AVD definitions
= Older builds/tests =
== Armv6 ==
More info needed as to how we build this.
=== Android 2.2 ===
Jobs: '''unit tests''' tests <br />
Setup configuration: Foopies-board setup and fixed allocation (no mozpool).<br />
Hosts: Tegra boards (tegra-XXX) <br />
Scripts: [http://hg.mozilla.org/build/buildbotcustom/file/default/process/factory.py factory.py] <br />
Configs: [http://hg.mozilla.org/build/mozharness/file/default/configs/android/android_panda_releng.py android_panda_releng.py] and [http://hg.mozilla.org/build/mozharness/file/default/configs/androidandroid_panda_talos_releng.py android_panda_talos_releng.py]<br />
Artifacts: SUT agent, watcher
== Armv7 ==
=== Android 2.2 ===
Jobs: '''unit tests''' tests <br />
Setup configuration: Foopies-board setup and fixed allocation (no mozpool).<br />
Hosts: Tegra boards (tegra-XXX) <br />
Scripts: [http://hg.mozilla.org/build/buildbotcustom/file/default/process/factory.py factory.py] <br />
Configs: [http://hg.mozilla.org/build/mozharness/file/default/configs/android/android_panda_releng.py android_panda_releng.py] and [http://hg.mozilla.org/build/mozharness/file/default/configs/androidandroid_panda_talos_releng.py android_panda_talos_releng.py]<br />
Artifacts: SUT agent, watcher
= Running locally =
TBD


= Testing setup configurations =
= Testing setup configurations =
Line 126: Line 133:
* Click "Next: Configure Instance Details" instead of "Review and Launch"
* Click "Next: Configure Instance Details" instead of "Review and Launch"
* Change "Network" to "vpc-b42100df"
* Change "Network" to "vpc-b42100df"
** chose a build or try subnet (I think)
** choose this subnet: subnet-fb97bc8f
* Go to section 6 and choose security group: "tests"
* Click on "Review and Launch" to go to section 7
* Click "Launch"
* Click "Launch"
** As key pairs select "Choose an existing key pair" and "aws-releng"
** As key pairs select "Choose an existing key pair" and "aws-releng"
Line 134: Line 143:
  ssh ubuntu@10.134.54.50
  ssh ubuntu@10.134.54.50
  sudo su -
  sudo su -
  passwd ubuntu # so you can change the password and loand it
  passwd ubuntu # so you can change the password and loaned it
* Also make sure to add the developers pub key to .ssh/authorized_keys
* [https://bugzilla.mozilla.org/enter_bug.cgi?bug_severity=major&short_desc=please%20give%20FULL_LDAP_ADDRESS%20access%20to%20FQDN_OF_SLAVE&component=Infrastructure%3A%20OpenVPN&product=Infrastructure%20%26%20Operations&cc=:REQUESTING_USER&comment=FIRST_NAME_REQUESTING_USER%20needs%20access%20to%20FQDN.%0APlease%20grant%20the%20host%20and%20user%20vpn_releng_loan File an IT bug to get the developer access to the slave], and mark it as '''blocking''' the developer request bug.
* [https://bugzilla.mozilla.org/enter_bug.cgi?bug_severity=major&short_desc=please%20give%20FULL_LDAP_ADDRESS%20access%20to%20FQDN_OF_SLAVE&component=Infrastructure%3A%20OpenVPN&product=Infrastructure%20%26%20Operations&cc=:REQUESTING_USER&comment=FIRST_NAME_REQUESTING_USER%20needs%20access%20to%20FQDN.%0APlease%20grant%20the%20host%20and%20user%20vpn_releng_loan File an IT bug to get the developer access to the slave], and mark it as '''blocking''' the developer request bug.


Confirmed users
3,990

edits