|
|
|
@ -145,7 +145,7 @@ class BuildStorage(object):
|
|
|
|
|
"""
|
|
|
|
|
Хранилище в котором находится информация о собираемом дистрибутиве
|
|
|
|
|
"""
|
|
|
|
|
ini_file = "/etc/calculate/builder.env"
|
|
|
|
|
ini_file = "/var/lib/calculate/calculate-builder/builder.env"
|
|
|
|
|
data_dir = path.join(builder_data, "mount")
|
|
|
|
|
|
|
|
|
|
def __init__(self, data_dir=None, ini_file=None):
|
|
|
|
@ -155,7 +155,7 @@ class BuildStorage(object):
|
|
|
|
|
self.data_dir = data_dir
|
|
|
|
|
if not path.exists(self.data_dir):
|
|
|
|
|
os.makedirs(self.data_dir)
|
|
|
|
|
self.locker = Locker(fn=self.ini_file)
|
|
|
|
|
self.locker = Locker(path.basename(self.ini_file))
|
|
|
|
|
|
|
|
|
|
def _get_ini(self):
|
|
|
|
|
ini = ConfigParser()
|
|
|
|
@ -185,8 +185,11 @@ class BuildStorage(object):
|
|
|
|
|
with self.locker:
|
|
|
|
|
ini = self._get_ini()
|
|
|
|
|
yield ini
|
|
|
|
|
with open(self.ini_file, 'w') as f:
|
|
|
|
|
ini.write(f)
|
|
|
|
|
if not ini.sections() and path.exists(self.ini_file):
|
|
|
|
|
os.unlink(self.ini_file)
|
|
|
|
|
else:
|
|
|
|
|
with open(self.ini_file, 'w') as f:
|
|
|
|
|
ini.write(f)
|
|
|
|
|
except LockError:
|
|
|
|
|
raise BuilderError("Failed to lock assemble.env")
|
|
|
|
|
|
|
|
|
|