Implement downloading artifacts from Android builds.
BUG=chromium:512668
TEST=local run
download credential file from Cloud console
start devserver:
./devserver.py --static_dir=/usr/local/google/home/dshi/images \
--log=/tmp/devserver.log --port 8082
-a "/usr/local/google2/chromiumos/src/platform/dev/android_build_cred.json"
test download:
success:
curl http://127.0.0.1:8082/stage?target=shamu-userdebug\&build_id=2040953\&artifacts=test_zip\&branch=git_mnc-release
fail:
curl http://127.0.0.1:8082/stage?target=shamu-userdebug\&build_id=2040953\&artifacts=test_zip\&branch=none
cros flash a test device
Change-Id: I967d80ed3013f6085ae6d7e56e34b0f9dd9af10e
Reviewed-on: https://chromium-review.googlesource.com/304664
Commit-Ready: Dan Shi <dshi@chromium.org>
Tested-by: Dan Shi <dshi@chromium.org>
Reviewed-by: Simran Basi <sbasi@chromium.org>
diff --git a/downloader_unittest.py b/downloader_unittest.py
index 16909da..61bc880 100755
--- a/downloader_unittest.py
+++ b/downloader_unittest.py
@@ -112,16 +112,17 @@
def setUp(self):
mox.MoxTestBase.setUp(self)
self._work_dir = tempfile.mkdtemp('downloader-test')
+ self.branch = 'release'
self.target = 'shamu-userdebug'
self.build_id = '123456'
def tearDown(self):
shutil.rmtree(self._work_dir, ignore_errors=True)
- def testDownloadFromLaunchControl(self):
- """Basic test to check download from LaunchControl works."""
- downloader_instance = downloader.LaunchControlDownloader(
- self._work_dir, self.build_id, self.target)
+ def testDownloadFromAndroidBuildServer(self):
+ """Basic test to check download from Android's build server works."""
+ downloader_instance = downloader.AndroidBuildDownloader(
+ self._work_dir, self.branch, self.build_id, self.target)
factory = build_artifact.AndroidArtifactFactory(
downloader_instance.GetBuildDir(), ['fastboot'],
None, downloader_instance.GetBuild())
@@ -130,17 +131,13 @@
self.mox.StubOutWithMock(downloader.Downloader,
'_DownloadArtifactsInBackground')
- # TODO(dshi): Uncomment following line after Fetch method is implemented in
- # LaunchControlDownloader.
- # downloader.Downloader._DownloadArtifactsInBackground(mox.In(mox.IsA(
- # build_artifact.ANDROID_FASTBOOT)))
downloader.Downloader._DownloadArtifactsSerially(
[mox.IsA(build_artifact.Artifact)], no_wait=True)
self.mox.ReplayAll()
downloader_instance.Download(factory)
# Sanity check the timestamp file exists.
self.assertTrue(os.path.exists(
- os.path.join(self._work_dir, self.target, self.build_id,
+ os.path.join(self._work_dir, self.branch, self.target, self.build_id,
downloader.Downloader._TIMESTAMP_FILENAME)))
self.mox.VerifyAll()