API 15 seems utterly busted lately and doesn't appear to be downloadable any more. We should use a more modern emulator in CI before it breaks. The change to upgrade the emulator should be simple but depends on this X server patch[0] and will likely have some nonzero number of workaround for Android CI.
Description
Details
Related Objects
- Mentioned In
- T272559: Unused puppet resources audit, 2021
T139137: [Dev] Fix periodic tests - Mentioned Here
- T144399: [Dev] Add BecauseYouReadCardViewTest
T144400: [Dev] Add CardHeaderViewTest
T144401: [Dev] Add CardLargeHeaderViewTest
T144403: [Dev] Update docs for screenshot tests
T118102: [Dev] Add support for screenshot difference tests
T140019: [Dev] Add NavTabViewTest
T123791: [Dev] [Spike] Execute periodic tests against multiple emulators
Event Timeline
This is a little bit related to T123791. We really want to add multiple emulators at some point. /cc @bearND, @Mholloway
I think we should consider upping our minimum version to at least 16 after this. I don't test on API 15 any more because Android Studio no longer offers the emulator. There's also an interesting precedent set by Pokémon GO being 16+.
I wouldn't be opposed to this. The current share of API 15 devices that use our app is about 5.8%, which is less than was the share of API 10 devices when we dropped support for that.
How about we consider freezing the app for API 15 when we release the nav overhaul?
How about we consider freezing the app for API 15 when we release the nav overhaul?
This sounds good to me.
@Dbrant, this turns out to be necessary for T118102 and I'm technically working on it at the moment. I've reworked the T118102 patch so it should be mergeable (but not functional) until this is done. I've got NavViewTest done for T140019 which meets the initial goals of the task but I need to get BecauseYouReadCardViewTest, CardHeaderViewTest, and CardLargeHeaderViewTest done to really demonstrate the test pattern right. I'd like to close out T118102, bump it to an XL size, move this card into the current sprint, spawn a new 1pt task for docs, and a new medium task for BecauseYouReadCardViewTest, and two small tasks for CardHeaderViewTest, and CardLargeHeaderViewTest which would also go into the current sprint. Cool?
@Dbrant, yay! Ok, I moved T118102 to code review. It was already an XL so no other change. I updated the title of T140019 and moved it to code review. I added T133183 to Thor with the unplanned tag and put it in doing. I similarly added T144403, T144401, T144400, and T144399 with the agreed upon points but put them in to do.
Change 310356 had a related patch set uploaded (by Niedzielski):
Annotate tests that do not require a WebView
Change 314770 had a related patch set uploaded (by Niedzielski):
Annotate BridgeTests as @Large
Change 314781 had a related patch set uploaded (by Niedzielski):
Annotate TranslationTests as @Large
Change 314788 had a related patch set uploaded (by Niedzielski):
WIP: Android: upgrade emulator to API 24
Testing is still a little flakier than I'd like but I'm calling this task dunziez. There's an open Xdummy patch that I'm told will be cherry picked. We now have almost 200 tests executed in CI.
https://integration.wikimedia.org/ci/job/apps-android-wikipedia-periodic-test/925/
Change 264303 merged by Dzahn:
contint: add module xdummy for Jenkins' Android emulation tests
@Niedzielski Hello:) I just found this line from 2016 "contint: add module xdummy for Jenkins' Android emulation tests" in git lot which brought me to this ticket. It said:
Xdummy is an Xorg virtual display that X11 clients may show windows on just like a desktop machine. This functionality is needed by the Jenkins' Android emulation tests which include view tests that are screen captured. Xvfb does not support GLX extensions, which the Android emulator requires, so it cannot be used.
My question is.. is this all still a thing nowadays as it was back then or is that all history?
Background is we are auditing for unused code and found the "xdummy" puppet module that was created for this back then.
Cheers, Daniel
Change 745287 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):
[operations/puppet@production] xdummy: Remove xdummy
Change 745287 merged by Ladsgroup:
[operations/puppet@production] xdummy: Remove xdummy