|
1 | 1 | #!/bin/bash |
2 | 2 |
|
3 | 3 |
|
4 | | -# grab latest tags |
5 | | -PHP_TAGS=$(curl 'https://registry.hub.docker.com/v2/repositories/library/php/tags?page_size=1024' | grep -Po "[0-9]+\.[0-9]+\.[0-9]+-apache" | sed 's/-apache//' | sort | uniq) |
6 | | -IS_MASTER_BUILD=$([ "$SOURCE_BRANCH" == "master" ] && echo 1 || echo 0) |
| 4 | +SCRIPT_DIR="$(dirname "$0")" |
| 5 | +source "${SCRIPT_DIR}/common" |
7 | 6 |
|
8 | | -echo "##### Build default image - ${IMAGE_NAME} #####" |
9 | | -docker build --build-arg PHP_VERSION_TAG=${PHP_VERSION_TAG} -f $DOCKERFILE_PATH -t ${IMAGE_NAME} . |
10 | | - |
11 | | -if [ $IS_MASTER_BUILD -eq 1 ]; then |
12 | | - |
13 | | - for PHP_MINOR in $(echo "$PHP_TAGS" | grep -Po "^[0-9]+\.[0-9]+" | sort | uniq); do |
14 | | - echo "##### Build ${PHP_MINOR} #####" |
15 | | - docker build --build-arg PHP_VERSION_TAG=${PHP_MINOR}-apache -f ${DOCKERFILE_PATH} -t ${DOCKER_REPO}:${PHP_MINOR} . |
16 | | - done |
17 | | - |
18 | | - for PHP_VERSION in $(echo "$PHP_TAGS"); do |
19 | | - echo "##### Build $PHP_VERSION (x.y.z) #####" |
20 | | - docker build --build-arg PHP_VERSION_TAG=${PHP_VERSION}-apache -f ${DOCKERFILE_PATH} -t ${DOCKER_REPO}:${PHP_VERSION} . |
21 | | - done |
22 | 7 |
|
23 | | -else |
24 | | - |
25 | | - CURRENT_RELEASE=$(echo $SOURCE_BRANCH | cut -c2-) |
26 | | - |
27 | | - for PHP_MINOR in $(echo "$PHP_TAGS" | grep -Po "^[0-9]+\.[0-9]+" | sort | uniq); do |
28 | | - SHORT_DOCKER_TAG=$(echo $CURRENT_RELEASE | cut -d'.' -f-2) |
29 | | - CUSTOM_IMAGE_NAME="${DOCKER_REPO}:php${PHP_MINOR}-v${SHORT_DOCKER_TAG}" |
30 | | - echo "##### Build $CUSTOM_IMAGE_NAME #####" |
31 | | - docker build --build-arg PHP_VERSION_TAG=${PHP_MINOR}-apache -f ${DOCKERFILE_PATH} -t ${CUSTOM_IMAGE_NAME} . |
32 | | - done |
33 | | - |
34 | | - for PHP_VERSION in $(echo "$PHP_TAGS"); do |
35 | | - CUSTOM_IMAGE_NAME="${DOCKER_REPO}:php${PHP_VERSION}-v${CURRENT_RELEASE}" |
36 | | - echo "##### Build $CUSTOM_IMAGE_NAME #####" |
37 | | - docker build --build-arg PHP_VERSION_TAG=${PHP_VERSION}-apache -f ${DOCKERFILE_PATH} -t ${CUSTOM_IMAGE_NAME} . |
38 | | - done |
| 8 | +echo "##### Build default tag ${DOCKER_TAG} from ${PHP_VERSION_TAG} #####" |
| 9 | +docker build --build-arg PHP_VERSION_TAG=${PHP_VERSION_TAG} -f $DOCKERFILE_PATH -t ${IMAGE_NAME} . |
39 | 10 |
|
40 | | -fi |
| 11 | +for BUILD_PARAMS in $(getBuildParams $IS_MASTER_BUILD); do |
| 12 | + FROM=$(echo $BUILD_PARAMS | cut -d'|' -f1) |
| 13 | + TAG=$(echo $BUILD_PARAMS | cut -d'|' -f2) |
| 14 | + echo "##### Build tag ${TAG} from ${FROM} #####" |
| 15 | + docker build --build-arg PHP_VERSION_TAG=${FROM} -f ${DOCKERFILE_PATH} -t ${DOCKER_REPO}:${TAG} . |
| 16 | +done |
0 commit comments