Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/openwrt/docker.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Spooren <mail@aparcar.org>2021-02-21 10:26:52 +0300
committerPaul Spooren <mail@aparcar.org>2021-02-21 13:24:47 +0300
commitb957aa4cee295eea322f862b4bae54fd9962a2f5 (patch)
treefde4a1cdc484721f54637c8fe9779dc0d993007f
parentee86c7850061a82c0e4066f51ddf6e5ba895ef5a (diff)
support multiple image names
This simplifies migration from one image name to another. In this case we migrate from `openwrtorg` username to `openwrt`, so for a while both should be available. Signed-off-by: Paul Spooren <mail@aparcar.org>
-rwxr-xr-xdocker-build.sh43
-rwxr-xr-xdocker-sdk.sh38
2 files changed, 48 insertions, 33 deletions
diff --git a/docker-build.sh b/docker-build.sh
index 20f09e3..37a0740 100755
--- a/docker-build.sh
+++ b/docker-build.sh
@@ -6,28 +6,35 @@ DOCKERFILE="${DOCKERFILE:-Dockerfile}"
# Copy Dockerfile inside build context to support older Docker versions
# See https://github.com/docker/cli/pull/886
cp "$DOCKERFILE" ./build/
-docker build -t "$DOCKER_IMAGE:$TARGET-$VERSION" -f "./build/$DOCKERFILE" ./build
+TMP_IMAGE_NAME=$(tr -dc '[:lower:]' < /dev/urandom | fold -w 32 | head -n 1)
+docker build -t "$TMP_IMAGE_NAME" -f "./build/$DOCKERFILE" ./build
-if [ -n "$ARCH" ]; then
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:$ARCH-$VERSION"
-fi
+for IMAGE in $DOCKER_IMAGE; do
+ docker tag "$TMP_IMAGE_NAME" "$IMAGE:$TARGET-$VERSION"
-if [ "$VERSION" == "snapshot" ]; then
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:$TARGET-$BRANCH"
+ if [ -n "$ARCH" ]; then
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:$ARCH-$VERSION"
+ fi
- if [ -n "$ARCH" ]; then
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:$ARCH"
- fi
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:$TARGET"
+ if [ "$VERSION" == "snapshot" ]; then
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:$TARGET-$BRANCH"
- if [ "$TARGET" == "x86-64" ]; then
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:$BRANCH"
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:latest"
- fi
-fi
+ if [ -n "$ARCH" ]; then
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:$ARCH"
+ fi
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:$TARGET"
-if [ "$TARGET" == "x86-64" ]; then
- docker tag "$DOCKER_IMAGE:$TARGET-$VERSION" "$DOCKER_IMAGE:$VERSION"
-fi
+ if [ "$TARGET" == "x86-64" ]; then
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:$BRANCH"
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:latest"
+ fi
+ fi
+
+ if [ "$TARGET" == "x86-64" ]; then
+ docker tag "$IMAGE:$TARGET-$VERSION" "$IMAGE:$VERSION"
+ fi
+done
+
+docker rmi "$TMP_IMAGE_NAME"
rm -rf ./build
diff --git a/docker-sdk.sh b/docker-sdk.sh
index bb812b6..366cd07 100755
--- a/docker-sdk.sh
+++ b/docker-sdk.sh
@@ -33,25 +33,33 @@ DOCKERFILE="${DOCKERFILE:-Dockerfile}"
# Copy Dockerfile inside build context to support older Docker versions
# See https://github.com/docker/cli/pull/886
cp "$DOCKERFILE" ./build/
-docker build -t "$DOCKER_IMAGE:$ARCH-$VERSION" -f "./build/$DOCKERFILE" ./build
-if [ "$VERSION" == "snapshot" ]; then
- docker tag "$DOCKER_IMAGE:$ARCH-$VERSION" "$DOCKER_IMAGE:$ARCH-$BRANCH"
+TMP_IMAGE_NAME=$(tr -dc '[:lower:]' < /dev/urandom | fold -w 32 | head -n 1)
+docker build -t "$TMP_IMAGE_NAME" -f "./build/$DOCKERFILE" ./build
- docker tag "$DOCKER_IMAGE:$ARCH-$VERSION" "$DOCKER_IMAGE:$ARCH"
- if [ "$ARCH" == "x86_64" ]; then
- docker tag "$DOCKER_IMAGE:$ARCH-$VERSION" "$DOCKER_IMAGE:$BRANCH"
- docker tag "$DOCKER_IMAGE:$ARCH-$VERSION" "$DOCKER_IMAGE:latest"
- fi
-fi
+for IMAGE in $DOCKER_IMAGE; do
+ docker tag "$TMP_IMAGE_NAME" "$IMAGE:$ARCH-$VERSION"
-if [ "$ARCH" == "x86_64" ]; then
- docker tag "$DOCKER_IMAGE:$ARCH-$VERSION" "$DOCKER_IMAGE:$VERSION"
-fi
+ if [ "$VERSION" == "snapshot" ]; then
+ docker tag "$IMAGE:$ARCH-$VERSION" "$IMAGE:$ARCH-$BRANCH"
-for TARGET_TAG in $TARGETS; do
- TARGET_TAG=$(echo "$TARGET_TAG" | tr '/' '-')
- docker tag "$DOCKER_IMAGE:$ARCH-$VERSION" "$DOCKER_IMAGE:$TARGET_TAG-$VERSION"
+ docker tag "$IMAGE:$ARCH-$VERSION" "$IMAGE:$ARCH"
+ if [ "$ARCH" == "x86_64" ]; then
+ docker tag "$IMAGE:$ARCH-$VERSION" "$IMAGE:$BRANCH"
+ docker tag "$IMAGE:$ARCH-$VERSION" "$IMAGE:latest"
+ fi
+ fi
+
+ if [ "$ARCH" == "x86_64" ]; then
+ docker tag "$IMAGE:$ARCH-$VERSION" "$IMAGE:$VERSION"
+ fi
+
+ for TARGET_TAG in $TARGETS; do
+ TARGET_TAG=$(echo "$TARGET_TAG" | tr '/' '-')
+ docker tag "$IMAGE:$ARCH-$VERSION" "$IMAGE:$TARGET_TAG-$VERSION"
+ done
done
+docker rmi "$TMP_IMAGE_NAME"
+
rm -rf ./build