Skip to content

Commit c1ede8d

Browse files
committed
Handle juju config dirs with pathlib
1 parent 927cb8e commit c1ede8d

1 file changed

Lines changed: 6 additions & 8 deletions

File tree

juju/utils.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,19 +48,17 @@ def juju_config_dir():
4848
4949
"""
5050
# Check $JUJU_DATA first
51-
config_dir = os.environ.get('JUJU_DATA', None)
51+
config_dir = Path(os.environ.get('JUJU_DATA', None))
5252

5353
# Second option: $XDG_DATA_HOME for ~/.local/share
54-
if not config_dir:
55-
base_dir = os.environ.get('XDG_DATA_HOME', None)
56-
if base_dir is not None:
57-
config_dir = base_dir + '/juju'
54+
if not config_dir.exists():
55+
config_dir = Path(os.environ.get('XDG_DATA_HOME', '')) / 'juju'
5856

5957
# Third option: just set it to ~/.local/share/juju
60-
if not config_dir:
61-
config_dir = '~/.local/share/juju'
58+
if not config_dir.exists():
59+
config_dir = Path('~/.local/share/juju')
6260

63-
return os.path.abspath(os.path.expanduser(config_dir))
61+
return str(config_dir.expanduser().resolve())
6462

6563

6664
def juju_ssh_key_paths():

0 commit comments

Comments
 (0)