From 7fcd49ebdd174960487dbaee4deafeaf79ae767d Mon Sep 17 00:00:00 2001 From: Shishir Mahajan Date: Thu, 21 Jul 2016 14:07:22 -0400 Subject: [PATCH] Migrate script should now work since we are after docker-1.10 Signed-off-by: Shishir Mahajan Closes: #498 Approved by: rhatdan --- migrate.sh | 34 ++++++++++++++++++------------- tests/integration/test_migrate.sh | 15 +++++++------- tests/test-images/Dockerfile.2 | 4 ---- 3 files changed, 27 insertions(+), 26 deletions(-) delete mode 100644 tests/test-images/Dockerfile.2 diff --git a/migrate.sh b/migrate.sh index d26b3b43..8b3b73df 100755 --- a/migrate.sh +++ b/migrate.sh @@ -130,18 +130,20 @@ container_export(){ echo $containerBaseImageID>>containerInfo.txt echo $notruncContainerID>>containerInfo.txt "$GOTAR" -cf container-metadata.tar $dockerRootDir/containers/$notruncContainerID 2> /dev/null - imageName=$(echo $RANDOM) - docker commit $containerID $imageName 1>/dev/null||exit 1 - mkdir -p $tmpDir/temp - docker save $imageName > $tmpDir/temp/image.tar||exit 1 - $(cd $tmpDir/temp; "$GOTAR" -xf image.tar) - diffLayerID=$(python -c 'import json; f=open("temp/repositories"); j=json.load(f); print(j[j.keys()[0]]["latest"])') - cd $tmpDir/temp/$diffLayerID - cp layer.tar $tmpDir/container-diff.tar - cd $tmpDir - /usr/bin/tar --delete -f container-diff.tar run/gotar 2>/dev/null || true - rm -rf temp - docker rmi -f $imageName 1>/dev/null||exit 1 + if [[ ! -z $(docker diff $containerID) ]];then + imageName=$(echo $RANDOM) + docker commit $containerID $imageName 1>/dev/null||exit 1 + mkdir -p $tmpDir/temp + docker save $imageName > $tmpDir/temp/image.tar||exit 1 + $(cd $tmpDir/temp; "$GOTAR" -xf image.tar) + diffLayerID=$(python -c 'import json; f=open("temp/repositories"); j=json.load(f); print(j[j.keys()[0]]["latest"])') + cd $tmpDir/temp/$diffLayerID + cp layer.tar $tmpDir/container-diff.tar + cd $tmpDir + /usr/bin/tar --delete -f container-diff.tar run/gotar 2>/dev/null || true + rm -rf temp + docker rmi -f $imageName 1>/dev/null||exit 1 + fi } container_import(){ @@ -184,8 +186,12 @@ container_import(){ fi cd $importPath/containers/migrate-$containerID - dockerBaseImageID=$(sed -n '2p' containerInfo.txt)||exit 1 - cat container-diff.tar|docker run -i -v "$GOTAR:/run/gotar" $dockerBaseImageID /run/gotar -xf - + dockerBaseImageID=$(sed -n '2p' containerInfo.txt)||exit 1 + if [[ -f container-diff.tar ]];then + cat container-diff.tar|docker run -i -v "$GOTAR:/run/gotar" $dockerBaseImageID /run/gotar -xf - + else + docker run -i $dockerBaseImageID echo "container_import" + fi newContainerID=$(docker ps -lq)||exit 1 newContainerName=$(docker inspect -f '{{.Name}}' $newContainerID)||exit 1 newNotruncContainerID=$(docker ps -aq --no-trunc|grep $newContainerID)||exit 1 diff --git a/tests/integration/test_migrate.sh b/tests/integration/test_migrate.sh index 57214291..2c3e19cf 100755 --- a/tests/integration/test_migrate.sh +++ b/tests/integration/test_migrate.sh @@ -2,13 +2,6 @@ set -euo pipefail IFS=$'\n\t' -#With the inclusion of this PR (https://github.com/projectatomic/atomic/pull/294) -#atomic storage export/import will only work with docker 1.10 support. -#Skip this test, until we move to docker 1.10. - -echo "WARNING: skipping test_migrate.sh since it is only supported with docker 1.10 onwards." -exit 0 - # # 'atomic storage' integration tests (non-live) # AUTHOR: Shishir Mahajan @@ -25,7 +18,13 @@ if [ "$init" != "systemd" ];then exit 0 fi -dockerPid=$(ps -C docker -o pid=|xargs) +if ! systemctl is-active docker >/dev/null; then + echo "Docker daemon is not running" + exit 1 +fi + +pid=$(systemctl show -p MainPID docker.service) +dockerPid=$(echo ${pid#*=}) dockerCmdline=$(cat /proc/$dockerPid/cmdline) if [[ $dockerCmdline =~ "-g=" ]] || [[ $dockerCmdline =~ "-g/" ]] || [[ $dockerCmdline =~ "--graph" ]];then echo "Docker is not located at the default (/var/lib/docker) root location. Skipping these tests." diff --git a/tests/test-images/Dockerfile.2 b/tests/test-images/Dockerfile.2 deleted file mode 100644 index a63b9418..00000000 --- a/tests/test-images/Dockerfile.2 +++ /dev/null @@ -1,4 +0,0 @@ -FROM scratch -MAINTAINER "William Temple " - -LABEL "Name"="atomic-test-2"