55 lines
1.0 KiB
Plaintext
55 lines
1.0 KiB
Plaintext
|
#!/bin/bash
|
||
|
|
||
|
build_name='fox-web-basic'
|
||
|
build_repos='mxfox.ru/chimera'
|
||
|
branch='latest'
|
||
|
|
||
|
while getopts "b:dph" opt; do
|
||
|
case $opt in
|
||
|
d) DRY=1;;
|
||
|
p) PUSH=1;;
|
||
|
b) branch="${OPTARG}";;
|
||
|
h) echo "Usage:
|
||
|
# -d - dry-run (only prepare, not build)
|
||
|
# -p - push (build, tag but no push.
|
||
|
# -b - branch
|
||
|
# -t - target
|
||
|
";exit;;
|
||
|
esac
|
||
|
done
|
||
|
|
||
|
if [ ! -f last_version ]
|
||
|
then
|
||
|
if [ ! -f init_version ]
|
||
|
then
|
||
|
echo "init_version not found!"
|
||
|
exit
|
||
|
fi
|
||
|
cp init_version last_version
|
||
|
fi
|
||
|
|
||
|
build_version=`cat last_version`
|
||
|
|
||
|
(( build_version++ ))
|
||
|
echo "Building image ${build_name}:$branch-$build_version";
|
||
|
|
||
|
if [ -n "$DRY" ]
|
||
|
then
|
||
|
echo DRY-RUN Selected. Build disabled
|
||
|
exit;
|
||
|
fi
|
||
|
|
||
|
push_suffix='--output=type=local,dest=./images'
|
||
|
|
||
|
if [ -n "$PUSH" ]
|
||
|
then
|
||
|
push_suffix='--push'
|
||
|
fi
|
||
|
|
||
|
(( build_version++ ))
|
||
|
|
||
|
docker buildx build --platform linux/arm,linux/arm64,linux/amd64 --tag=${build_repos}/${build_name}:${build_version} --tag ${build_repos}/${build_name}:latest . ${push_suffix}
|
||
|
|
||
|
echo ${build_version} > last_version
|
||
|
|