turbot / steampipe-plugin-csv

Use SQL to instantly query data from CSV files. Open source CLI. No DB required.
https://hub.steampipe.io/plugins/turbot/csv
Apache License 2.0
19 stars 4 forks source link

Default configuration breaks steampipe #11

Closed manics closed 2 years ago

manics commented 2 years ago

Describe the bug The default configuration file installed by the plugin is incomplete, and breaks steampipe.

The error failed to start plugin 'csv': paths must be configured occurs even if the CSV plugin isn't called.

Steampipe version (steampipe -v) 0.11.0

Plugin version (steampipe plugin list) 0.1.0

To reproduce

$ steampipe --version
steampipe version 0.11.0

$ steampipe plugin list
+------+---------+-------------+
| Name | Version | Connections |
+------+---------+-------------+
+------+---------+-------------+

$ steampipe plugin install csv

Installed plugin: csv v0.1.0
Documentation:    https://hub.steampipe.io/plugins/turbot/csv

$ steampipe plugin list
Error: Plugin Listing failed - failed to start plugin 'csv': paths must be configured

Expected behavior The plugin should not break steampipe after installation. For example:

Additional context Add any other context about the problem here.

rajlearner17 commented 2 years ago

@manics Thanks for trying Steampipe. Disappointing to see you faced inconvenience after installing the CSV plugin, which requires setting the path to proceed with the steampipe plugin list command as you have mentioned.

Hope for the time being you can provide the paths value in the .spc file to continue your journey.

We are looking into it with high priority to take appropriate action. Feel raise any other issues/suggestions with us.

cbruno10 commented 2 years ago

Hey @manics , sorry you faced an issue after installing the plugin!

We took a look into the issue and found we had a regression in Steampipe v0.11.0 around how it behaves when a plugin fails to load. In Steampipe v0.10.0, if it encounters a plugin failure, it'll only emit a warning and not hard fail; however in Steampipe v0.11.0, it throws an error and aborts like you're seeing. We're fixing this issue in an upcoming release later this week so it'll behave like it did in v0.10.0.

That being said, the CSV plugin still should not throw warnings immediately after being installed, so we're working on updating default plugin behaviour and should have an update ready for the plugin later this week.

manics commented 2 years ago

Thanks for the update!

cbruno10 commented 2 years ago

Hey @manics , sorry for the late reply on this one! We've made a few updates in the CLI and in this plugin that should hopefully help with this issue:

We've updated Steampipe CLI to fix the regression of invalid plugin configs causing the service to stop, so if you update to the latest version (v0.13.5), you should not see Steampipe crashing.

Also, we've updated the default behaviour in the csv.spc config file so paths defaults to [ *.csv ], so it'll load the CSV files in your current working directory (CWD). The paths in the paths args are now resolved relative to the current working directory. For easier searching, paths may include wildcards and also now support ** for recursive matching.

Can you please try updating the CSV plugin, which adds support for relative file searching? If your csv.spc file already has paths set, you may not need to update it after updating the plugin, but you can if you want to load files from your CWD/other relative paths.

If you have anymore questions or encounter more issues, please let us know!