Convenience Images Update: Upcoming changes to Android images

android
docker
convenience-images
maven

#1

We will soon be removing some offline Google Maven repositories from our Android convenience images.

Background
Earlier this year, Google moved their Android Support Library, Firebase, and Google Play Services artifacts to an online Maven repository. Users with a reasonably up-to-date build process and dependency tree will thus have no need for the offline copy.

Using the online repository will provide a superior Android development experience on CircleCI:

  • The offline repositories installed with sdkmanager extras; have no versions of Firebase or Play Services newer than 11.0.0
  • The online Maven repository for the Android Support Library has versions dating back to 18.0.0
  • The offline extras;google;google_play_services repository has no actual Maven artifacts and only contains documentation and example code, which is typically unnecessary in a CI environment
  • These changes will drastically reduce build times: circleci/android images will be nearly 2GB smaller in size and will thus download and spin up much more quickly

Possible required changes for users
If your Android project has not been updated recently, it may fail with the updated Android images. However, the steps to mitigate these changes are simple:

  • For projects using Gradle versions 4.1 or newer: add google() to the repositories section of build.gradle
  • For older versions of Gradle: add maven { url: 'https://maven.google.com' } to the repositories section of build.gradle

More information is available at developer.android.com.

Implementation
To avoid overwriting existing tags and potentially breaking customer builds for projects dependent on the offline repositories, we will be altering our tagging scheme for Android images with this change.

New Android image tags will no longer have -alpha appended to them, and, -alpha-tagged images will no longer receive updates.

This thread will be updated when these changes have been merged into production. Our target date is Friday, December 14th.

Thank you!