schemacrawler / SchemaCrawler

Free database schema discovery and comprehension tool
http://www.schemacrawler.com/
Other
1.62k stars 200 forks source link

Set <run>false</run> for all linters by default #245

Closed bheemreddy181-zz closed 5 years ago

bheemreddy181-zz commented 5 years ago

Describe the solution you'd like Can we have all the linters by default set to false , so that who ever uses , can just have their own config-xml and their table patterns to switch the linter on. At-least from my understanding everyone use their own xml now.

Right people who ever are not interested/doesn't want to run these linters have a large XML which kind of gives a overhead to understand things. I know switching them off is a one time thing. Cases where if people want to just run one linter they have to explicitly set false to everything else.

Describe alternatives you've considered Set false for all linters by default or give a provision for user to set them false by passing a variable like --disbleallLinters = true and overwrite the linters with the xml passed from command line

Then I will have a small XML on my app like below.

screen shot 2019-03-06 at 3 56 46 pm

bheemreddy181-zz commented 5 years ago

@sualeh want to hear your thoughts on this ?

sualeh commented 5 years ago

@bheemreddy181 - I think it is a good idea.

bheemreddy181-zz commented 5 years ago

@sualeh Is there a way you can develop this app agnostic, like even if I add additional-lints package to lib folder it should switch of all the linters from additional lints as well so that no code changes needed there ?

sualeh commented 5 years ago

@bheemreddy181 - yes, I should be able to do that.

bheemreddy181-zz commented 5 years ago

As we started on-boarding this tool for our APP’s , is there a ETA you can give me on this? I am not really sure I can ask this but if you can ? @sualeh

adriens commented 5 years ago

:+1: for this feature request, great idea. @bheemreddy181

bheemreddy181-zz commented 5 years ago

Thanks @sualeh for this quick development.

adriens commented 5 years ago

https://github.com/adriens/chocolatey-schemacrawler/issues/40

bheemreddy181-zz commented 5 years ago

This is working as expected

./schemacrawler.sh -server=postgresql -database=test -user=bvennapureddy -password='' -linterconfigs=/test/bin/schemacrawler-linter-configs.xml -c=lint -lintdispatch=terminate_system -runalllinters=false

Lints
========================================================================

portfolio.foos                                                   [table]
------------------------------------------------------------------------

                                                        [lint, critical]
    no primary key

Summary of schema lints:
[critical]*     1- no primary key

With the Above Linter-configs