Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stable emulator system images #226

Open
yschimke opened this issue Feb 22, 2022 · 4 comments
Open

Stable emulator system images #226

yschimke opened this issue Feb 22, 2022 · 4 comments
Labels
help wanted Extra attention is needed

Comments

@yschimke
Copy link

We have a broken test which now seems to be related to a new system image for the wear emulator.

I'm wondering if there is a way to pin the system image (not emulator binary) used? Otherwise there is no guarantee that builds will be stable and reproducible.

android/wear-os-samples#219

@ychescale9
Copy link
Member

We should be able to if we can somehow replicate what the SDK manager does but I'll have to try. The tricky part is figuring out the exact download urls (I still haven't figured out how to retrieve all the emulator binary build numbers).

Thanks for the sponsorship btw😀

@yschimke
Copy link
Author

From looking at Android Studio SDK manager it uses this repositories

https://dl.google.com/android/repository/sys-img/android-wear/sys-img2-3.xml

Then seems to build in the "android-wear" and "x86-28_r07.zip"

https://dl.google.com/android/repository/sys-img/android-wear/x86-28_r07.zip

PArts.

@ychescale9
Copy link
Member

Thanks, I'll take a closer look this weekend.

@ychescale9
Copy link
Member

ychescale9 commented Mar 4, 2022

Looks like we can download the repository xml files listed under Android Studio's SDK Update Sites and extract the version information to assemble the URL paths.

To pin a system images we just need a major revision and find the matching url suffix e.g. x86-10_r05.zip:

<revision>
    <major>4</major>
</revision>
...
<complete>
    <size>75386095</size>
    <checksum type="sha1">a166d5ccbb165e1dd5464fbfeec30a61f77790d8</checksum>
    <url>x86-10_r05.zip</url>
</complete>

For emulator binary looks like we need major, minor, micro:

<revision>
    <major>31</major>
    <minor>3</minor>
    <micro>3</micro>
</revision>

We also need to search from multiple repos depending on the variants of system images required e.g. default, google_apis, google_apis_play_store, google_atd, aosp_atd, android_wear

@mrk-han mrk-han added the help wanted Extra attention is needed label Oct 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants