aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/build_defs/docker/incremental_load.sh.tpl
diff options
context:
space:
mode:
Diffstat (limited to 'tools/build_defs/docker/incremental_load.sh.tpl')
-rw-r--r--tools/build_defs/docker/incremental_load.sh.tpl27
1 files changed, 23 insertions, 4 deletions
diff --git a/tools/build_defs/docker/incremental_load.sh.tpl b/tools/build_defs/docker/incremental_load.sh.tpl
index 2db031d478..5ca164df05 100644
--- a/tools/build_defs/docker/incremental_load.sh.tpl
+++ b/tools/build_defs/docker/incremental_load.sh.tpl
@@ -14,12 +14,22 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# This is a generated files that loads all docker layer built by "docker_build".
+# This is a generated file that loads all docker layers built by "docker_build".
RUNFILES="${PYTHON_RUNFILES:-${BASH_SOURCE[0]}.runfiles}"
DOCKER="${DOCKER:-docker}"
+FULL_DOCKER_VERSION=$(docker version -f {{.Server.Version}} 2> /dev/null \
+ || echo "1.10.0")
+DOCKER_MAJOR_VERSION=$(echo "$FULL_DOCKER_VERSION" | sed -r 's#^([0-9]+)\..*#\1#')
+DOCKER_MINOR_VERSION=$(echo "$FULL_DOCKER_VERSION" | sed -r 's#^[0-9]+\.([0-9]+).*#\1#')
+if [ "$DOCKER_MAJOR_VERSION" -eq "1" ] && [ "$DOCKER_MINOR_VERSION" -lt "10" ]; then
+ LEGACY_DOCKER=true
+else
+ LEGACY_DOCKER=false
+fi
+
# List all images identifier (only the identifier) from the local
# docker registry.
IMAGES="$("${DOCKER}" images -aq)"
@@ -30,12 +40,17 @@ IMAGE_LEN=$(for i in $IMAGES; do echo -n $i | wc -c; done | sort -g | head -1 |
function incr_load() {
# Load a layer if and only if the layer is not in "$IMAGES", that is
# in the local docker registry.
- name=$(cat ${RUNFILES}/$1)
+ if [ "$LEGACY_DOCKER" = true ]; then
+ name=$(cat ${RUNFILES}/$1)
+ else
+ name=$(cat ${RUNFILES}/$2)
+ fi
+
if (echo "$IMAGES" | grep -q ^${name:0:$IMAGE_LEN}$); then
echo "Skipping $name, already loaded."
else
echo "Loading $name..."
- "${DOCKER}" load -i ${RUNFILES}/$2
+ "${DOCKER}" load -i ${RUNFILES}/$3
fi
}
@@ -47,5 +62,9 @@ function incr_load() {
if [ -n "${name}" ]; then
TAG="${1:-%{repository}:%{tag}}"
echo "Tagging ${name} as ${TAG}"
- "${DOCKER}" tag -f ${name} ${TAG}
+ if [ "$LEGACY_DOCKER" = true ]; then
+ "${DOCKER}" tag -f ${name} ${TAG}
+ else
+ "${DOCKER}" tag ${name} ${TAG}
+ fi
fi