From 55c719bff1b34d037506639fd4cf7f0a74f4c3cb Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Tue, 7 Mar 2017 09:26:17 -0500 Subject: [PATCH] 8567: Rename docker19-migrate to migrate-docker19 for consistency with arv-migrate-docker19. Add docstrict to migrate19() function. --- docker/docker19-migrate/build.sh | 2 -- .../Dockerfile | 0 .../README | 3 +- docker/migrate-docker19/build.sh | 2 ++ .../dnd.sh | 0 .../migrate.sh | 0 sdk/python/arvados/commands/keepdocker.py | 30 ++++++++++++++++++- 7 files changed, 33 insertions(+), 4 deletions(-) delete mode 100755 docker/docker19-migrate/build.sh rename docker/{docker19-migrate => migrate-docker19}/Dockerfile (100%) rename docker/{docker19-migrate => migrate-docker19}/README (88%) create mode 100755 docker/migrate-docker19/build.sh rename docker/{docker19-migrate => migrate-docker19}/dnd.sh (100%) rename docker/{docker19-migrate => migrate-docker19}/migrate.sh (100%) diff --git a/docker/docker19-migrate/build.sh b/docker/docker19-migrate/build.sh deleted file mode 100755 index e6dc998c62..0000000000 --- a/docker/docker19-migrate/build.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec docker build -t arvados/docker19-migrate . diff --git a/docker/docker19-migrate/Dockerfile b/docker/migrate-docker19/Dockerfile similarity index 100% rename from docker/docker19-migrate/Dockerfile rename to docker/migrate-docker19/Dockerfile diff --git a/docker/docker19-migrate/README b/docker/migrate-docker19/README similarity index 88% rename from docker/docker19-migrate/README rename to docker/migrate-docker19/README index 59fa6260ad..3fcd07ae12 100644 --- a/docker/docker19-migrate/README +++ b/docker/migrate-docker19/README @@ -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 index 0000000000..3a36cd495a --- /dev/null +++ b/docker/migrate-docker19/build.sh @@ -0,0 +1,2 @@ +#!/bin/sh +exec docker build -t arvados/migrate-docker19 . diff --git a/docker/docker19-migrate/dnd.sh b/docker/migrate-docker19/dnd.sh similarity index 100% rename from docker/docker19-migrate/dnd.sh rename to docker/migrate-docker19/dnd.sh diff --git a/docker/docker19-migrate/migrate.sh b/docker/migrate-docker19/migrate.sh similarity index 100% rename from docker/docker19-migrate/migrate.sh rename to docker/migrate-docker19/migrate.sh diff --git a/sdk/python/arvados/commands/keepdocker.py b/sdk/python/arvados/commands/keepdocker.py index 7e1b170674..9f7cd79cfa 100644 --- a/sdk/python/arvados/commands/keepdocker.py +++ b/sdk/python/arvados/commands/keepdocker.py @@ -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], -- 2.30.2