Procházet zdrojové kódy

upgrade: fix sysupgrade_restore

Use a temporary file since the execute command seems to allow at most
around 200000 bytes.
Mikael Magnusson před 1 rokem
rodič
revize
da526690c4
1 změnil soubory, kde provedl 4 přidání a 3 odebrání
  1. 4 3
      scripts/upgrade.py

+ 4 - 3
scripts/upgrade.py

@@ -90,11 +90,12 @@ class Container:
 
         def sysupgrade_backup(self, ):
                 return self.execute_with_output(['sysupgrade', '-b', '-'],
-                                                decode=False)
+                                                encoding='raw', decode=False)
 
         def sysupgrade_restore(self, data):
-                self.execute(['sysupgrade', '-r', '-'],
-                        stdin_payload=data, decode=False)
+                backup_file = '/tmp/lxd-upgrade.tar.gz'
+                self.files.put(backup_file, data)
+                self.execute(['sysupgrade', '-r', backup_file])
 
         def opkg_list_installed(self, ):
                 return self.execute_with_output(['opkg', 'list-installed'])