CircleCI Android images support policy
Overview
This document outlines the CircleCI Android image release, update, and deprecation policy. This policy applies to all CircleCI Android images built for the machine executor.
Release policy
We release Android images once a quarter, and we ship patch releases for security issues as needed. We generally build these images on top of the latest stable base Ubuntu image, with added packages for Android.
-
We install the most up-to-date versions of each tool/package in newly built images.
-
We aim to package 6 levels of the Android API within each image release.
-
As this image is not specifically designed for the Android Gradle Plugin (AGP), some updates may come later than desired. We aim to follow compatibility matrices for AGP and Gradle.
We may skip a release if core Android functionality (such as sdkmanager, ndk, or platform versions) has no material updates.
Gen2 support
Gen2 resource classes are available for the Android machine image on CircleCI Cloud. Every Android gen1 resource class has a gen2 equivalent:
-
medium -
large -
xlarge -
2xlarge -
2xlarge+
Gen2 images use the current tag instead of the default tag used by gen1 images. See Tagging for details. Gen2 resource classes are not available on CircleCI Server.
Tagging
The following tags specify which image version to request in your configuration. Gen1 and gen2 images use different stable tags: gen1 uses default for legacy reasons, and gen2 uses current to stay consistent with the Linux VM tagging convention.
-
default: The stable tag for gen1 images. CircleCI updates this tag every three months. -
current: The stable tag for gen2 images. CircleCI updates this tag every three months. -
edge: Useedgefor previews of new releases that point to this tag initially. Edge tags may include incremental updates to the stable image release, which may change without notice. Do not useedgefor production CI workloads. CircleCI updates the stable tag with these changes after a period of stability, generally about a week.
Critical CVE patches
When vendors disclose critical CVEs around the operating system or software stack of this image, we investigate the impact on the image within the CircleCI execution environment. If these CVEs affect customers, we push a patch fix to the released image(s). This new image supersedes the original.
Bug reports, issues, and PRs
You can file a support ticket with CircleCI Support for any issues or bugs found with the Android VM (machine) images. Our support team can escalate issues internally to the correct engineering team and provide updates on the issue.
Image lifespan / EOL
When a new Android API level ships, we release it to edge. We give a 3-month warning before we drop support for the oldest version in the stable tag (default for gen1, current for gen2). We post an announcement on our Discuss forum, along with additional outreach where possible.
We aim to start the EOL process within 3 months of a new version release.
Exceptions
At any time, we reserve the right to work outside of the information in this document if the circumstances require. If we need to make an exception to the policy, we aim to provide as much notice and clarity as possible. In these cases, we post an announcement on our Discuss Forum. We also provide additional outreach such as an email notice where possible.