Explorar o código

Move rename functionality into Container

Signed-off-by: Mazz Mosley <[email protected]>
Mazz Mosley %!s(int64=10) %!d(string=hai) anos
pai
achega
30a84f1be6
Modificáronse 2 ficheiros con 10 adicións e 8 borrados
  1. 9 0
      compose/container.py
  2. 1 8
      compose/service.py

+ 9 - 0
compose/container.py

@@ -192,6 +192,15 @@ class Container(object):
     def remove(self, **options):
         return self.client.remove_container(self.id, **options)
 
+    def rename_to_tmp_name(self):
+        """Rename the container to a hopefully unique temporary container name
+        by prepending the short id.
+        """
+        self.client.rename(
+            self.id,
+            '%s_%s' % (self.short_id, self.name)
+        )
+
     def inspect_if_not_inspected(self):
         if not self.has_been_inspected:
             self.inspect()

+ 1 - 8
compose/service.py

@@ -446,13 +446,6 @@ class Service(object):
             else:
                 raise
 
-    def _recreate_rename_container(self, container):
-        # Use a hopefully unique container name by prepending the short id
-        self.client.rename(
-            container.id,
-            '%s_%s' % (container.short_id, container.name)
-        )
-
     def recreate_container(self,
                            container,
                            timeout=DEFAULT_TIMEOUT,
@@ -466,7 +459,7 @@ class Service(object):
         log.info("Recreating %s" % container.name)
 
         self._recreate_stop_container(container, timeout)
-        self._recreate_rename_container(container)
+        container.rename_to_tmp_name()
         new_container = self.create_container(
             do_build=False,
             previous_container=container,