[Python-Dev] Support of the Android platform

Xavier de Gaye xdegaye at gmail.com
Mon Dec 11 10:40:18 EST 2017


On 12/11/2017 03:40 PM, Victor Stinner wrote:
 > 2017-12-11 14:58 GMT+01:00 Xavier de Gaye <xdegaye at gmail.com>:
 >> The host running the buildbots must be able to run 6 (i.e. 3 x (version 3.x
 >> + maintenance version)) emulators simultaneously, so with an eight core cpu,
 >> that will be 6 cores running at 100%. The armv7 and arm64 buildbot may be
 >> set to run only daily but the tests last a long time on these architectures
 >> anyway.
 >
 > What do you mean by "maintenance version"? Do you want to add Android
 > support to Python 2.7 and 3.6 as well? I would prefer to only support
 > Android since the master branch.

Yes, today only the master branch, and when 3.8 is released then both 3.7 and 3.8 would be supported. That is what I (implicitly) meant.


 > Would it be possible to only run an emulator to run a test, and then
 > stop it? So we could test many combo in the same host?

I may not understand your question. An emulator runs with an AVD image (Android Virtual Device) that is specific to the API and architecture (armv7, x86_64, ...), and that contains the data (file 
systems) and the configuration. The AVD image is created once and for all for each of the combinations (API, architecture). You start the emulator with the AVD that matches the type of the built 
python (API, architecture) and install that build. Multiple emulators can run simultaneously except that the build system imposes the restriction that no two identical (API, architecture) emulators 
can run concurrently except if they are not used for the same Python version (emulators are identified by their port numbers by the Android tools and the build system allocates those ports statically).

Xavier


More information about the Python-Dev mailing list