aerokube / images

Browser images for Selenoid and Moon 1.x
https://aerokube.com/images/latest/
Apache License 2.0
173 stars 128 forks source link

automate_android.sh fails to run fully #520

Open MrCondescending opened 2 years ago

MrCondescending commented 2 years ago

I am attempting to build android images using the automate_android script, and I get the following errors near the end of the execution: `Step 27/32 : RUN curl -o sdk-tools.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip && mkdir -p /opt/android-sdk-linux /root/.config/Android\ Open\ Source\ Project/ && unzip -q sdk-tools.zip -d /opt/android-sdk-linux && rm sdk-tools.zip && yes | sdkmanager --licenses ---> Running in dbd4e3640177 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 147M 100 147M 0 0 12.6M 0 0:00:11 0:00:11 --:--:-- 26.4M Warning: javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake Warning: File /root/.android/repositories.cfg could not be loaded. Warning: Failed to download any source lists! Fetch remote repository... All SDK package licenses accepted.======] 100% Computing updates...

Removing intermediate container dbd4e3640177 ---> 6e93263e7b93 Step 28/32 : RUN sdkmanager "emulator" "tools" "platform-tools" "$BUILD_TOOLS" "platforms;$PLATFORM" "$EMULATOR_IMAGE" && mksdcard "$SDCARD_SIZE"M sdcard.img && echo "no" | ( ([ -n "$ANDROID_DEVICE" ] && avdmanager create avd -n "$AVD_NAME" -k "$EMULATOR_IMAGE" --abi "$ANDROID_ABI" --device "$ANDROID_DEVICE" --sdcard /sdcard.img ) || avdmanager create avd -n "$AVD_NAME" -k "$EMULATOR_IMAGE" --abi "$ANDROID_ABI" --sdcard /sdcard.img ) && ldconfig && ( resize2fs /root/.android/avd/$AVD_NAME.avd/userdata.img "$USERDATA_SIZE"M || /opt/android-sdk-linux/emulator/qemu-img resize -f raw /root/.android/avd/$AVD_NAME.avd/userdata.img "$USERDATA_SIZE"M ) && ([ -z "$REPLACE_IMG" ] || mv /root/.android/avd/$AVD_NAME.avd/userdata.img /root/.android/avd/$AVD_NAME.avd/userdata-qemu.img ) && rm /opt/android-sdk-linux/system-images/$PLATFORM/$EMULATOR_IMAGE_TYPE/"$ANDROID_ABI"/userdata.img ---> Running in f563438273b9 Warning: javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake Warning: Failed to download any source lists!Fetch remote repository... Warning: File /root/.android/repositories.cfg could not be loaded. Warning: Failed to find package emulator] 10% Computing updates... The command '/bin/sh -c sdkmanager "emulator" "tools" "platform-tools" "$BUILD_TOOLS" "platforms;$PLATFORM" "$EMULATOR_IMAGE" && mksdcard "$SDCARD_SIZE"M sdcard.img && echo "no" | ( ([ -n "$ANDROID_DEVICE" ] && avdmanager create avd -n "$AVD_NAME" -k "$EMULATOR_IMAGE" --abi "$ANDROID_ABI" --device "$ANDROID_DEVICE" --sdcard /sdcard.img ) || avdmanager create avd -n "$AVD_NAME" -k "$EMULATOR_IMAGE" --abi "$ANDROID_ABI" --sdcard /sdcard.img ) && ldconfig && ( resize2fs /root/.android/avd/$AVD_NAME.avd/userdata.img "$USERDATA_SIZE"M || /opt/android-sdk-linux/emulator/qemu-img resize -f raw /root/.android/avd/$AVD_NAME.avd/userdata.img "$USERDATA_SIZE"M ) && ([ -z "$REPLACE_IMG" ] || mv /root/.android/avd/$AVD_NAME.avd/userdata.img /root/.android/avd/$AVD_NAME.avd/userdata-qemu.img ) && rm /opt/android-sdk-linux/system-images/$PLATFORM/$EMULATOR_IMAGE_TYPE/"$ANDROID_ABI"/userdata.img' returned a non-zero code: 1`

I have created the /root/.android/repositories.cfg to attempt to alleviate the issue, used sudo to no avail. I have also noticed that the script is not taking my arguments during the build: Step 19/32 : ARG AVD_NAME="android6.0-1" ---> Running in 81009bbc7d6f Removing intermediate container 81009bbc7d6f ---> 6526eb8e22df Step 20/32 : ARG BUILD_TOOLS="build-tools;23.0.1" ---> Running in fcf0253510ef Removing intermediate container fcf0253510ef ---> 611df60d58b6 Step 21/32 : ARG PLATFORM="android-23" ---> Running in 8c327db79525 Removing intermediate container 8c327db79525 ---> 427ff4773799 Step 22/32 : ARG EMULATOR_IMAGE="system-images;android-23;default;x86" ---> Running in 7b1c7fef9e6e Removing intermediate container 7b1c7fef9e6e ---> cd42d6acbcc3 Step 23/32 : ARG EMULATOR_IMAGE_TYPE="default" ---> Running in 3495b42052e7 Removing intermediate container 3495b42052e7 ---> 65399fb7e550 Step 24/32 : ARG ANDROID_ABI="x86" ---> Running in 2c027fc32d3f Removing intermediate container 2c027fc32d3f

I was attempting to use Android 8.1 and it does not seem to be accepting it.

Thanks!

vania-pooh commented 2 years ago

@MrCondescending try to update Android SDK download path to the recent version: https://github.com/aerokube/images/blob/master/selenium/android/Dockerfile#L67 https://dl.google.com/android/repository/commandlinetools-linux-8092744_latest.zip If if helps - we'll update in source code, too.

MrCondescending commented 2 years ago

@vania-pooh Thanks for the quick response! I am now seeing a different error (it seems like it is not making it as far in the script but I could be wrong Step 27/32 : RUN curl -o sdk-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-8092744_latest.zip && mkdir -p /opt/android-sdk-linux /root/.config/Android\ Open\ Source\ Project/ && unzip -q sdk-tools.zip -d /opt/android-sdk-linux && rm sdk-tools.zip && yes | sdkmanager --licenses ---> Running in c0c6693ab06b % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 114M 100 114M 0 0 32.4M 0 0:00:03 0:00:03 --:--:-- 32.3M /bin/sh: 1: sdkmanager: not found The command '/bin/sh -c curl -o sdk-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-8092744_latest.zip && mkdir -p /opt/android-sdk-linux /root/.config/Android\ Open\ Source\ Project/ && unzip -q sdk-tools.zip -d /opt/android-sdk-linux && rm sdk-tools.zip && yes | sdkmanager --licenses' returned a non-zero code: 127

Thanks again for the help!

vania-pooh commented 2 years ago

@MrCondescending probably sdkmanager location has changed.