@@ -8,106 +8,97 @@ cache:
88 directories :
99 - $HOME/.cache
1010
11+ stages :
12+ - test
13+ - name : deploy
14+ # Deploy packages to PackageCloud from tags and master
15+ # see:
16+ # * https://github.com/tarantool/tarantool/issues/3745
17+ # * https://github.com/travis-ci/travis-ci/issues/7780#issuecomment-302389370
18+ if : (branch = master OR tag IS present) AND (env(PACKAGECLOUD_TOKEN) IS present)
19+
1120env :
12- global :
13- - PRODUCT=tarantool-queue
14- matrix :
15- - TARGET=test VERSION=1_10
16- - TARGET=test VERSION=2x
17- - TARGET=test VERSION=2_2
18- - OS=el DIST=6
19- - OS=el DIST=7
20- - OS=fedora DIST=28
21- - OS=fedora DIST=29
22- - OS=fedora DIST=30
23- - OS=ubuntu DIST=trusty
24- - OS=ubuntu DIST=xenial
25- - OS=ubuntu DIST=bionic
26- - OS=ubuntu DIST=cosmic
27- - OS=ubuntu DIST=disco
28- - OS=debian DIST=jessie
29- - OS=debian DIST=stretch
30- - OS=debian DIST=buster
21+ global :
22+ - PRODUCT=tarantool-queue
23+ - ROCK_NAME=queue
3124
32- script :
25+ before_script :
3326 - git describe --long
34- - |
35- if [ "${TARGET}" = "test" ]; then
36- ./test.sh;
37- else
38- git clone https://github.com/packpack/packpack.git packpack;
39- packpack/packpack;
40- fi;
4127
42- before_deploy :
43- - ls -l build/
28+ _deploy_to_packagecloud : &deploy_to_packagecloud
29+ provider : packagecloud
30+ username : tarantool
31+ token : $PACKAGECLOUD_TOKEN
32+ dist : $OS/$DIST
33+ package_glob : build/*.{rpm,deb}
34+ skip_cleanup : true
35+
36+ # Pack and deploy packages to PackageCloud
37+ _packpack : &packpack
38+ stage : deploy
39+ script :
40+ - git clone https://github.com/packpack/packpack.git
41+ - packpack/packpack
42+ - ls -l build/
43+ deploy :
44+ - << : *deploy_to_packagecloud
45+ repository : " 1_10"
46+ - << : *deploy_to_packagecloud
47+ repository : " 2x"
48+ - << : *deploy_to_packagecloud
49+ repository : " 2_2"
50+
51+ jobs :
52+ include :
53+ - env : VERSION=1_10
54+ script : ./test.sh
55+ - env : VERSION=2x
56+ script : ./test.sh
57+ - env : VERSION=2_2
58+ script : ./test.sh
4459
45- deploy :
46- # Deploy packages to PackageCloud from master branch
47- - provider : packagecloud
48- username : tarantool
49- repository : " 1_10"
50- token : ${PACKAGECLOUD_TOKEN}
51- dist : ${OS}/${DIST}
52- package_glob : build/*.{rpm,deb}
53- skip_cleanup : true
54- on :
55- branch : master
56- condition : -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
57- - provider : packagecloud
58- username : tarantool
59- repository : " 2x"
60- token : ${PACKAGECLOUD_TOKEN}
61- dist : ${OS}/${DIST}
62- package_glob : build/*.{rpm,deb}
63- skip_cleanup : true
64- on :
65- branch : master
66- condition : -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
67- - provider : packagecloud
68- username : tarantool
69- repository : " 2_2"
70- token : ${PACKAGECLOUD_TOKEN}
71- dist : ${OS}/${DIST}
72- package_glob : build/*.{rpm,deb}
73- skip_cleanup : true
74- on :
75- branch : master
76- condition : -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
77- # Deploy packages to PackageCloud from tags
78- # see:
79- # * https://github.com/tarantool/tarantool/issues/3745
80- # * https://github.com/travis-ci/travis-ci/issues/7780#issuecomment-302389370
81- - provider : packagecloud
82- username : tarantool
83- repository : " 1_10"
84- token : ${PACKAGECLOUD_TOKEN}
85- dist : ${OS}/${DIST}
86- package_glob : build/*.{rpm,deb}
87- skip_cleanup : true
88- on :
89- tags : true
90- condition : -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
91- - provider : packagecloud
92- username : tarantool
93- repository : " 2x"
94- token : ${PACKAGECLOUD_TOKEN}
95- dist : ${OS}/${DIST}
96- package_glob : build/*.{rpm,deb}
97- skip_cleanup : true
98- on :
99- tags : true
100- condition : -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
101- - provider : packagecloud
102- username : tarantool
103- repository : " 2_2"
104- token : ${PACKAGECLOUD_TOKEN}
105- dist : ${OS}/${DIST}
106- package_glob : build/*.{rpm,deb}
107- skip_cleanup : true
108- on :
109- tags : true
110- condition : -n "${OS}" && -n "${DIST}" && -n "${PACKAGECLOUD_TOKEN}"
60+ - stage : deploy
61+ name : Publish rockspecs
62+ script : skip
63+ deploy :
64+ - provider : script
65+ script : curl --fail -X PUT -F rockspec=@$ROCK_NAME-scm-1.rockspec
66+ https://$ROCKS_USERNAME:$ROCKS_PASSWORD@rocks.tarantool.org
67+ - on :
68+ tags : true
69+ provider : script
70+ script : cat $ROCK_NAME-scm-1.rockspec |
71+ sed -E
72+ -e "s/branch = '.+'/tag = '$TRAVIS_TAG'/g"
73+ -e "s/version = '.+'/version = '$TRAVIS_TAG-1'/g" |
74+ curl --fail -X PUT -F "rockspec=@-;filename=$ROCK_NAME-$TRAVIS_TAG-1.rockspec"
75+ https://$ROCKS_USERNAME:$ROCKS_PASSWORD@rocks.tarantool.org
76+ - << : *packpack
77+ env : OS=el DIST=6
78+ - << : *packpack
79+ env : OS=el DIST=7
80+ - << : *packpack
81+ env : OS=fedora DIST=28
82+ - << : *packpack
83+ env : OS=fedora DIST=29
84+ - << : *packpack
85+ env : OS=fedora DIST=30
86+ - << : *packpack
87+ env : OS=ubuntu DIST=trusty
88+ - << : *packpack
89+ env : OS=ubuntu DIST=xenial
90+ - << : *packpack
91+ env : OS=ubuntu DIST=bionic
92+ - << : *packpack
93+ env : OS=ubuntu DIST=cosmic
94+ - << : *packpack
95+ env : OS=ubuntu DIST=disco
96+ - << : *packpack
97+ env : OS=debian DIST=jessie
98+ - << : *packpack
99+ env : OS=debian DIST=stretch
100+ - << : *packpack
101+ env : OS=debian DIST=buster
111102
112103notifications :
113104 email :
0 commit comments