From 1e3fea7d7b61f638649289682e235727d1b33e65 Mon Sep 17 00:00:00 2001 From: soulgalore Date: Wed, 3 May 2017 04:58:27 +0200 Subject: [PATCH] support for running Android devices in Docker --- Dockerfile | 7 ++++++- docker/adb/insecure_shared_adbkey | 28 +++++++++++++++++++++++++++ docker/adb/insecure_shared_adbkey.pub | 1 + docker/scripts/start.sh | 6 ++++++ 4 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 docker/adb/insecure_shared_adbkey create mode 100644 docker/adb/insecure_shared_adbkey.pub diff --git a/Dockerfile b/Dockerfile index dc2991956..43ebd0f75 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM sitespeedio/webbrowsers:firefox-53.0-chrome-58.0 +FROM sitespeedio/webbrowsers:firefox-53.0-chrome-58.0-2 ENV SITESPEED_IO_BROWSERTIME__XVFB true ENV SITESPEED_IO_BROWSERTIME__CHROME__ARGS no-sandbox @@ -12,6 +12,11 @@ COPY . /usr/src/app COPY docker/scripts/start.sh /start.sh +## This is to avoid click the OK button +RUN mkdir -m 0750 /root/.android +ADD docker/adb/insecure_shared_adbkey /root/.android/adbkey +ADD docker/adb/insecure_shared_adbkey.pub /root/.android/adbkey.pub + ENTRYPOINT ["/start.sh"] VOLUME /sitespeed.io WORKDIR /sitespeed.io diff --git a/docker/adb/insecure_shared_adbkey b/docker/adb/insecure_shared_adbkey new file mode 100644 index 000000000..4830ee840 --- /dev/null +++ b/docker/adb/insecure_shared_adbkey @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCppPEDWVQFScXE +A/Z5KkDP62pbSSYiFOvpK4ixvAGOoeFD/Jw8m0VtxCsjiXylNaFXA10smHi1Hw3n +vMruEYpQVv3kB4ij0NeZXZ+7jg+lkkQErWiWhACxerOjuOTbnoMtqdDZWwyl1Cd8 +ob2AWrVPZmTWoHG8Rw5yrUgDDYMgFMZpmywbXBqpSgw9NdzfLPGuH89LfzpE0hIN +tOsIDjC2GG52h7hTBg6YwtSmFIMO/dk3jEob8eBKVaa5sB19m0POd+9E4Hlo2fEs ++JbnluR7y9YKiTuXZDXTtcvZyg+aIreVtfOzpLbPcBUzBVSIYdc2z+Vq74r/f8pk +QfiCwnHNAgMBAAECggEAZtD44ba6HZpgqjRcpYLeVSWxCDKFUhKsCF3CMzZnGzMx +fCsV5gWVRrmmC5vAV8DxT/NR/T1LqzpvCwx5UWCAG8Edj56hSefBQ8pijSHEiezk +HJGc2dyXLvnW9luRGSoxBvPtCE8Ok1LJu9erKqfPS5gbdZk4VYwbTZWIF5GQ71er +bVS3jwKvqkUgGiZvfVTHmCCx7LGg6vpSS7dfAIPF2lBQfzfIN+epvXhSN8v2w8Lm +6IYqEI9GVBF7uflk+ogn/2gsZRx2nZzKrPJV1XbHebPOtWNOkDlK+zF8IYAz8e8k +eHBD9DrWX/SlKbklMdGxRqWxayvASSgBjQqjykqKAQKBgQDQkhLkZdpHtLIhZeeB +lwNTrLPiGzg4xMWgeFIMkAxb7ZRWAmbD1OL4OGC+brpb0aQqE2xdlvNcgCq84lof +guLcpu6KJ7qdUzERZicdDtph4NGAKS6djhurHAdQsLaTs6wq57zPWOBYymBAV5TE +7m5d6/JZsNNEPbaPC8pY8ASsHQKBgQDQOMZ7jibT2gI4fxhCMvGJ6q5tSGKOBozZ +FDcgua2KIqgD73XuW+bAIi/4uPzwvdRUk/quI5ZECfMgNzTLKqOOV/OIz7/ZIduO +gWKM7OskF1JY6ihsTwvVgOUj2TtbZzDZdN1fuUk5FYq4QFr2wXQzlHMSczuAAnEL +kU/dT7kNcQKBgQCLAtDUqY3yfNy8pc7G8H+nJVQ/PyUZsQyHB6qn9NpH6vES4kbb +/ufHyMuyINrUl8Vyxb9UIWfSHxpdCgBHQFUz+47BRfl7IhdyIUOwelXTJqR7ZvdK +y4xlXykA/saxau81KX8OM45Tn47HU5g0KTYmIzxDyzcEJJ2oeZND87UpgQKBgQCR +3eQ19CyBJu19VJPS9Es/Obd9+UKJik8rV70S4OCQr5ySPTOZiqoJGSoQDM+tet5/ +bbckPOvsuCeo/uOuHC297yE9S4RzgQOFPmCipupHO0tF3Kv6zBlXNVfQmEK70ntn +KzZV88A3DD9Euli/GmDkLW+7khwxngRBfUe8mzfhEQKBgQCSZDQj+luSV3NYoQN8 +Uhoz/dpWA1mFYSsRj61K/o0kfscPGoEEhpwJQFIJZBtVaUQlR74nhPBqfk2pHzl/ +LYiHVMKzJ4LZ+60GYay6v2oaL0gXDSc/OiPV1HbvZ6RU4GuuI+5UyeBCyADxN9yE +Ql9mSkxC8xWUlCBzS8Nojdsybw== +-----END PRIVATE KEY----- diff --git a/docker/adb/insecure_shared_adbkey.pub b/docker/adb/insecure_shared_adbkey.pub new file mode 100644 index 000000000..23e740fc7 --- /dev/null +++ b/docker/adb/insecure_shared_adbkey.pub @@ -0,0 +1 @@ +QAAAAPsciFrNccKC+EFkyn//iu9q5c8212GIVAUzFXDPtqSz87WVtyKaD8rZy7XTNWSXO4kK1st75Jbnlvgs8dloeeBE73fOQ5t9HbC5plVK4PEbSow32f0OgxSm1MKYDgZTuId2bhi2MA4I67QNEtJEOn9Lzx+u8Szf3DU9DEqpGlwbLJtpxhQggw0DSK1yDke8caDWZGZPtVqAvaF8J9SlDFvZ0Kktg57b5Lijs3qxAISWaK0ERJKlD467n12Z19CjiAfk/VZQihHuyrznDR+1eJgsXQNXoTWlfIkjK8RtRZs8nPxD4aGOAbyxiCvp6xQiJklbauvPQCp59gPExUkFVFkD8aSp84VBRBR0aoMw7zpCFsWQeOzuXAdHpWhJDRmaY3+Z835gOd4g4Qo39noyy0bsMEQOlDZNnXE633J5kdm7cqA7R5gFGI421i1wOKzMuHilolYZf0chRDFZXxPgDNunlQecGWHW1upm+O+/6GcXAsiOZcjthcE95FW3G9Psu/c/RhAPCB1dy8yyJGKkNk7n8yXAJbIYsSnhoM39eIcSGbtxxXB27V22n+KuzQRq7FubtYbqO/I+W0YzojuoWLrflwtmtcDPGZgI+pcAhXHpF4zvxOsi3HYemZ4dre3ELjQQ3vGwYRCJ23pqya8ifQxMrzZs7YFT91I/0V03BEquRpYYNgEAAQA= insecure_shared_adbkey \ No newline at end of file diff --git a/docker/scripts/start.sh b/docker/scripts/start.sh index 3e5f63385..ba2863403 100755 --- a/docker/scripts/start.sh +++ b/docker/scripts/start.sh @@ -14,6 +14,12 @@ service dbus status > /dev/null export $(dbus-launch) export NSS_USE_SHARED_DB=ENABLED +# Start adb server and list connected devices +if [ -n "$START_ADB_SERVER" ] ; then + sudo adb start-server + sudo adb devices +fi + # Inspired by docker-selenium way of shutting down function shutdown { kill -s SIGTERM $PID