Skip to content

EAS Builds triggered through the github app integration are not compatible with git LFS #2902

Open
@pmwisdom

Description

Build/Submit details page URL

No response

Summary

We use git lfs to store larger files such as the aar files associated with the zoom meeting SDK. When a build is triggered from the github CI integration any files that are using git lfs do not get downloaded correctly. This is causing all of our android builds to fail with the error output below. Triggering a build from local machines work because the project gets uploaded directly to EAS.

I verified this by attempting to unzip the aar file in the pre install hook.

unzip -l ./android/zoom-meeting-sdk/mobilertc.aar | grep AndroidManifest

End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.

If the file downloaded correctly this should be the output:

  14780  02-01-1980 00:00   AndroidManifest.xml

I haven't found any solution online to have the integration use git lfs when cloning the repo.

Any advice is appreciated.

Managed or bare?

Bare

Environment

N/A

Error output

FAILED

Task :app:createBundleReleaseJsAndAssets_SentryUploadCleanUp SKIPPED
FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:processReleaseResources'.

Could not resolve all files for configuration ':app:releaseRuntimeClasspath'.
Failed to transform mobilertc.aar (project :zoom-meeting-sdk) to match attributes {artifactType=android-compiled-dependencies-resources}.
> Execution failed for AarResourcesCompilerTransform: /home/expo/.gradle/caches/transforms-4/89e6808b24dff885f14f6478e02724ea/transformed/jetified-mobilertc.
> /home/expo/.gradle/caches/transforms-4/89e6808b24dff885f14f6478e02724ea/transformed/jetified-mobilertc/AndroidManifest.xml

Reproducible demo or steps to reproduce from a blank project

  1. Upload aar file to git using git lfs
  2. Set up a github trigger in EAS to build the application on Pull Request
  3. Trigger build with a PR
  4. Attempt to unzip and read the contents of the aar file in the pre-install hook

(I can get an example repo set up but its pretty cut and dry)

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions