Skip to content

Calling sqlmesh run equivalent directly from the code #4468

Closed Answered by jukiewiczm
jukiewiczm asked this question in Q&A
Discussion options

You must be logged in to vote

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}")

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by jukiewiczm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
1 participant
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy