databricks-cli icon indicating copy to clipboard operation
databricks-cli copied to clipboard

ValueError thrown on configuration if password contains a percent "%" symbol

Open philMarius opened this issue 5 years ago • 4 comments

Steps to replicate:

  • pip install databricks-cli
  • Run databricks configure in the terminal
  • Enter Host and Username correctly
  • Input password containing a percentage "%" symbol

Note: I am using miniconda for my installation of Python.

Error thrown below is for a password of just "%":

Traceback (most recent call last):
  File "/home/user/miniconda3/bin/databricks", line 8, in <module>
    sys.exit(cli())
  File "/home/user/miniconda3/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/user/miniconda3/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/user/miniconda3/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/user/miniconda3/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/user/miniconda3/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/user/miniconda3/lib/python3.7/site-packages/databricks_cli/configure/cli.py", line 78, in configure_cli
    _configure_cli_password(profile, insecure_str)
  File "/home/user/miniconda3/lib/python3.7/site-packages/databricks_cli/configure/cli.py", line 60, in _configure_cli_password
    update_and_persist_config(profile, new_config)
  File "/home/user/miniconda3/lib/python3.7/site-packages/databricks_cli/configure/provider.py", line 97, in update_and_persist_config
    _set_option(raw_config, profile, PASSWORD, databricks_config.password)
  File "/home/user/miniconda3/lib/python3.7/site-packages/databricks_cli/configure/provider.py", line 73, in _set_option
    raw_config.set(profile, option, value)
  File "/home/user/miniconda3/lib/python3.7/configparser.py", line 1198, in set
    super().set(section, option, value)
  File "/home/user/miniconda3/lib/python3.7/configparser.py", line 893, in set
    value)
  File "/home/user/miniconda3/lib/python3.7/configparser.py", line 402, in before_set
    "position %d" % (value, tmp_value.find('%')))
ValueError: invalid interpolation syntax in '%' at position 0

philMarius avatar Feb 11 '20 14:02 philMarius

Related to #103

philMarius avatar Feb 11 '20 14:02 philMarius

Any update on this?

Still doesn't work for me, went to change password and discovered that symbols are also required for password.

philMarius avatar May 21 '20 11:05 philMarius

This issue is also occurring for me on version 0.13.0, Python 3.8.5

ncoish avatar Oct 22 '20 21:10 ncoish

occurring for me as well.

gradientjanitor avatar Mar 08 '23 20:03 gradientjanitor