Ensure that spoc-app installs layers in correct order, closes #1
This commit is contained in:
parent
0614c15e3e
commit
54c12759ee
@ -34,7 +34,8 @@ def install(app_name):
|
|||||||
for container in repo_online.get_app(app_name)['containers'].values():
|
for container in repo_online.get_app(app_name)['containers'].values():
|
||||||
required_images.extend(repo_online.get_image(container['image'])['layers'])
|
required_images.extend(repo_online.get_image(container['image'])['layers'])
|
||||||
local_images = repo_local.get_images()
|
local_images = repo_local.get_images()
|
||||||
for layer in set(required_images):
|
# Layers need to be downloaded in correct order
|
||||||
|
for layer in list(dict.fromkeys(required_images)):
|
||||||
if layer not in local_images:
|
if layer not in local_images:
|
||||||
queue.download_image(Image(layer, False))
|
queue.download_image(Image(layer, False))
|
||||||
queue.install_app(App(app_name, False, False))
|
queue.install_app(App(app_name, False, False))
|
||||||
@ -48,7 +49,8 @@ def update(app_name):
|
|||||||
for container in repo_online.get_app(app_name)['containers'].values():
|
for container in repo_online.get_app(app_name)['containers'].values():
|
||||||
required_images.extend(repo_online.get_image(container['image'])['layers'])
|
required_images.extend(repo_online.get_image(container['image'])['layers'])
|
||||||
local_images = repo_local.get_images()
|
local_images = repo_local.get_images()
|
||||||
for layer in set(required_images):
|
# Layers need to be downloaded in correct order
|
||||||
|
for layer in list(dict.fromkeys(required_images)):
|
||||||
if layer not in local_images:
|
if layer not in local_images:
|
||||||
queue.download_image(Image(layer, False))
|
queue.download_image(Image(layer, False))
|
||||||
queue.update_app(App(app_name, False))
|
queue.update_app(App(app_name, False))
|
||||||
|
Loading…
Reference in New Issue
Block a user