Refactor artifacts.BundleVmFiles.

Have artifacts controller delegate to artifacts service.
Move ArchiveVMFilesFromImageDir into cros_build_lib.ArchiveFilesFromImageDir.

BUG=chromium:954344
TEST=manual,run_tests

Change-Id: I5a4d5ef2b801bcd35c91924003453dbde9dd0839
Signed-off-by: Michael Mortensen <mmortensen@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/1717004
Reviewed-by: Alex Klein <saklein@chromium.org>
diff --git a/api/controller/artifacts_unittest.py b/api/controller/artifacts_unittest.py
index 5603c13..012ae33 100644
--- a/api/controller/artifacts_unittest.py
+++ b/api/controller/artifacts_unittest.py
@@ -13,7 +13,6 @@
 from chromite.api.controller import artifacts
 from chromite.api.gen.chromite.api import artifacts_pb2
 from chromite.cbuildbot import commands
-from chromite.cbuildbot.stages import vm_test_stages
 from chromite.lib import chroot_lib
 from chromite.lib import constants
 from chromite.lib import cros_build_lib
@@ -527,16 +526,6 @@
     with self.assertRaises(cros_build_lib.DieSystemExit):
       artifacts.BundleVmFiles(in_proto, out_proto)
 
-  def testSysrootMissing(self):
-    """Test error handling for missing sysroot."""
-    in_proto = self._GetInput(chroot='/chroot/dir',
-                              test_results_dir='/test/results',
-                              output_dir='/tmp/output')
-    out_proto = self._GetOutput()
-
-    with self.assertRaises(cros_build_lib.DieSystemExit):
-      artifacts.BundleVmFiles(in_proto, out_proto)
-
   def testTestResultsDirMissing(self):
     """Test error handling for missing test results directory."""
     in_proto = self._GetInput(chroot='/chroot/dir', sysroot='/build/board',
@@ -562,13 +551,12 @@
                               output_dir='/tmp/output')
     out_proto = self._GetOutput()
     expected_files = ['/tmp/output/f1.tar', '/tmp/output/f2.tar']
-    patch = self.PatchObject(vm_test_stages, 'ArchiveVMFilesFromImageDir',
+    patch = self.PatchObject(artifacts_svc, 'BundleVmFiles',
                              return_value=expected_files)
 
     artifacts.BundleVmFiles(in_proto, out_proto)
 
-    patch.assert_called_with('/chroot/dir/build/board/test/results',
-                             '/tmp/output')
+    patch.assert_called_with(mock.ANY, '/test/results', '/tmp/output')
 
     # Make sure we have artifacts, and that every artifact is an expected file.
     self.assertTrue(out_proto.artifacts)