This is an automated email from the ASF dual-hosted git repository.

pierrejeambrun pushed a commit to branch v3-1-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/v3-1-test by this push:
     new f8e4e46a333 [v3-1-test] Fix Simple Auth Manager UI dev server not 
starting in breeze (#60932) (#61107)
f8e4e46a333 is described below

commit f8e4e46a333bb12802aed1e3a0cd4386ed5d0dde
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Tue Jan 27 15:12:40 2026 +0100

    [v3-1-test] Fix Simple Auth Manager UI dev server not starting in breeze 
(#60932) (#61107)
    
    * Fix Simple Auth Manager UI dev server not starting in breeze
    
    * Redirected prek output to file in dev mode
    (cherry picked from commit ac765a68ba541fcbfa5bd2074948e8852b658b81)
    
    Co-authored-by: Yeonguk Choo <[email protected]>
---
 dev/breeze/src/airflow_breeze/utils/run_utils.py | 17 ++++++++++-------
 scripts/ci/prek/compile_ui_assets_dev.py         |  8 ++++++--
 2 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/dev/breeze/src/airflow_breeze/utils/run_utils.py 
b/dev/breeze/src/airflow_breeze/utils/run_utils.py
index cfd9e9e179c..35052f44e07 100644
--- a/dev/breeze/src/airflow_breeze/utils/run_utils.py
+++ b/dev/breeze/src/airflow_breeze/utils/run_utils.py
@@ -412,13 +412,16 @@ def _run_compile_internally(
 
     env = os.environ.copy()
     if dev:
-        return run_command(
-            command_to_execute,
-            check=False,
-            no_output_dump_on_exception=True,
-            text=True,
-            env=env,
-        )
+        with open(UI_ASSET_OUT_DEV_MODE_FILE, "w") as output_file:
+            return run_command(
+                command_to_execute,
+                check=False,
+                no_output_dump_on_exception=True,
+                text=True,
+                env=env,
+                stderr=subprocess.STDOUT,
+                stdout=output_file,
+            )
     compile_lock.parent.mkdir(parents=True, exist_ok=True)
     compile_lock.unlink(missing_ok=True)
     try:
diff --git a/scripts/ci/prek/compile_ui_assets_dev.py 
b/scripts/ci/prek/compile_ui_assets_dev.py
index 8e98a0708f4..903e7f5e98d 100755
--- a/scripts/ci/prek/compile_ui_assets_dev.py
+++ b/scripts/ci/prek/compile_ui_assets_dev.py
@@ -18,6 +18,7 @@
 from __future__ import annotations
 
 import os
+import signal
 import subprocess
 import sys
 from pathlib import Path
@@ -79,10 +80,9 @@ if __name__ == "__main__":
             stderr=subprocess.STDOUT,
         )
 
-    subprocess.run(
+    subprocess.Popen(
         ["pnpm", "dev"],
         cwd=os.fspath(UI_DIRECTORY),
-        check=True,
         env=env,
         stdout=open(UI_ASSET_OUT_DEV_MODE_FILE, "a"),
         stderr=subprocess.STDOUT,
@@ -104,3 +104,7 @@ if __name__ == "__main__":
         stdout=open(SIMPLE_AUTH_MANAGER_UI_ASSET_OUT_DEV_MODE_FILE, "a"),
         stderr=subprocess.STDOUT,
     )
+
+    # Keep script alive so child processes stay in the same process group.
+    # When breeze exits, kill_process_group() will terminate all processes 
together.
+    signal.pause()

Reply via email to