From 72bb73b2465e34f9c658bd496717f3fbb9be21e5 Mon Sep 17 00:00:00 2001 From: Giacomo Pozzoni Date: Fri, 5 Mar 2021 22:22:56 +0100 Subject: 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) --- .circleci/config.yml | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to '.circleci') diff --git a/.circleci/config.yml b/.circleci/config.yml index 4d75ee671b8..d22495f7501 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -58,7 +58,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 @@ -84,10 +88,17 @@ jobs: cd bin/check_install/bin cp -r ../../../contrib/Docker/* . cp -r ../../../sql ./sql - image_prefix=$(echo $CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME-$(echo $CIRCLE_BRANCH | tr '/' '-') | tr '[:upper:]' '[:lower:]') + image_prefix=$(echo $CIRCLE_PROJECT_USERNAME/$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" == "3.3.5" ] || [ "$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: -- cgit v1.2.3