Closed Bug 1501315 Opened 7 years ago Closed 4 years ago

Upload geckoview_example.apk to Nimbledroid on successful nightly build in Taskcluster

Categories

(GeckoView :: General, enhancement, P2)

enhancement

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: njpark, Unassigned)

References

(Blocks 1 open bug)

Details

Currently there is a Focus PR that uploads the latest build of geckoview_example.apk to nimbledroid server for pageload time analysis. It would be ideal if this uploading is done after each successful build of the Nightly, then we can have results that corresponds to each build. The script itself is quite simple, but I don't think I have permission or knowledge to modify the taskcluster build script for geckoview, it would be great if someone with more knowledge can take this over. The Focus PR is here: https://github.com/mozilla-mobile/focus-android/pull/3704/files
Nick, maybe you could mentor this one?
Flags: needinfo?(nalexander)
(In reply to David Bolter [:davidb] (NeedInfo me for attention) from comment #1) > Nick, maybe you could mentor this one? Sure. There are many examples of post-build uploading to various places; a particularly GV-specific one is the GV Javadoc upload: https://searchfox.org/mozilla-central/rev/39cb1e96cf97713c444c5a0404d4f84627aee85d/taskcluster/ci/build/android-stuff.yml#251. However, that particular task looks like a "build and upload", which isn't necessary here. I.e., our task can be simpler -- just a Python script that gets the secret and pushes a file from another task. The tricky part is depending on the (Nightly) build. In this case, I think we want to follow the "upload symbols" tasks. This is a TC "task kind" -- basically, a template of what to do for a certain "class" of tasks. That is, you might want to "upload to nimbledroid" after _every_ build, or not -- depending on the build. That's what kinds set up. It looks bulky but the boilerplate isn't that significant. We define a new kind, like https://searchfox.org/mozilla-central/rev/39cb1e96cf97713c444c5a0404d4f84627aee85d/taskcluster/ci/upload-symbols/kind.yml. We set up a script (or better, a mach command, like |mach android upload-to-nimbledroid| -- see https://searchfox.org/mozilla-central/rev/39cb1e96cf97713c444c5a0404d4f84627aee85d/mobile/android/mach_commands.py#469) that fishes the secrets from the environment, fetches the artifact (geckoview_example.apk) from the dependent build job, and uploads. Then we talk about scheduling just for Nightly jobs -- which I don't know how to do yet, so we'll cross that bridge later. I think that's enough to get started with. Start with the script, copying |mach android geckoview-docs|. That can be developed locally as long as you have the nimbledroid API key. Then let's get that secret into TC and onto the builders; pretty sure we need releng to do that, but it's easy for them to do. (Or they can give some LDAP group rights to this. I think there's a mozilla-mobile-esque group already.) Scheduling the new kind can all be tested on try; that can happen in parallel.
Flags: needinfo?(nalexander)
Product: Firefox for Android → GeckoView
Rank: 50
Rank: 50 → 20

This bug is no longer relevant.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.