[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