From 15c5c36eafa41aca9267581b1e00fdce67cc4b36 Mon Sep 17 00:00:00 2001 From: Todd Gamblin Date: Thu, 11 Oct 2018 00:35:06 -0700 Subject: env: bugfix: spack env list won't fail if var/spack/environments doesn't exist --- lib/spack/spack/environment.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/spack/spack/environment.py b/lib/spack/spack/environment.py index bb7a50143d..06791ea2be 100644 --- a/lib/spack/spack/environment.py +++ b/lib/spack/spack/environment.py @@ -155,10 +155,15 @@ def config_dict(yaml_data): def list_environments(): """List the names of environments that currently exist.""" + # just return empty if the env path does not exist. A read-only + # operation like list should not try to create a directory. + if not os.path.exists(env_path): + return [] + candidates = sorted(os.listdir(env_path)) names = [] for candidate in candidates: - yaml_path = os.path.join(env_path, candidate, env_yaml_name) + yaml_path = os.path.join(root(candidate), env_yaml_name) if valid_env_name(candidate) and os.path.exists(yaml_path): names.append(candidate) return names -- cgit v1.2.3-70-g09d2