Page MenuHomePhabricator

Provide nightly .apk builds of Android app for testers
Closed, ResolvedPublic

Description

We've got some requests for regular nightly builds from potential testers; shouldn't be too hard to set up.


Version: 1.0.0 (Android)
Severity: normal

Details

Reference
bz31498
TitleReferenceAuthorSource BranchDest Branch
scap backport: major refactorrepos/releng/scap!148jhuneidibackports_refactormaster
Customize query in GitLab

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 11:55 PM
bzimport set Reference to bz31498.

Let me message the guys at Nitobi to find out if PhoneGap build can do this easily for us.

Talked with Nitobi. We would have to send requests through their API to generate the APK and then post it in a public place. This is one way of doing it but we could also just put it in Jenkins.

In theory I think something like this might work:

git pull && android update project && ant

but I haven't had much luck building from command line; things keep whinging that my build.xml is "obsolete" and I need to "delete it and regenerate it using android update project"... which refuses to update the file since it doesn't recognize it.

If you don't run android project update, you'll get mysterious errors due to not having the SDK path referenced in a local.properties.

Pull request: https://github.com/nitobi/Wikipedia/pull/42

Updates the build.xml to work with Android SDK tools r14

Any news? Translators will probably appreciate having access to nightlies to double-check things in context.

philinje wrote:

Is this ready to put on Jenkins?

It's ready to be put into Jenkins. We just need someone who knows how Jenkins works to do it. Perhaps chad could help?

Adding Chad to get his input and help.

Nightly builds are now generated by Jenkins and made available at:

https://integration.mediawiki.org/WikipediaMobile/nightly/

The Sun JDK is installed by puppet.
The Android SDK was installed manually.

Whenever someone push a change to github, they send Jenkins a POST notification. This will update the local git clone and trigger a job build.

The job use the build.xml ant file with the 'debug' target. An additional shell script added in Jenkins then copy the resulting apk in a directory accessible by Apache which directory browsing enabled. The later layout is enhanced by adding an HTML file before and after the default listing.

Design files are in puppet:files/misc/jenkins/WikipediaMobile/