From e12f55aa2116089b072fa18436b4f8c2fe370703 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Budai?= Date: Wed, 2 Oct 2019 14:41:56 +0200 Subject: [PATCH] tests: print stdout from osbuild when it fails --- .travis.yml | 2 +- test/osbuildtest.py | 20 +++++++++++--------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index cfaa50ea..c10313bb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -37,4 +37,4 @@ jobs: script: sudo env "PATH=$PATH" python3 -m test --case locale --build-pipeline samples/build-from-yum.json - name: assemblers before_install: sudo apt-get install -y systemd-container yum tar - script: sudo python3 -m unittest test.test_assemblers + script: sudo env "PATH=$PATH" "OSBUILD_TEST_BUILD_PIPELINE=samples/build-from-yum.json" python3 -m unittest test.test_assemblers diff --git a/test/osbuildtest.py b/test/osbuildtest.py index 7da90914..5863b72d 100644 --- a/test/osbuildtest.py +++ b/test/osbuildtest.py @@ -1,9 +1,7 @@ - import json import os import shutil import subprocess -import sys import tempfile import unittest @@ -29,14 +27,18 @@ class TestCase(unittest.TestCase): shutil.rmtree(self.store) def run_osbuild(self, pipeline, input=None): - osbuild_cmd = ["python3", "-m", "osbuild", "--json", "--store", self.store, "--libdir", ".", pipeline] + osbuild_cmd = ["python3", "-m", "osbuild", "--json", "--store", self.store, "--libdir", ".", pipeline] - build_pipeline = os.getenv("OSBUILD_TEST_BUILD_PIPELINE", None) - if build_pipeline: - osbuild_cmd.append("--build-pipeline") - osbuild_cmd.append(build_pipeline) + build_pipeline = os.getenv("OSBUILD_TEST_BUILD_PIPELINE", None) + if build_pipeline: + osbuild_cmd.append("--build-pipeline") + osbuild_cmd.append(build_pipeline) + try: r = subprocess.run(osbuild_cmd, encoding="utf-8", input=input, stdout=subprocess.PIPE, check=True) + except subprocess.CalledProcessError as e: + print(e.stdout) + raise e from None - result = json.loads(r.stdout) - return result["tree_id"], result["output_id"] + result = json.loads(r.stdout) + return result["tree_id"], result["output_id"]