Push docker images to DockerHub (#26177)

* CI/CircleCI: Push docker images to DockerHub

Push docker image to DockerHub is DOCKERHUB_PUSH_IMAGES environmental variable is set to "TRUE".

* Build in Release only if pushing the images to dockerhub

* Move branch from repository name to tag name

* Update docker readme

Co-authored-by: Trond B. Krokli <38162891+illfated@users.noreply.github.com>
(cherry picked from commit 84ad438d15cffd7dca0e67d540cd41946b946bed)
(cherry picked from commit 72bb73b2465e34f9c658bd496717f3fbb9be21e5)
This commit is contained in:
Giacomo Pozzoni authored and funjoker committed 2023-05-19 21:38:45 +02:00
1 parent a0ce411c0d
commit 68da008b1f
2 files changed
+36 -7

No files matched your search

+15 -4
View File
@@ -54,7 +54,11 @@ jobs:
command: |
mkdir bin
cd bin
cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS=static -DSERVERS=1 -DNOJEM=0 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_C_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_CXX_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_INSTALL_PREFIX=check_install -DBUILD_TESTING=1
if [ "$DOCKERHUB_PUSH_IMAGES" == "TRUE" ]; then
cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS=static -DSERVERS=1 -DNOJEM=0 -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_INSTALL_PREFIX=check_install -DBUILD_TESTING=1
else
cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS=static -DSERVERS=1 -DNOJEM=0 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_C_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_CXX_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_INSTALL_PREFIX=check_install -DBUILD_TESTING=1
fi
cd ..
- run:
name: Build
@@ -80,10 +84,17 @@ jobs:
cd bin/check_install/bin
cp -r ../../../contrib/Docker/* .
cp -r ../../../sql ./sql
image_prefix=$(echo cataclysmpreservationproject/$CIRCLE_PROJECT_REPONAME-$(echo $CIRCLE_BRANCH | tr '/' '-') | tr '[:upper:]' '[:lower:]')
image_prefix=$(echo cataclysmpreservationproject/$CIRCLE_PROJECT_REPONAME | tr '[:upper:]' '[:lower:]')
echo $image_prefix
docker build --file Dockerfile --force-rm --tag $image_prefix:$CIRCLE_SHA1 --tag $image_prefix:latest .
docker save $image_prefix:$CIRCLE_SHA1 | gzip > ../../../docker.tar.gz
docker build --file Dockerfile --force-rm --tag $image_prefix:$CIRCLE_SHA1 --tag $image_prefix:$(echo $CIRCLE_BRANCH | tr '/' '-' | tr '[:upper:]' '[:lower:]') .
docker save $image_prefix | gzip > ../../../docker.tar.gz
if [ "$DOCKERHUB_PUSH_IMAGES" == "TRUE" ]; then
if [ "$CIRCLE_BRANCH" == "master" ]; then
docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD
echo "Pushing docker image to dockerhub"
docker push $image_prefix
fi
fi
- store_artifacts:
path: docker.tar.gz
nopch: