Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dbt debug avoid dependency checking #3735

Closed
leoch20 opened this issue Aug 12, 2021 · 3 comments
Closed

dbt debug avoid dependency checking #3735

leoch20 opened this issue Aug 12, 2021 · 3 comments
Labels
enhancement New feature or request stale Issues that have gone stale

Comments

@leoch20
Copy link

leoch20 commented Aug 12, 2021

Describe the feature

We deployed dbt in AWS managed Airflow MWAA. Currently we perform some system checks to ensure the deployment is successful. Among them is dbt debug . The issue is that git is not install in MWAA and there is no reason to install it (please correct me if there is a need to have it). Because git is not install, every time we run the system checks dbt debug fails.

It would be great if we could manually bypass checking the dependencies so that if debug fails we know it is not because of missing git.

@leoch20 leoch20 added enhancement New feature or request triage labels Aug 12, 2021
@jtcohen6
Copy link
Contributor

@leoch20 Thanks for opening! Honestly, I'm of two minds about this one.

On the one hand, you're completely right that it's possible to use dbt without having git installed, assuming you don't need to install any git-based packages.

On the other hand, dbt debug is really intended as a helper check for CLI users who have installed dbt locally, to help them make sure they're ready to start up with dbt development—not a step in automated orchestration processes. I can appreciate that, if something is going to fail in Airflow (e.g. a faulty database connection), it's nicer to fail with the clear error early on, rather than a slightly more-buried error during the early steps of a run. But it's going to fail either way.

(I could imagine a local user who doesn't want to have git installed, but that seems much less likely.)

Having said all that, the codepath here is quite straightforward:
https://github.com/dbt-labs/dbt/blob/d2dbe6afe4ecff25e4fa8ba471716bc8bd0ef760/core/dbt/task/debug.py#L124-L126

I don't think it would be a big lift to add debug task flags like:

dbt debug --skip-configuration
dbt debug --skip-dependencies
dbt debug --skip-connection

And check before running each check:

    if not self.args.skip_configuration:
        self.test_configuration()
    if not self.args.skip_dependencies:
        self.test_dependencies()
    if not self.args.skip_connection:
        self.test_connection()

So, if this is something you'd like to open a PR for, I'd be happy to review it.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 3, 2022

This issue has been marked as Stale because it has been open for 180 days with no activity. If you would like the issue to remain open, please remove the stale label or comment on the issue, or it will be closed in 7 days.

@github-actions github-actions bot added the stale Issues that have gone stale label Jun 3, 2022
@github-actions
Copy link
Contributor

Although we are closing this issue as stale, it's not gone forever. Issues can be reopened if there is renewed community interest; add a comment to notify the maintainers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request stale Issues that have gone stale
Projects
None yet
Development

No branches or pull requests

2 participants