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

Alexander Turenko alexander.turenko at tarantool.org
Wed Aug 21 01:02:00 MSK 2019


LGTM.

Alexander, did you test it on 1.10? If not, I suggest to do so before
the patch will land.

Kirill, please, push to all release branches down to 1.10. You can test
it before push using `RUN_TESTS=ON make -f .gitlab.mk static_build` (the
docker daemon should be running).

WBR, Alexander Turenko.

On Tue, Aug 20, 2019 at 12:32:32PM +0300, Alexander V. Tikhonov wrote:
> 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..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..679cce560 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
> 




More information about the Tarantool-patches mailing list