[Tarantool-patches] [PATCH v1] gitlab-ci: move sources tarball creation to gitlab

Sergey Bronnikov sergeyb at tarantool.org
Wed Apr 15 11:34:39 MSK 2020


Hi,

thanks for the patch!

LGTM

On 17:55 Tue 14 Apr , Alexander V. Tikhonov wrote:
> Moved sources tarball creation from travis-ci to gitlab-ci,
> moved its jobs for sources packing and sources deploying.
> 
> Close #4895
> ---
> 
> Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4895-sources-to-gitlab-full-ci
> Issue: https://github.com/tarantool/tarantool/issues/4895
> 
>  .gitlab-ci.yml | 12 +++++++++++-
>  .gitlab.mk     | 22 +++++++++++++++++-----
>  .travis.mk     | 32 --------------------------------
>  .travis.yml    | 20 --------------------
>  4 files changed, 28 insertions(+), 58 deletions(-)
> 
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index cd710027f..a37c1ba6b 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -261,7 +261,12 @@ remove_images:
>    script:
>      - ${GITLAB_MAKE} perf_cleanup
>  
> -# Packs
> +# Packages and sources
> +
> +sources:
> +  <<: *pack_definition
> +  script:
> +    - ${GITLAB_MAKE} source
>  
>  centos_6:
>    <<: *pack_definition
> @@ -355,6 +360,11 @@ debian_10:
>  
>  # Deploy
>  
> +sources_deploy:
> +  <<: *deploy_definition
> +  script:
> +    - ${GITLAB_MAKE} source_deploy
> +
>  centos_6_deploy:
>    <<: *deploy_definition
>    variables:
> diff --git a/.gitlab.mk b/.gitlab.mk
> index 9c0b85cfe..7079b489c 100644
> --- a/.gitlab.mk
> +++ b/.gitlab.mk
> @@ -110,17 +110,22 @@ vms_test_%:
>  vms_shutdown:
>  	VBoxManage controlvm ${VMS_NAME} poweroff
>  
> -# ########
> -# Packages
> -# ########
> +# ######
> +# Deploy
> +# ######
>  
>  GIT_DESCRIBE=$(shell git describe HEAD)
>  MAJOR_VERSION=$(word 1,$(subst ., ,$(GIT_DESCRIBE)))
>  MINOR_VERSION=$(word 2,$(subst ., ,$(GIT_DESCRIBE)))
>  BUCKET="$(MAJOR_VERSION).$(MINOR_VERSION)"
>  
> -package: git_submodule_update
> -	git clone https://github.com/packpack/packpack.git packpack
> +deploy_prepare: git_submodule_update
> +	pip install awscli --user
> +	[ -d packpack ] || \
> +		git clone https://github.com/packpack/packpack.git packpack
> +	rm -rf build
> +
> +package: deploy_prepare
>  	PACKPACK_EXTRA_DOCKER_RUN_PARAMS='--network=host' ./packpack/packpack
>  
>  deploy: package
> @@ -132,6 +137,13 @@ deploy: package
>  			-b="${RELEASE_REPO_S3_DIR}/${BUCKET}" build ; \
>  	fi
>  
> +source: deploy_prepare
> +	TARBALL_COMPRESSOR=gz packpack/packpack tarball
> +
> +source_deploy: source
> +	aws --endpoint-url "${AWS_S3_ENDPOINT_URL}" s3 cp build/*.tar.gz \
> +		"s3://tarantool.${BUCKET}.src/" --acl public-read
> +
>  # ###################
>  # Performance testing
>  # ###################
> diff --git a/.travis.mk b/.travis.mk
> index f709a18b6..ad09ea6ad 100644
> --- a/.travis.mk
> +++ b/.travis.mk
> @@ -211,35 +211,3 @@ test_freebsd_no_deps: build_freebsd
>  	cd test && python2.7 test-run.py --force $(TEST_RUN_EXTRA_PARAMS)
>  
>  test_freebsd: deps_freebsd test_freebsd_no_deps
> -
> -####################
> -# Sources tarballs #
> -####################
> -
> -source:
> -	git clone https://github.com/packpack/packpack.git packpack
> -	TARBALL_COMPRESSOR=gz packpack/packpack tarball
> -
> -# Push alpha and beta versions to <major>x bucket (say, 2x),
> -# stable to <major>.<minor> bucket (say, 2.2).
> -ifeq ($(TRAVIS_BRANCH),master)
> -GIT_DESCRIBE=$(shell git describe HEAD)
> -MAJOR_VERSION=$(word 1,$(subst ., ,$(GIT_DESCRIBE)))
> -MINOR_VERSION=$(word 2,$(subst ., ,$(GIT_DESCRIBE)))
> -else
> -MAJOR_VERSION=$(word 1,$(subst ., ,$(TRAVIS_BRANCH)))
> -MINOR_VERSION=$(word 2,$(subst ., ,$(TRAVIS_BRANCH)))
> -endif
> -BUCKET=tarantool.$(MAJOR_VERSION).$(MINOR_VERSION).src
> -ifeq ($(MINOR_VERSION),0)
> -BUCKET=tarantool.$(MAJOR_VERSION)x.src
> -endif
> -ifeq ($(MINOR_VERSION),1)
> -BUCKET=tarantool.$(MAJOR_VERSION)x.src
> -endif
> -
> -source_deploy:
> -	pip install awscli --user
> -	aws --endpoint-url "${AWS_S3_ENDPOINT_URL}" s3 \
> -		cp build/*.tar.gz "s3://${BUCKET}/" \
> -		--acl public-read
> diff --git a/.travis.yml b/.travis.yml
> index c63ab3ebd..593ef7474 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -34,9 +34,6 @@ jobs:
>        - name: "Debug build + test + coverage (Linux, gcc)"
>          env: TARGET=coverage
>        # Deploy targets (they also catch distro-specific problems).
> -      - name: "Create and deploy tarball"
> -        env: TARGET=source
> -        if: branch = "master"
>        - name: "CentOS 6 build + deploy RPM"
>          env: OS=el DIST=6
>          if: branch = "master"
> @@ -102,14 +99,6 @@ deploy:
>        repo: tarantool/tarantool
>        branch: "master"
>        condition: -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
> -  # Deploy source tarballs to S3 from master branch (w/o tagged revisions)
> -  - provider: script
> -    script: make -f .travis.mk source_deploy
> -    skip_cleanup: true
> -    on:
> -      repo: tarantool/tarantool
> -      branch: "master"
> -      condition: "x${TARGET} = xsource"
>    # Deploy packages to PackageCloud from tagged revisions
>    # https://github.com/travis-ci/travis-ci/issues/7780#issuecomment-302389370
>    - provider: packagecloud
> @@ -123,15 +112,6 @@ deploy:
>        repo: tarantool/tarantool
>        tags: true
>        condition: -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
> -  # Deploy source tarballs to S3 from tagged revisions
> -  # https://github.com/travis-ci/travis-ci/issues/7780#issuecomment-302389370
> -  - provider: script
> -    script: make -f .travis.mk source_deploy
> -    skip_cleanup: true
> -    on:
> -      repo: tarantool/tarantool
> -      tags: true
> -      condition: "x${TARGET} = xsource"
>  
>  notifications:
>    email:
> -- 
> 2.17.1
> 

-- 
sergeyb@


More information about the Tarantool-patches mailing list