Don't use cache directory in home user dir with sudo

When running instack with sudo there are created directories owned
by root in users ~/.cache folder with is default for
DIB_IMAGE_CACHE. Then it's impossible to run DIB as user using
the same cache dir.

Change-Id: I42f5e6db85b3571ed2f393160214928f18c0b145
Closes-Bug: #1668939
This commit is contained in:
Sagi Shnaidman 2017-03-05 22:25:59 +02:00
parent 9e1f7099b2
commit 47c2bc4b4d
1 changed files with 3 additions and 1 deletions

View File

@ -92,7 +92,9 @@ def set_environment(tmp_dir):
os.environ['DIB_OFFLINE'] = ''
os.environ['DIB_INIT_SYSTEM'] = 'systemd'
os.environ['DIB_IMAGE_CACHE'] = (
'%s/.cache/image-create' % os.environ['HOME'])
'/root/.cache/image-create' if os.environ['USER'] == 'root'
else '%s/.cache/image-create' % os.environ['HOME']
)
os.environ['IMAGE_NAME'] = 'instack'
os.environ['PATH'] = "%s:/usr/local/bin" % os.environ['PATH']
os.environ.setdefault('DIB_DEFAULT_INSTALLTYPE', 'package')