diff --git a/build-ubuntu.sh b/build-ubuntu.sh deleted file mode 100755 index 0fee40a..0000000 --- a/build-ubuntu.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/usr/bin/env bash - -set -e - -# determine swoole version to build. -TASK=${1} -CHECK=${!#} - -# build base image -if [[ ${TASK} == "base" ]]; then - export PHP_VERSION=7.4 && export UBUNTU_VERSION=20.10 && docker-compose -f ubuntu.compose.yml build ubuntu-base -fi - -# build swoole image -if [[ ${TASK} == "cli" ]]; then - SWOOLE_VERSION=${2} - export SWOOLE_VERSION=${SWOOLE_VERSION} - export PHP_VERSION=7.4 && export UBUNTU_VERSION=20.10 && docker-compose -f ubuntu.compose.yml build ubuntu-cli -fi diff --git a/build.sh b/build.sh index 9b8fbcf..618922c 100755 --- a/build.sh +++ b/build.sh @@ -2,22 +2,14 @@ set -e -# determine swoole version to build. -TASK=${1} -CHECK=${!#} - function check_or_push() { - TAG=${1} - if [[ ${CHECK} == "--check" ]]; then + local TAG=${1} + if [[ "${2}" == "--check" ]]; then echo "Checking $TAG ..." - version=`docker run hyperf/hyperf:$TAG php -v` - echo $version | grep -Eo "PHP \d+\.\d+\.\d+" - swoole=`docker run hyperf/hyperf:$TAG php --ri swoole` && echo $swoole | grep -Eo "Version => \d+\.\d+\.\d+" || echo "No Swoole." - fi - - if [[ ${CHECK} != "--check" ]]; then - echo "Publishing "$TAG" ..." - # Push origin image + docker run hyperf/hyperf:$TAG php -v | grep -Eo "PHP \d+\.\d+\.\d+" + docker run hyperf/hyperf:$TAG php --ri swoole | grep -Eo "Version => \d+\.\d+\.\d+" || echo "Not found Swoole." + else + echo "Publishing \"$TAG\" ..." docker push hyperf/hyperf:${TAG} fi @@ -25,35 +17,41 @@ function check_or_push() { } # build base image -if [[ ${TASK} == "build" ]]; then - export PHP_VERSION=7.3 && export ALPINE_VERSION=3.10 && docker-compose build alpine-base - export PHP_VERSION=7.3 && export ALPINE_VERSION=3.11 && docker-compose build alpine-base - - export PHP_VERSION=7.4 && export ALPINE_VERSION=3.10 && docker-compose build alpine-base - export PHP_VERSION=7.4 && export ALPINE_VERSION=3.11 && docker-compose build alpine-base - export PHP_VERSION=7.4 && export ALPINE_VERSION=3.12 && docker-compose build alpine-base - export PHP_VERSION=7.4 && export ALPINE_VERSION=3.13 && docker-compose build alpine-origin-base - export PHP_VERSION=7.4 && export ALPINE_VERSION=3.14 && docker-compose build alpine-origin-base - export PHP_VERSION=7.4 && export ALPINE_VERSION=3.15 && docker-compose build alpine-origin-base - - export PHP_VERSION=8.0 && export ALPINE_VERSION=3.11 && docker-compose build alpine-base - export PHP_VERSION=8.0 && export ALPINE_VERSION=3.12 && docker-compose build alpine-base - export PHP_VERSION=8.0 && export ALPINE_VERSION=3.13 && docker-compose build alpine-origin-base - export PHP_VERSION=8.0 && export ALPINE_VERSION=3.14 && docker-compose build alpine-origin-base - export PHP_VERSION=8.0 && export ALPINE_VERSION=3.15 && docker-compose build alpine-origin-base - export PHP_VERSION=8.0 && export ALPINE_VERSION=3.16 && docker-compose build alpine-origin-base - - export PHP_VERSION=8.1 && export ALPINE_VERSION=3.12 && docker-compose build alpine-base - export PHP_VERSION=8.1 && export ALPINE_VERSION=3.13 && docker-compose build alpine-base - export PHP_VERSION=8.1 && export ALPINE_VERSION=3.14 && docker-compose build alpine-base - export PHP_VERSION=8.1 && export ALPINE_VERSION=3.15 && docker-compose build alpine-base - export PHP_VERSION=8.1 && export ALPINE_VERSION=3.16 && docker-compose build alpine-origin-base -fi - -if [[ ${TASK} == "publish" ]]; then - # Push base image - TAGS="7.3-alpine-v3.10-base 7.3-alpine-v3.11-base 7.4-alpine-v3.10-base 7.4-alpine-v3.11-base 7.4-alpine-v3.12-base 7.4-alpine-v3.13-base 7.4-alpine-v3.14-base 7.4-alpine-v3.15-base 8.0-alpine-v3.11-base 8.0-alpine-v3.12-base 8.0-alpine-v3.13-base 8.0-alpine-v3.14-base 8.0-alpine-v3.15-base 8.1-alpine-v3.12-base 8.1-alpine-v3.13-base 8.1-alpine-v3.14-base 8.1-alpine-v3.15-base" - for TAG in ${TAGS}; do - check_or_push $TAG +case ${1} in +base) + docker-compose build -f ubuntu.compose.yml --build-arg PHP_VERSION=7.4 --build-arg UBUNTU_VERSION=20.10 ubuntu-base + ;; +cli) + docker-compose -f ubuntu.compose.yml build --build-arg PHP_VERSION=7.4 --build-arg UBUNTU_VERSION=20.10 --build-arg SWOOLE_VERSION=${2} ubuntu-cli + ;; +build) + docker-compose build --build-arg PHP_VERSION=7.3 --build-arg ALPINE_VERSION=3.10 alpine-base + docker-compose build --build-arg PHP_VERSION=7.3 --build-arg ALPINE_VERSION=3.11 alpine-base + + docker-compose build --build-arg PHP_VERSION=7.4 --build-arg ALPINE_VERSION=3.10 alpine-base + docker-compose build --build-arg PHP_VERSION=7.4 --build-arg ALPINE_VERSION=3.11 alpine-base + docker-compose build --build-arg PHP_VERSION=7.4 --build-arg ALPINE_VERSION=3.12 alpine-base + docker-compose build --build-arg PHP_VERSION=7.4 --build-arg ALPINE_VERSION=3.13 alpine-origin-base + docker-compose build --build-arg PHP_VERSION=7.4 --build-arg ALPINE_VERSION=3.14 alpine-origin-base + docker-compose build --build-arg PHP_VERSION=7.4 --build-arg ALPINE_VERSION=3.15 alpine-origin-base + + docker-compose build --build-arg PHP_VERSION=8.0 --build-arg ALPINE_VERSION=3.11 alpine-base + docker-compose build --build-arg PHP_VERSION=8.0 --build-arg ALPINE_VERSION=3.12 alpine-base + docker-compose build --build-arg PHP_VERSION=8.0 --build-arg ALPINE_VERSION=3.13 alpine-origin-base + docker-compose build --build-arg PHP_VERSION=8.0 --build-arg ALPINE_VERSION=3.14 alpine-origin-base + docker-compose build --build-arg PHP_VERSION=8.0 --build-arg ALPINE_VERSION=3.15 alpine-origin-base + docker-compose build --build-arg PHP_VERSION=8.0 --build-arg ALPINE_VERSION=3.16 alpine-origin-base + + docker-compose build --build-arg PHP_VERSION=8.1 --build-arg ALPINE_VERSION=3.12 alpine-base + docker-compose build --build-arg PHP_VERSION=8.1 --build-arg ALPINE_VERSION=3.13 alpine-base + docker-compose build --build-arg PHP_VERSION=8.1 --build-arg ALPINE_VERSION=3.14 alpine-base + docker-compose build --build-arg PHP_VERSION=8.1 --build-arg ALPINE_VERSION=3.15 alpine-base + docker-compose build --build-arg PHP_VERSION=8.1 --build-arg ALPINE_VERSION=3.16 alpine-origin-base + ;; +publish) + TAGS=(7.3-alpine-v3.10-base 7.3-alpine-v3.11-base 7.4-alpine-v3.10-base 7.4-alpine-v3.11-base 7.4-alpine-v3.12-base 7.4-alpine-v3.13-base 7.4-alpine-v3.14-base 7.4-alpine-v3.15-base 8.0-alpine-v3.11-base 8.0-alpine-v3.12-base 8.0-alpine-v3.13-base 8.0-alpine-v3.14-base 8.0-alpine-v3.15-base 8.1-alpine-v3.12-base 8.1-alpine-v3.13-base 8.1-alpine-v3.14-base 8.1-alpine-v3.15-base) + for TAG in "${TAGS[@]}"; do + check_or_push "$TAG" $2 done -fi + ;; +esac