You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ma...@apache.org on 2024/02/12 17:40:13 UTC
(superset) 01/01: fix(ci): Docker master builds fail while checking version
This is an automated email from the ASF dual-hosted git repository.
maximebeauchemin pushed a commit to branch fix_builds
in repository https://gitbox.apache.org/repos/asf/superset.git
commit 87a54a11512e4843101fafb26fff977a2b86ae66
Author: Maxime Beauchemin <ma...@gmail.com>
AuthorDate: Mon Feb 12 09:30:12 2024 -0800
fix(ci): Docker master builds fail while checking version
In https://github.com/apache/superset/pull/27055, I broke the master
builds while making the `run_cmd` method raise if it gets a non-zero exit
status. Turned out to only fail while in the `pull_request` context.
This is the change: https://github.com/apache/superset/pull/27055/files#diff-3cf86f687684a2c690521532de75a831def641338f5a9ec1da8add94714def4cR44-R45
This is the observed error in master build
```
Traceback (most recent call last):
{...REDACTED...}
File "/home/runner/work/superset/superset/./scripts/build_docker.py", line 76, in is_latest_release
output = run_cmd(f"./scripts/tag_latest_release.sh {release} --dry-run") or ""
File "/home/runner/work/superset/superset/./scripts/build_docker.py", line 45, in run_cmd
raise subprocess.CalledProcessError(process.returncode, command, output)
subprocess.CalledProcessError: Command './scripts/tag_latest_release.sh master --dry-run' returned non-zero exit status 1.
Error: Process completed with exit code 1.
```
This disregards the exit code the `tag_latest_release.sh` since it seems
to be return error codes in expected situations.
---
scripts/build_docker.py | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/scripts/build_docker.py b/scripts/build_docker.py
index 2a9e676d92..00023afc0a 100755
--- a/scripts/build_docker.py
+++ b/scripts/build_docker.py
@@ -28,7 +28,7 @@ CACHE_REPO = f"{REPO}-cache"
BASE_PY_IMAGE = "3.9-slim-bookworm"
-def run_cmd(command: str) -> str:
+def run_cmd(command: str, raise_on_failure: bool = True) -> str:
process = subprocess.Popen(
command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True
)
@@ -41,9 +41,8 @@ def run_cmd(command: str) -> str:
process.wait() # Wait for the subprocess to finish
- if process.returncode != 0:
+ if process.returncode != 0 and raise_on_failure:
raise subprocess.CalledProcessError(process.returncode, command, output)
-
return output
@@ -73,7 +72,13 @@ def get_build_context_ref(build_context: str) -> str:
def is_latest_release(release: str) -> bool:
- output = run_cmd(f"./scripts/tag_latest_release.sh {release} --dry-run") or ""
+ output = (
+ run_cmd(
+ f"./scripts/tag_latest_release.sh {release} --dry-run",
+ raise_on_failure=False,
+ )
+ or ""
+ )
return "SKIP_TAG::false" in output