8567: Rename docker19-migrate to migrate-docker19 for consistency with
authorPeter Amstutz <peter.amstutz@curoverse.com>
Tue, 7 Mar 2017 14:26:17 +0000 (09:26 -0500)
committerPeter Amstutz <peter.amstutz@curoverse.com>
Tue, 14 Mar 2017 16:30:25 +0000 (12:30 -0400)
arv-migrate-docker19.  Add docstrict to migrate19() function.

docker/docker19-migrate/build.sh [deleted file]
docker/migrate-docker19/Dockerfile [moved from docker/docker19-migrate/Dockerfile with 100% similarity]
docker/migrate-docker19/README [moved from docker/docker19-migrate/README with 88% similarity]
docker/migrate-docker19/build.sh [new file with mode: 0755]
docker/migrate-docker19/dnd.sh [moved from docker/docker19-migrate/dnd.sh with 100% similarity]
docker/migrate-docker19/migrate.sh [moved from docker/docker19-migrate/migrate.sh with 100% similarity]
sdk/python/arvados/commands/keepdocker.py

diff --git a/docker/docker19-migrate/build.sh b/docker/docker19-migrate/build.sh
deleted file mode 100755 (executable)
index e6dc998..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec docker build -t arvados/docker19-migrate .
similarity index 88%
rename from docker/docker19-migrate/README
rename to docker/migrate-docker19/README
index 59fa6260ad937bbf3645bfc2ed80288d69315431..3fcd07ae12a76c5a320cd6861c7053610594be5c 100644 (file)
@@ -7,7 +7,8 @@ Requires Docker running on the local host.
 
 Usage:
 
-1) Run ./build.sh to create arvados/docker19-migrate Docker image.
+1) Run arvados/docker/migrate-docker19/build.sh to create
+arvados/migrate-docker19 Docker image.
 
 2) Set ARVADOS_API_HOST and ARVADOS_API_TOKEN to the cluster you want to migrate.
 
diff --git a/docker/migrate-docker19/build.sh b/docker/migrate-docker19/build.sh
new file mode 100755 (executable)
index 0000000..3a36cd4
--- /dev/null
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec docker build -t arvados/migrate-docker19 .
index 7e1b170674c5be0054d09c6a5678fe83426a4d9a..9f7cd79cfad3b566e5cd08b232840afd63d2a535 100644 (file)
@@ -342,6 +342,34 @@ _migration_link_class = 'docker_image_migration'
 _migration_link_name = 'migrate_1.9_1.10'
 
 def migrate19():
+    """Docker image format migration tool for Arvados.
+
+    This converts Docker images stored in Arvados from image format v1
+    (Docker <= 1.9) to image format v2 (Docker >= 1.10).
+
+    Requires Docker running on the local host.
+
+    Usage:
+
+    1) Run arvados/docker/migrate-docker19/build.sh to create
+    arvados/migrate-docker19 Docker image.
+
+    2) Set ARVADOS_API_HOST and ARVADOS_API_TOKEN to the cluster you want to migrate.
+
+    3) Run arv-migrate-docker19
+
+    This will query Arvados for v1 format Docker images.  For each image that
+    does not already have a corresponding v2 format image (as indicated by a
+    docker_image_migration tag) it will perform the following process:
+
+    i) download the image from Arvados
+    ii) load it into Docker
+    iii) update the Docker version, which updates the image
+    iv) save the v2 format image and upload to Arvados
+    v) create a migration link
+
+    """
+
     api_client  = arvados.api()
 
     images = arvados.commands.keepdocker.list_images_in_arv(api_client, 3)
@@ -389,7 +417,7 @@ def migrate19():
                              "--rm",
                              "--env-file", envfile.name,
                              "--volume", "%s:/var/lib/docker" % varlibdocker,
-                             "arvados/docker19-migrate",
+                             "arvados/migrate-docker19",
                              "/root/migrate.sh",
                              "%s/%s" % (old_image["collection"], tarfile),
                              tarfile[0:40],