diff --git a/services/webapp/code/rosetta/core_app/admin.py b/services/webapp/code/rosetta/core_app/admin.py index b69c3b232dc099e5e241bd162bf974503d6dd1eb..819a338386178021c1b0e3e17075f93740d63d28 100644 --- a/services/webapp/code/rosetta/core_app/admin.py +++ b/services/webapp/code/rosetta/core_app/admin.py @@ -2,10 +2,14 @@ from django.contrib import admin from .models import Profile, LoginToken, Task, Container, Computing, Storage, KeyPair, Page +# Define a extra "ModelAdmin" for the Container model to allow "save as" to easily duplicate containers +class ContainerForAdmin(admin.ModelAdmin): + save_as = True + admin.site.register(Profile) admin.site.register(LoginToken) admin.site.register(Task) -admin.site.register(Container) +admin.site.register(Container, ContainerForAdmin) admin.site.register(Computing) admin.site.register(Storage) admin.site.register(KeyPair) diff --git a/services/webapp/code/rosetta/core_app/management/commands/core_app_populate.py b/services/webapp/code/rosetta/core_app/management/commands/core_app_populate.py index a945d05a3f0f50ba4d15023e6f40b5698a347034..b3ac3be5cd48406153cfe001228d9e9be818a0fb 100644 --- a/services/webapp/code/rosetta/core_app/management/commands/core_app_populate.py +++ b/services/webapp/code/rosetta/core_app/management/commands/core_app_populate.py @@ -129,7 +129,7 @@ to provide help, news and informations on your deployment. Or you can just ignor # Minimal Desktop Container.objects.create(user = None, - name = 'Minimal Desktop ', + name = 'Minimal Desktop', description = 'A minimal desktop environment providing basic window management functionalities and a terminal.', registry = 'docker.io', image_name = 'sarusso/minimaldesktop', diff --git a/services/webapp/code/rosetta/core_app/models.py b/services/webapp/code/rosetta/core_app/models.py index c8eaa4568cd496dc9a4743b9c0c35b9e7b902c8b..e675c1d3202b6ffb1084e7e43bcb25fc2afb37b8 100644 --- a/services/webapp/code/rosetta/core_app/models.py +++ b/services/webapp/code/rosetta/core_app/models.py @@ -157,8 +157,9 @@ class Container(models.Model): @property def family_id(self): - return base64.b64encode('{}\t{}\t{}'.format(self.name, self.registry, self.image_name).encode('utf8')).decode('utf8') - + id_as_str = '{}\t{}\t{}'.format(self.name, self.registry, self.image_name) + id_as_base64_str = base64.b64encode(id_as_str.encode('utf8')).decode('utf8') + return id_as_base64_str @property def color(self):