databricks / cli

Databricks CLI
Other
148 stars 56 forks source link

[Feature] Do not warn about no files to sync #1663

Open svatopluk-sperka opened 3 months ago

svatopluk-sperka commented 3 months ago

Hi Databricks,

we use DABs to deploy Scala-based project that only needs its JAR artifact to run. So we do not need any files to sync to Databricks workspace. However, when we exclude all files from sync via

sync:
  exclude:
    - "*"

we get Warning: There are no files to sync, please check your .gitignore and sync.exclude configuration when validating the bundle. This forces us to add some random file so that validation succeeds.

As I understand, it is a common need to sync some files. But it would be great if there was a way to tell the DABs that I really do not want to sync anything and it is intentional. What comes to mind is an ability to silence this warning so that sync does not become more complicated than it is.

Thank you for considering this!

pietern commented 2 months ago

Thanks for raising this.

There is a somewhat related change in progress to enable specifying the paths to synchronize (as opposed to always defaulting to . relative to the bundle root directory). This field can also be set to nil or an empty sequence (example) and it will have the same outcome as what you're looking for.

benedikt-mayer commented 2 months ago

Happy to see the mentioned change to specifying paths, but: We have the same use case as @svatopluk-sperka, but with these sync settings from your example:

sync:
  paths: []

I'm still getting the message (with Databricks CLI 0.227.0): Warning: There are no files to sync, please check your .gitignore We're deploying an artifact wheel, so this is a bit confusing for our developers.

andrewnester commented 2 months ago

Warning itself should be handled separately because using sync.paths is just a new one to instruct to not sync any path cc @pietern