From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 1C01F260B7 for ; Tue, 20 Aug 2019 04:58:18 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ELRPQvZeTy3F for ; Tue, 20 Aug 2019 04:58:18 -0400 (EDT) Received: from smtpng3.m.smailru.net (smtpng3.m.smailru.net [94.100.177.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 64F7D26073 for ; Tue, 20 Aug 2019 04:58:17 -0400 (EDT) From: "Alexander V. Tikhonov" Subject: [tarantool-patches] [PATCH v1] gitlab-ci: add static build Date: Tue, 20 Aug 2019 11:58:13 +0300 Message-Id: Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-Help: List-Unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-Subscribe: List-Owner: List-post: List-Archive: To: Alexander Turenko Cc: "Alexander V. Tikhonov" , tarantool-patches@freelists.org Added static build using Dockerfile on Centos 7 for release commit criteria only. Added the cleanup for cmake generating CMakeCache.txt files and CMakeFiles directories to avoid of cmake localy created setup failing inside the docker after the whole tarantool path was copied into it. Added testing into the static build, running only when RUN_TESTS environment variable set to non empty value, used in gitlab-ci job to run the testing after the build. Closes #3668 --- Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-3668-static-build-full-ci Issue: https://github.com/tarantool/tarantool/issues/3668 .gitlab-ci.yml | 13 +++++++++++++ .gitlab.mk | 7 +++++++ Dockerfile.staticbuild | 12 ++++++++++++ 3 files changed, 32 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a7b2b3804..1733c7f75 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -326,3 +326,16 @@ debian_10: DIST: 'buster' script: - ${GITLAB_MAKE} package + +static_build: + only: + refs: + - master + - /^.*-full-ci$/ + stage: test + tags: + - deploy + variables: + RUN_TESTS: 'ON' + script: + - ${GITLAB_MAKE} static_build diff --git a/.gitlab.mk b/.gitlab.mk index 7199adf94..cb66df4c2 100644 --- a/.gitlab.mk +++ b/.gitlab.mk @@ -105,3 +105,10 @@ vms_shutdown: package: git_submodule_update git clone https://github.com/packpack/packpack.git packpack PACKPACK_EXTRA_DOCKER_RUN_PARAMS='--network=host' ./packpack/packpack + +# ############ +# Static build +# ############ + +static_build: + docker build --network=host -f Dockerfile.staticbuild . diff --git a/Dockerfile.staticbuild b/Dockerfile.staticbuild index 6a784990b..0ad84e789 100644 --- a/Dockerfile.staticbuild +++ b/Dockerfile.staticbuild @@ -78,6 +78,12 @@ RUN set -x && \ git submodule init && \ git submodule update +WORKDIR /tarantool + +RUN set -x && \ + find . -name 'CMakeFiles' -type d -exec rm -rf {} + && \ + find . -name 'CMakeCache.txt' -type f -delete + RUN pip install -r /tarantool/test-run/requirements.txt RUN set -x \ @@ -91,4 +97,10 @@ RUN set -x \ RUN cd /tarantool && make install +ARG RUN_TESTS +RUN [ -n ${RUN_TESTS} ] && \ + set -x && \ + cd test && \ + /usr/bin/python test-run.py --force + ENTRYPOINT /bin/bash -- 2.17.1