Calling sqlmesh run
equivalent directly from the code
#4468
-
Is there a cleaner/more proper way of doing this than:
? I'm trying to get this done as a part of the pipeline I'm running (the last step of it) and it causes some problems. Especially:
|
Beta Was this translation helpful? Give feedback.
Answered by
jukiewiczm
May 27, 2025
Replies: 1 comment
-
For anyone interested, this is what I ended up doing to catch the errors and keep the logging consistent. from sqlmesh.core.console import CaptureTerminalConsole, RichConsole
from sqlmesh.core.context import Context
console = CaptureTerminalConsole(RichConsole())
ctx = Context()
ctx.console = console
completion_status = ctx.run()
logger.info(f"Run finished.\nLogged output:\n{console.captured_output}")
if completion_status.is_failure:
raise Exception(f"{console.captured_errors}") |
Beta Was this translation helpful? Give feedback.
0 replies
Answer selected by
jukiewiczm
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
For anyone interested, this is what I ended up doing to catch the errors and keep the logging consistent.