From 60af219e0ed14112f68fa022c9b1ee8ff05f1bcd Mon Sep 17 00:00:00 2001 From: Kagaya Date: Tue, 20 Apr 2021 21:11:27 +0800 Subject: [PATCH] feat add Makefile --- Makefile | 31 +++++++++++++++++++++++++++++++ hack/build-image.sh | 14 ++++++++++++++ hack/clean-image.sh | 10 ++++++++++ hack/push-image.sh | 11 +++++++++++ hack/pushimg.sh | 24 ------------------------ 5 files changed, 66 insertions(+), 24 deletions(-) create mode 100644 Makefile create mode 100755 hack/build-image.sh create mode 100755 hack/clean-image.sh create mode 100755 hack/push-image.sh delete mode 100644 hack/pushimg.sh diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..267a18bca --- /dev/null +++ b/Makefile @@ -0,0 +1,31 @@ +# Codewisdom Train-Ticket system + +Username=codewisdom +Tag=0.1.0 + +# build image +.PHONY: build +build: clean-image package build-image + +.PHONY: package +package: + mvn clean package + +.PHONY: build-image +build-image: + @hack/build-image.sh $(Username) $(Tag) + +# push image +.PHONY: push-image +push-image: + @hack/push-image.sh $(Username) + +.PHONY: clean +clean: + @mvn clean + @hack/clean-image.sh $(Username) + +# clean image +.PHONY: clean-image +clean-image: + @hack/clean-image.sh $(Username) diff --git a/hack/build-image.sh b/hack/build-image.sh new file mode 100755 index 000000000..f7bca2dc5 --- /dev/null +++ b/hack/build-image.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +echo +echo "Start build images, Repo: $1, Tag: $2" +echo +for dir in ts-*; do + if [[ -d $dir ]]; then + if [[ -n $(ls "$dir" | grep -i Dockerfile) ]]; then + echo "build ${dir}" + docker build -t "$1"/"${dir}" "$dir" + docker tag "$1"/"${dir}":latest "$1"/"${dir}":"$2" + fi + fi +done diff --git a/hack/clean-image.sh b/hack/clean-image.sh new file mode 100755 index 000000000..fc9ffd0fc --- /dev/null +++ b/hack/clean-image.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +echo +echo "Clean images, Repo: $1" +echo +images=$(docker images | grep "$1"/ts- | awk '{print $3}') + +if [[ -n "$images" ]]; then + echo "$images" | xargs -I {} docker rmi {} +fi diff --git a/hack/push-image.sh b/hack/push-image.sh new file mode 100755 index 000000000..8b91f2078 --- /dev/null +++ b/hack/push-image.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +echo +echo "Please input you repo password of $1" +echo +docker login --username="$1" + +echo +echo "Start pushing image" +echo +docker images | grep "$1/ts" | awk 'BEGIN{OFS=":"}{print $1,$2}' | xargs -I {} docker push {} diff --git a/hack/pushimg.sh b/hack/pushimg.sh deleted file mode 100644 index df6385530..000000000 --- a/hack/pushimg.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash - -export NAMESPACE= -export TAG=latest -USERNAME= -# third-party repo address -REPO= - -docker rmi "$(docker images -f "dangling=true" -q)" - -echo -echo "Please input you repo password" -echo -docker login --username="${USERNAME}" "${REPO}" - -echo -echo "Start building image using docker-compose build" -echo -docker-compose build - -echo -echo "Start pushing image" -echo -docker images | grep "${NAMESPACE}/ts" | awk 'BEGIN{OFS=":"}{print $1,$2}' | xargs -I {} docker push {}