@@ -8,106 +8,97 @@ cache:
8
8
directories :
9
9
- $HOME/.cache
10
10
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
+
11
20
env :
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
31
24
32
- script :
25
+ before_script :
33
26
- 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;
41
27
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
44
59
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:[email protected]
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:[email protected]
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
111
102
112
103
notifications :
113
104
email :
0 commit comments