Handle WindowsError when can't create .pioenvs directory

This commit is contained in:
Ivan Kravets
2016-08-26 01:42:05 +03:00
parent 6ff99e4ddd
commit de62e5082e
2 changed files with 12 additions and 8 deletions

View File

@@ -63,7 +63,7 @@ def cli(ctx, # pylint: disable=R0913,R0914
click.secho(
"Can not remove temporary directory `%s`. Please remove "
"`.pioenvs` directory from the project manually to avoid "
"build issues" % util.get_projectpioenvs_dir(),
"build issues" % util.get_projectpioenvs_dir(force=True),
fg="yellow")
config = util.load_project_config()

View File

@@ -218,9 +218,10 @@ def get_projecttest_dir():
"test"))
def get_projectpioenvs_dir():
def get_projectpioenvs_dir(force=False):
path = _get_projconf_option_dir("envs_dir",
join(get_project_dir(), ".pioenvs"))
try:
if not isdir(path):
os.makedirs(path)
dontmod_path = join(path, "do-not-modify-files-here.url")
@@ -230,6 +231,9 @@ def get_projectpioenvs_dir():
[InternetShortcut]
URL=http://docs.platformio.org/en/stable/projectconf.html#envs-dir
""")
except Exception as e:
if not force:
raise Exception(e)
return path