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.py b/api/controller/artifacts.py
index 60fe1bc..239af7a 100644
--- a/api/controller/artifacts.py
+++ b/api/controller/artifacts.py
@@ -12,7 +12,6 @@
from chromite.api import validate
from chromite.api.controller import controller_util
from chromite.cbuildbot import commands
-from chromite.cbuildbot.stages import vm_test_stages
from chromite.lib import build_target_util
from chromite.lib import chroot_lib
from chromite.lib import constants
@@ -308,8 +307,7 @@
output_proto.artifacts.add().path = file_name
-@validate.require('chroot.path', 'sysroot.path', 'test_results_dir',
- 'output_dir')
+@validate.require('chroot.path', 'test_results_dir', 'output_dir')
def BundleVmFiles(input_proto, output_proto):
"""Tar VM disk and memory files.
@@ -317,14 +315,12 @@
input_proto (SysrootBundleRequest): The input proto.
output_proto (BundleResponse): The output proto.
"""
- chroot = input_proto.chroot.path
- sysroot = input_proto.sysroot.path.lstrip(os.sep)
- test_results_dir = input_proto.test_results_dir.lstrip(os.sep)
+ chroot = controller_util.ParseChroot(input_proto.chroot)
+ test_results_dir = input_proto.test_results_dir
output_dir = input_proto.output_dir
- # TODO(crbug.com/954344): Replace with a chromite/service implementation.
- image_dir = os.path.join(chroot, sysroot, test_results_dir)
- archives = vm_test_stages.ArchiveVMFilesFromImageDir(image_dir, output_dir)
+ archives = artifacts.BundleVmFiles(
+ chroot, test_results_dir, output_dir)
for archive in archives:
output_proto.artifacts.add().path = archive