diff --git a/tools/ci/idf_ci_local/app.py b/tools/ci/idf_ci_local/app.py index 0a0f3c1f62..a0eaf2b7a2 100644 --- a/tools/ci/idf_ci_local/app.py +++ b/tools/ci/idf_ci_local/app.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2024-2025 Espressif Systems (Shanghai) CO LTD +# SPDX-FileCopyrightText: 2024-2026 Espressif Systems (Shanghai) CO LTD # SPDX-License-Identifier: Apache-2.0 import os import subprocess @@ -8,6 +8,7 @@ import typing as t from dynamic_pipelines.constants import BINARY_SIZE_METRIC_NAME from idf_build_apps import App from idf_build_apps import CMakeApp +from idf_build_apps.constants import BuildStatus from idf_build_apps.utils import rmdir from idf_ci_utils import idf_relpath @@ -29,7 +30,7 @@ class IdfCMakeApp(CMakeApp): # only upload in CI if os.getenv('CI_JOB_ID'): - subprocess.run( + result = subprocess.run( [ 'idf-ci', 'gitlab', @@ -39,6 +40,10 @@ class IdfCMakeApp(CMakeApp): stdout=sys.stdout, stderr=sys.stderr, ) + if result.returncode != 0: + self.build_status = BuildStatus.FAILED + self.build_comment = 'Failed to upload artifacts' + rmdir( self.build_path, exclude_file_patterns=['build_log.txt', 'size*.json'],