Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(225)

Unified Diff: bin/cbuildbot_unittest.py

Issue 4864001: Change _ArchiveTestResults to upload to Google Storage (Closed) Base URL: http://git.chromium.org/git/crosutils.git@master
Patch Set: Fix unit test testArchiveTestResults Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « bin/cbuildbot.py ('k') | lib/cros_build_lib.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: bin/cbuildbot_unittest.py
diff --git a/bin/cbuildbot_unittest.py b/bin/cbuildbot_unittest.py
index 979cda55d40d2a258ce75a1c1f7ccd2706b0fe10..ba9b545b0dd7630201528ea87e0bdceaa94db083 100755
--- a/bin/cbuildbot_unittest.py
+++ b/bin/cbuildbot_unittest.py
@@ -112,52 +112,32 @@ class CBuildBotTest(mox.MoxTestBase):
# self.mox.VerifyAll()
def testArchiveTestResults(self):
- """Test if we can archive the latest results dir as well as clean up."""
- self.mox.StubOutWithMock(os.path, 'exists')
- self.mox.StubOutWithMock(os, 'listdir')
- self.mox.StubOutWithMock(os, 'stat')
- self.mox.StubOutWithMock(shutil, 'rmtree')
- self.mox.StubOutWithMock(shutil, 'copytree')
- self.mox.StubOutWithMock(shutil, 'copyfile')
-
- # Create mock stats so that file2 is older than file1.
- dir_listing = ['file1', 'file2']
- stat1 = self.mox.CreateMock(posix.stat_result)
- stat2 = self.mox.CreateMock(posix.stat_result)
- stat1.st_mtime = 99999
- stat2.st_mtime = 10000
-
+ """Test if we can archive the latest results dir to Google Storage."""
# Set vars for call.
buildroot = '/fake_dir'
+ board = 'fake-board'
test_results_dir = 'fake_results_dir'
+ gsutil_path='/fake/gsutil/path'
archive_dir = 1234
- board = 'fake-board'
-
- # Expected calls.
- os.path.exists(cbuildbot.ARCHIVE_BASE).AndReturn(True)
- os.listdir(os.path.join(cbuildbot.ARCHIVE_BASE)).AndReturn(dir_listing)
- os.stat(os.path.join(cbuildbot.ARCHIVE_BASE, 'file1')).AndReturn(stat1)
- os.stat(os.path.join(cbuildbot.ARCHIVE_BASE, 'file2')).AndReturn(stat2)
- # Should remove the oldest path.
- shutil.rmtree(os.path.join(cbuildbot.ARCHIVE_BASE, 'file2'))
+ acl = 'fake_acl'
+ num_retries = 5
# Convenience variables to make archive easier to understand.
path_to_results = os.path.join(buildroot, 'chroot', test_results_dir)
- path_to_archive_dir = os.path.join(cbuildbot.ARCHIVE_BASE, str(archive_dir))
path_to_image = os.path.join(buildroot, 'src', 'build', 'images', board,
'latest', 'chromiumos_qemu_image.bin')
- # Archive logic
- os.path.exists(path_to_archive_dir).AndReturn(False)
+
cbuildbot.RunCommand(['sudo', 'chmod', '-R', '+r', path_to_results])
- shutil.copytree(path_to_results, path_to_archive_dir)
+ cbuildbot.RunCommand([gsutil_path, 'cp', '-R', path_to_results,
+ archive_dir], num_retries=num_retries)
+ cbuildbot.RunCommand([gsutil_path, 'setacl', acl, archive_dir])
cbuildbot.RunCommand(['gzip', '-f', '--fast', path_to_image])
- shutil.copyfile(path_to_image + '.gz', os.path.join(
- path_to_archive_dir, 'chromiumos_qemu_image.bin.gz'))
+ cbuildbot.RunCommand([gsutil_path, 'cp', path_to_image + '.gz',
+ archive_dir], num_retries=num_retries)
self.mox.ReplayAll()
- cbuildbot.ARCHIVE_COUNT = 2 # Set equal to list size so we force clean up.
- cbuildbot._ArchiveTestResults(buildroot, board, archive_dir,
- test_results_dir)
+ cbuildbot._ArchiveTestResults(buildroot, board, test_results_dir,
+ gsutil_path, archive_dir, acl)
self.mox.VerifyAll()
# TODO(sosa): Remove once we un-comment above.
« no previous file with comments | « bin/cbuildbot.py ('k') | lib/cros_build_lib.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698