Android standalone apps failing to build (SDK 30 and 31)
Incident Report for Expo
Postmortem

Expo is a React Native… native library, which exposes not only some OS APIs to JavaScript, but also some more advanced functionalities basing on the native capabilities of the hosts. For that we sometimes use third-party libraries, one of which is ExoPlayer, an industry standard when it comes to media players for Android.

When standalone apps are built, those dependencies have to be downloaded from third-party services. Just as JavaScript has its NPM, Java developers have their equivalents, one of which is Maven, which lets developers define multiple registries from which the packages may be downloaded.

Around midnight UTC time ExoPlayer package has been removed from the registries we use to download our native dependencies. This resulted in Could not find com.google.android.exoplayer:exoplayer-core:2.6.1. errors. Around 9 AM UTC we’ve deployed a fix to SDK30 and 31 standalone app builders which included the https://github.com/expo/expo/commit/28a9c97257e4681e28056b21cc1eda33fbec9c1f commit, adding the BinTray repository with ExoPlayer dependencies. The problem affected only SDK30 and 31, because older versions of the SDK required older version of ExoPlayer which hasn’t been removed from the repositories.

Unfortunately, about that time com.google.gms:google-services:3.2.1 has also been removed from either Google or JCenter registries, resulting in errors on all SDKs. Around 12 PM another fix has been deployed, adding BinTray’s android-tools repo (https://github.com/expo/expo/commit/b2c00cb8c177e55d78548173d3ef3d35ca314ee3)..)

Since then we’ve seen no other occurrences of these issues. Sorry for the inconveniences!

Posted Dec 10, 2018 - 07:02 PST

Resolved
The previously deployed fix resolved the issue. Error rates are back to normal.
Posted Dec 10, 2018 - 07:01 PST
Monitoring
A fix has been deployed to our standalone app builders. We are currently monitoring if everything works as expected.
Posted Dec 10, 2018 - 04:37 PST
Identified
We have found the root cause of the issue and deployed the fix to staging. We are currently checking if the fix resolves the issue.
Posted Dec 10, 2018 - 01:44 PST
Investigating
We are investigating an elevated error rate for Android build jobs. Affected users will see errors in their logs for the Gradle task `:app:preProdMinSdkProdKernelReleaseBuild`.
Posted Dec 10, 2018 - 00:29 PST