Восстановление lb-deepin сборки /Traceback (most recent call last):
File “/usr/lib64/python2.7/site-packages/calculate/core/server/func.py”, line 721, in run
res = method(*args)
File “/usr/lib64/python2.7/site-packages/calculate/builder/builder.py”, line 154, in restore_build
build.restore()
File “/usr/lib64/python2.7/site-packages/calculate/builder/build_storage.py”, line 141, in restore
self.save()
File “/usr/lib64/python2.7/site-packages/calculate/builder/build_storage.py”, line 113, in save
self.parent.save_build(self)
File “/usr/lib64/python2.7/site-packages/calculate/builder/build_storage.py”, line 204, in save_build
d = {Build.Parameter.Directory: build.distributive.getDirectory(),
File “/usr/lib64/python2.7/site-packages/calculate/install/distr.py”, line 296, in getDirectory
return self.convertToDirectory().directory
File “/usr/lib64/python2.7/site-packages/calculate/install/distr.py”, line 2045, in convertToDirectory
self._mountLiveImage()
File “/usr/lib64/python2.7/site-packages/calculate/install/distr.py”, line 2030, in _mountLiveImage
self.image_distro.convertToDirectory().getDirectory())
File “/usr/lib64/python2.7/site-packages/calculate/install/distr.py”, line 1725, in convertToDirectory
return self.convertToSquash().convertToDirectory()
File “/usr/lib64/python2.7/site-packages/calculate/install/distr.py”, line 1702, in convertToSquash
self._mountIso(self.file, mdirectory)
File “/usr/lib64/python2.7/site-packages/calculate/install/distr.py”, line 1683, in _mountIso
if “block special” in ftype:
TypeError: argument of type ‘NoneType’ is not iterable
…
TypeError:argument of type ‘NoneType’ is not iterable(calculate.install.distr:1683)
cl-builder-restore --id lb-w10
* Восстановление lb-w10 сборки /Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/calculate/core/server/func.py", line 754, in run
res = method(*args)
File "/usr/lib/python3.9/site-packages/calculate/builder/builder.py", line 156, in restore_build
build.restore()
File "/usr/lib/python3.9/site-packages/calculate/builder/build_storage.py", line 141, in restore
self.save()
File "/usr/lib/python3.9/site-packages/calculate/builder/build_storage.py", line 113, in save
self.parent.save_build(self)
File "/usr/lib/python3.9/site-packages/calculate/builder/build_storage.py", line 204, in save_build
d = {Build.Parameter.Directory: build.distributive.getDirectory(),
File "/usr/lib/python3.9/site-packages/calculate/install/distr.py", line 297, in getDirectory
return self.convertToDirectory().directory
File "/usr/lib/python3.9/site-packages/calculate/install/distr.py", line 2044, in convertToDirectory
self._mountLiveImage()
File "/usr/lib/python3.9/site-packages/calculate/install/distr.py", line 2029, in _mountLiveImage
self.image_distro.convertToDirectory().getDirectory())
File "/usr/lib/python3.9/site-packages/calculate/install/distr.py", line 1724, in convertToDirectory
return self.convertToSquash().convertToDirectory()
File "/usr/lib/python3.9/site-packages/calculate/install/distr.py", line 1701, in convertToSquash
self._mountIso(self.file, mdirectory)
File "/usr/lib/python3.9/site-packages/calculate/install/distr.py", line 1682, in _mountIso
if "block special" in ftype:
TypeError: argument of type 'NoneType' is not iterable
...
* TypeError:argument of type 'NoneType' is not iterable(calculate.install.distr:1682)
* Восстановление сборки не удалось
Да - на свежих утилитах.
Если перезагрузить комп где велась сборка.
Естественно говорит что сборка “нарушенная”
Причем если брать стандартный дистрибутив например CLDX - то все нормально отрабатывает.
Если свою сборку - то приведенная ошибка.
приходится делать cl-builder-break <своя сборка> и заново разворачивать свою сборку через cl-builder-prepare
Что странно - когда делаешь cl-builder-break <своя сборка> вылазит очень странная вешь, типа система i686
Прервать сборку
* Система: i686
* Идентификатор сборки: lb-base-desktop (нарушенный)
* Очистить после отключения: да
* Очистить бинарные пакеты после отключения: нет
* Прерывание lb-base-desktop сборки ... [ ok ]
* Сборка прервана успешно
Подготовить новую сборку
* Исходный образ: Calculate Linux Scratch 22 x86_64 20211212
* Профиль системы: distros:CLS/amd64/20
С архитектурой тут забавный момент - утилиты в данном случае просто смотрят, есть ли на сборке /lib64
Это просто для тултипа, не должно больше ни на что влиять.
Это тупо добавляет принт пути к файлу на который он ругается. Если после этого воспроизвести баг и в выводе он напишет “FILE PATH: <путь к файлу>” (я так понимаю к iso образу), то проблемы с файлом, нужно проверить что он существует и к нему есть доступ. Стоит затем еще попробовать сделать file -bLzk <путь к файлу>, утилиты пытаются парсить вывод этой штуки, может проблема в этом.
Если же после “FILE PATH:” пусто, то проблема где то глубже, по какой то причине путь к оригинальному iso не сохранился в сборке.
Чтобы убрать дебажное сообщение:
sed -i '/print("FILE PATH: " + file)/d' /usr/lib/python3.9/site-packages/calculate/install/distr.py