artifacts: allow missing tarball in BundleTastFiles
Now that recipes always attempts to upload artifacts, missing TastFiles
are less of an issue.
BUG=chromium:1086630
TEST=unit tests pass
Change-Id: I3ad0c8e33c426e4446ddc2dc92a22fd394a38519
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/2241735
Commit-Queue: LaMont Jones <lamontjones@chromium.org>
Tested-by: LaMont Jones <lamontjones@chromium.org>
Reviewed-by: Alex Klein <saklein@chromium.org>
Reviewed-by: David Burger <dburger@chromium.org>
diff --git a/api/controller/artifacts.py b/api/controller/artifacts.py
index b4da262..ba191b0 100644
--- a/api/controller/artifacts.py
+++ b/api/controller/artifacts.py
@@ -246,12 +246,10 @@
archive = artifacts.BundleTastFiles(chroot, sysroot, output_dir)
- if archive is None:
- cros_build_lib.Die(
- 'Could not bundle Tast files. '
- 'No Tast directories found for %s.', target)
-
- output_proto.artifacts.add().path = archive
+ if archive:
+ output_proto.artifacts.add().path = archive
+ else:
+ logging.warning('Found no tast files for %s.', target)
def _BundlePinnedGuestImagesResponse(input_proto, output_proto, _config):
diff --git a/api/controller/artifacts_unittest.py b/api/controller/artifacts_unittest.py
index e231870..1d6267f 100644
--- a/api/controller/artifacts_unittest.py
+++ b/api/controller/artifacts_unittest.py
@@ -309,12 +309,12 @@
os.path.join(self.output_dir, 'tast_bundles.tar.gz'))
def testBundleTastFilesNoLogs(self):
- """BundleTasteFiles dies when no tast files found."""
+ """BundleTasteFiles succeeds when no tast files found."""
self.PatchObject(commands, 'BuildTastBundleTarball',
return_value=None)
- with self.assertRaises(cros_build_lib.DieSystemExit):
- artifacts.BundleTastFiles(self.target_request, self.response,
- self.api_config)
+ artifacts.BundleTastFiles(self.target_request, self.response,
+ self.api_config)
+ self.assertEqual(list(self.response.artifacts), [])
def testBundleTastFilesLegacy(self):
"""BundleTastFiles handles legacy args correctly."""