[tarantool-patches] Re: [PATCH v1] gitlab-ci: add static build

Alexander Turenko alexander.turenko at tarantool.org
Mon Aug 19 15:00:20 MSK 2019


I have no objections other then those about unrelated changes. See
below.

WBR, Alexander Turenko.

On Fri, Aug 16, 2019 at 12:55:06PM +0300, Alexander V. Tikhonov wrote:
> Added static build using Dockerfile on Centos 7 for release
> commit criteria only. Also cleaned up the Dockerfile from
> duplicating code and 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 staic build, running only when RUN_TESTS environment

Typo: staic.

> 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 | 19 ++++++++++++-------
>  3 files changed, 32 insertions(+), 7 deletions(-)
> 
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index a7b2b3804..f160c276b 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..195274d54 100644
> --- a/Dockerfile.staticbuild
> +++ b/Dockerfile.staticbuild
> @@ -38,8 +38,9 @@ RUN yum -y install ncurses-static readline-static zlib-static pcre-static glibc-
>  
>  RUN yum -y install python-devel python-pip
>  
> +WORKDIR /
> +
>  RUN set -x && \
> -    cd / && \
>      curl -O -L https://www.openssl.org/source/openssl-1.1.0h.tar.gz && \
>      tar -xvf openssl-1.1.0h.tar.gz && \
>      cd openssl-1.1.0h && \
> @@ -47,7 +48,6 @@ RUN set -x && \
>      make && make install
>  
>  RUN set -x && \
> -    cd / && \
>      git clone https://github.com/curl/curl.git && \
>      cd curl && \
>      git checkout curl-7_59_0 && \
> @@ -56,7 +56,6 @@ RUN set -x && \
>      make -j && make install
>  
>  RUN set -x && \
> -    cd / && \
>      wget http://download.icu-project.org/files/icu4c/62.1/icu4c-62_1-src.tgz && \
>      tar -xvf icu4c-62_1-src.tgz && \
>      cd icu/source && \
> @@ -64,7 +63,6 @@ RUN set -x && \
>      make && make install
>  
>  RUN set -x && \
> -    cd / && \
>      LD_LIBRARY_PATH=/usr/local/lib64 curl -O -L http://download.savannah.nongnu.org/releases/libunwind/libunwind-1.3-rc1.tar.gz && \
>      tar -xvf libunwind-1.3-rc1.tar.gz && \
>      cd libunwind-1.3-rc1 && \
> @@ -72,11 +70,12 @@ RUN set -x && \
>      make && make install
>  
>  COPY . /tarantool
> +WORKDIR /tarantool
>  
>  RUN set -x && \
> -    cd tarantool && \
> -    git submodule init && \
> -    git submodule update
> +    git submodule update --init && \

All changes above within this file are not needed for your patch. Let
remove them. See
https://www.freelists.org/post/tarantool-patches/PATCH-travisci-set-right-flags-in-release-testing-jobs,3
from words 'There is a rule about not making unrelated changes' to the
end of the email.

> +    find . -name 'CMakeFiles' -type d -exec rm -rf {} + && \
> +    find . -name 'CMakeCache.txt' -type f -delete
>  
>  RUN pip install -r /tarantool/test-run/requirements.txt
>  
> @@ -91,4 +90,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
> 




More information about the Tarantool-patches mailing list