@@ -2,64 +2,262 @@ language: go
2
2
go_import_path : github.com/Ether1Project/Ether1
3
3
sudo : false
4
4
jobs :
5
+ allow_failures :
6
+ - stage : build
7
+ os : osx
8
+ go : 1.14.x
9
+ env :
10
+ - azure-osx
11
+ - azure-ios
12
+ - cocoapods-ios
13
+
5
14
include :
6
- - stage : lint
7
- os : linux
8
- dist : xenial
9
- go : 1.13.x
10
- env :
11
- - lint
12
- git :
13
- submodules : false
14
-
15
- - stage : build
16
- os : linux
17
- arch : amd64
18
- dist : xenial
19
- go : 1.13.x
20
- script :
21
- - go run build/ci.go install ./cmd/geth
22
- - tar -czvf ether-1-linux-1.3.1.tar.gz build/bin/geth
23
- before_deploy :
24
- - git config --local user.name "FallenGravity"
25
- - git config --local user.email "ethan@ether1.org"
26
- - git tag 1.3.1
27
- deploy :
28
- provider : releases
29
- skip_cleanup : true
30
- api_key :
31
- secure : f2neuksH7DULgk7ieZ7cPtSb98OPVHwvfoP4s5BbcJj/2KDGE1ho+1CA+AK5/vwX4tdfYiHoX5rt2qmDkyU+6NVGHdTCO+GTihPJiiIRp6CR1J73+bdgZ8YVgnctRUWRdu8nCc04k8POjfQcSPagmLeSYT52MA1Hh1wLJGp90siZV4UEOkvy6WyF2ywgNh2b0ZvpbQQTD2fgBR+T6qDZIpJVSLqVOa/OkRPzvx0WgxRVidV9yL+G9nYW9h+8RYTB3DkmQ9+tmuvOi35CHUcWA2zScNSqjCLpQcOGecK4j8zqhw0cFSv8Fim13jDwe2Do5wCkxeCjx3t1MWXRPfWkRorNb6NJQBHmGkOg9Jb5WFuXnlyYvvKLsYBoUz0asoceF4kj7rT9zGYL0tl4LTpHdIiZSrOGMZ/lgU9Cpo4JmbeiNTWdz9GgtG+BW/HdewKy0/sZEucnBOAEgvmeP1JphBCK3rgcEAuZ2cB8E0ZgbDCBwPdGmVg5vF/aHGEvVLbDNt0wY6dq3MNEFhqQPgkjKgVq/lPTvjs8OXb3JbUshd58/uBT0qU1NyE0q//47cGuXE+L8L7VAPUwJwsVnzYP29/ZgJQrG4zzkHcGBnkg8QRNiy6REhcErYlt4H9AZMyzbYXC2/nyDWbtWEQP128LWirsCOKX8af9qPwRYZDAp68=
32
- file :
33
- - " ether-1-linux-1.3.1.tar.gz"
34
- on :
35
- repo : Ether1Project/Ether1
36
-
37
- - stage : build
38
- os : osx
39
- osx_image : xcode11.3
40
- go : 1.13.x
41
- script :
42
- - echo "Increase the maximum number of open file descriptors on macOS"
43
- - NOFILE=20480
44
- - sudo sysctl -w kern.maxfiles=$NOFILE
45
- - sudo sysctl -w kern.maxfilesperproc=$NOFILE
46
- - sudo launchctl limit maxfiles $NOFILE $NOFILE
47
- - sudo launchctl limit maxfiles
48
- - ulimit -S -n $NOFILE
49
- - ulimit -n
50
- - unset -f cd
51
- - go run build/ci.go install ./cmd/geth
52
- - zip -r ether-1-macos-1.3.1.zip build/bin/geth
53
- before_deploy :
54
- - git config --local user.name "FallenGravity"
55
- - git config --local user.email "ethan@ether1.org"
56
- - git tag 1.3.1 -a -m "Ether-1 V1.3.1 - Test"
57
- deploy :
58
- provider : releases
59
- skip_cleanup : true
60
- api_key :
61
- secure : f2neuksH7DULgk7ieZ7cPtSb98OPVHwvfoP4s5BbcJj/2KDGE1ho+1CA+AK5/vwX4tdfYiHoX5rt2qmDkyU+6NVGHdTCO+GTihPJiiIRp6CR1J73+bdgZ8YVgnctRUWRdu8nCc04k8POjfQcSPagmLeSYT52MA1Hh1wLJGp90siZV4UEOkvy6WyF2ywgNh2b0ZvpbQQTD2fgBR+T6qDZIpJVSLqVOa/OkRPzvx0WgxRVidV9yL+G9nYW9h+8RYTB3DkmQ9+tmuvOi35CHUcWA2zScNSqjCLpQcOGecK4j8zqhw0cFSv8Fim13jDwe2Do5wCkxeCjx3t1MWXRPfWkRorNb6NJQBHmGkOg9Jb5WFuXnlyYvvKLsYBoUz0asoceF4kj7rT9zGYL0tl4LTpHdIiZSrOGMZ/lgU9Cpo4JmbeiNTWdz9GgtG+BW/HdewKy0/sZEucnBOAEgvmeP1JphBCK3rgcEAuZ2cB8E0ZgbDCBwPdGmVg5vF/aHGEvVLbDNt0wY6dq3MNEFhqQPgkjKgVq/lPTvjs8OXb3JbUshd58/uBT0qU1NyE0q//47cGuXE+L8L7VAPUwJwsVnzYP29/ZgJQrG4zzkHcGBnkg8QRNiy6REhcErYlt4H9AZMyzbYXC2/nyDWbtWEQP128LWirsCOKX8af9qPwRYZDAp68=
62
- file :
63
- - " ether-1-macos-1.3.1.zip"
64
- on :
65
- repo : Ether1Project/Ether1
15
+ # This builder only tests code linters on latest version of Go
16
+ - stage : lint
17
+ os : linux
18
+ dist : xenial
19
+ go : 1.15.x
20
+ env :
21
+ - lint
22
+ git :
23
+ submodules : false # avoid cloning ethereum/tests
24
+ script :
25
+ - go run build/ci.go lint
26
+
27
+ - stage : build
28
+ os : linux
29
+ dist : xenial
30
+ go : 1.13.x
31
+ env :
32
+ - GO111MODULE=on
33
+ script :
34
+ - go run build/ci.go install
35
+ - go run build/ci.go test -coverage $TEST_PACKAGES
36
+
37
+ - stage : build
38
+ os : linux
39
+ dist : xenial
40
+ go : 1.14.x
41
+ env :
42
+ - GO111MODULE=on
43
+ script :
44
+ - go run build/ci.go install
45
+ - go run build/ci.go test -coverage $TEST_PACKAGES
46
+
47
+ # These are the latest Go versions.
48
+ - stage : build
49
+ os : linux
50
+ arch : amd64
51
+ dist : xenial
52
+ go : 1.15.x
53
+ env :
54
+ - GO111MODULE=on
55
+ script :
56
+ - go run build/ci.go install
57
+ - go run build/ci.go test -coverage $TEST_PACKAGES
58
+
59
+ - stage : build
60
+ if : type = pull_request
61
+ os : linux
62
+ arch : arm64
63
+ dist : xenial
64
+ go : 1.15.x
65
+ env :
66
+ - GO111MODULE=on
67
+ script :
68
+ - go run build/ci.go install
69
+ - go run build/ci.go test -coverage $TEST_PACKAGES
70
+
71
+ - stage : build
72
+ os : osx
73
+ osx_image : xcode11.3
74
+ go : 1.15.x
75
+ env :
76
+ - GO111MODULE=on
77
+ script :
78
+ - echo "Increase the maximum number of open file descriptors on macOS"
79
+ - NOFILE=20480
80
+ - sudo sysctl -w kern.maxfiles=$NOFILE
81
+ - sudo sysctl -w kern.maxfilesperproc=$NOFILE
82
+ - sudo launchctl limit maxfiles $NOFILE $NOFILE
83
+ - sudo launchctl limit maxfiles
84
+ - ulimit -S -n $NOFILE
85
+ - ulimit -n
86
+ - unset -f cd # workaround for https://github.com/travis-ci/travis-ci/issues/8703
87
+ - go run build/ci.go install
88
+ - go run build/ci.go test -coverage $TEST_PACKAGES
89
+
90
+ # This builder does the Ubuntu PPA upload
91
+ - stage : build
92
+ if : type = push
93
+ os : linux
94
+ dist : xenial
95
+ go : 1.15.x
96
+ env :
97
+ - ubuntu-ppa
98
+ - GO111MODULE=on
99
+ git :
100
+ submodules : false # avoid cloning ethereum/tests
101
+ addons :
102
+ apt :
103
+ packages :
104
+ - devscripts
105
+ - debhelper
106
+ - dput
107
+ - fakeroot
108
+ - python-bzrlib
109
+ - python-paramiko
110
+ script :
111
+ - echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts
112
+ - go run build/ci.go debsrc -goversion 1.15 -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <geth-ci@ethereum.org>"
113
+
114
+ # This builder does the Linux Azure uploads
115
+ - stage : build
116
+ if : type = push
117
+ os : linux
118
+ dist : xenial
119
+ sudo : required
120
+ go : 1.15.x
121
+ env :
122
+ - azure-linux
123
+ - GO111MODULE=on
124
+ git :
125
+ submodules : false # avoid cloning ethereum/tests
126
+ addons :
127
+ apt :
128
+ packages :
129
+ - gcc-multilib
130
+ script :
131
+ # Build for the primary platforms that Trusty can manage
132
+ - go run build/ci.go install
133
+ - go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
134
+ - go run build/ci.go install -arch 386
135
+ - go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
136
+
137
+ # Switch over GCC to cross compilation (breaks 386, hence why do it here only)
138
+ - sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install gcc-arm-linux-gnueabi libc6-dev-armel-cross gcc-arm-linux-gnueabihf libc6-dev-armhf-cross gcc-aarch64-linux-gnu libc6-dev-arm64-cross
139
+ - sudo ln -s /usr/include/asm-generic /usr/include/asm
140
+
141
+ - GOARM=5 go run build/ci.go install -arch arm -cc arm-linux-gnueabi-gcc
142
+ - GOARM=5 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
143
+ - GOARM=6 go run build/ci.go install -arch arm -cc arm-linux-gnueabi-gcc
144
+ - GOARM=6 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
145
+ - GOARM=7 go run build/ci.go install -arch arm -cc arm-linux-gnueabihf-gcc
146
+ - GOARM=7 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
147
+ - go run build/ci.go install -arch arm64 -cc aarch64-linux-gnu-gcc
148
+ - go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
149
+
150
+ # This builder does the Linux Azure MIPS xgo uploads
151
+ - stage : build
152
+ if : type = push
153
+ os : linux
154
+ dist : xenial
155
+ services :
156
+ - docker
157
+ go : 1.15.x
158
+ env :
159
+ - azure-linux-mips
160
+ - GO111MODULE=on
161
+ git :
162
+ submodules : false # avoid cloning ethereum/tests
163
+ script :
164
+ - go run build/ci.go xgo --alltools -- --targets=linux/mips --ldflags '-extldflags "-static"' -v
165
+ - for bin in build/bin/*-linux-mips; do mv -f "${bin}" "${bin/-linux-mips/}"; done
166
+ - go run build/ci.go archive -arch mips -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
167
+
168
+ - go run build/ci.go xgo --alltools -- --targets=linux/mipsle --ldflags '-extldflags "-static"' -v
169
+ - for bin in build/bin/*-linux-mipsle; do mv -f "${bin}" "${bin/-linux-mipsle/}"; done
170
+ - go run build/ci.go archive -arch mipsle -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
171
+
172
+ - go run build/ci.go xgo --alltools -- --targets=linux/mips64 --ldflags '-extldflags "-static"' -v
173
+ - for bin in build/bin/*-linux-mips64; do mv -f "${bin}" "${bin/-linux-mips64/}"; done
174
+ - go run build/ci.go archive -arch mips64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
175
+
176
+ - go run build/ci.go xgo --alltools -- --targets=linux/mips64le --ldflags '-extldflags "-static"' -v
177
+ - for bin in build/bin/*-linux-mips64le; do mv -f "${bin}" "${bin/-linux-mips64le/}"; done
178
+ - go run build/ci.go archive -arch mips64le -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
179
+
180
+ # This builder does the Android Maven and Azure uploads
181
+ - stage : build
182
+ if : type = push
183
+ os : linux
184
+ dist : xenial
185
+ addons :
186
+ apt :
187
+ packages :
188
+ - oracle-java8-installer
189
+ - oracle-java8-set-default
190
+ language : android
191
+ android :
192
+ components :
193
+ - platform-tools
194
+ - tools
195
+ - android-15
196
+ - android-19
197
+ - android-24
198
+ env :
199
+ - azure-android
200
+ - maven-android
201
+ - GO111MODULE=on
202
+ git :
203
+ submodules : false # avoid cloning ethereum/tests
204
+ before_install :
205
+ - curl https://dl.google.com/go/go1.15.linux-amd64.tar.gz | tar -xz
206
+ - export PATH=`pwd`/go/bin:$PATH
207
+ - export GOROOT=`pwd`/go
208
+ - export GOPATH=$HOME/go
209
+ script :
210
+ # Build the Android archive and upload it to Maven Central and Azure
211
+ - curl https://dl.google.com/android/repository/android-ndk-r19b-linux-x86_64.zip -o android-ndk-r19b.zip
212
+ - unzip -q android-ndk-r19b.zip && rm android-ndk-r19b.zip
213
+ - mv android-ndk-r19b $ANDROID_HOME/ndk-bundle
214
+
215
+ - mkdir -p $GOPATH/src/github.com/ethereum
216
+ - ln -s `pwd` $GOPATH/src/github.com/ethereum/go-ethereum
217
+ - go run build/ci.go aar -signer ANDROID_SIGNING_KEY -deploy https://oss.sonatype.org -upload gethstore/builds
218
+
219
+ # This builder does the OSX Azure, iOS CocoaPods and iOS Azure uploads
220
+ - stage : build
221
+ if : type = push
222
+ os : osx
223
+ go : 1.15.x
224
+ env :
225
+ - azure-osx
226
+ - azure-ios
227
+ - cocoapods-ios
228
+ - GO111MODULE=on
229
+ git :
230
+ submodules : false # avoid cloning ethereum/tests
231
+ script :
232
+ - go run build/ci.go install
233
+ - go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -upload gethstore/builds
234
+
235
+ # Build the iOS framework and upload it to CocoaPods and Azure
236
+ - gem uninstall cocoapods -a -x
237
+ - gem install cocoapods
238
+
239
+ - mv ~/.cocoapods/repos/master ~/.cocoapods/repos/master.bak
240
+ - sed -i '.bak' 's/repo.join/!repo.join/g' $(dirname `gem which cocoapods`)/cocoapods/sources_manager.rb
241
+ - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git clone --depth=1 https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master && pod setup --verbose; fi
242
+
243
+ - xctool -version
244
+ - xcrun simctl list
245
+
246
+ # Workaround for https://github.com/golang/go/issues/23749
247
+ - export CGO_CFLAGS_ALLOW='-fmodules|-fblocks|-fobjc-arc'
248
+ - go run build/ci.go xcode -signer IOS_SIGNING_KEY -deploy trunk -upload gethstore/builds
249
+
250
+ # This builder does the Azure archive purges to avoid accumulating junk
251
+ - stage : build
252
+ if : type = cron
253
+ os : linux
254
+ dist : xenial
255
+ go : 1.15.x
256
+ env :
257
+ - azure-purge
258
+ - GO111MODULE=on
259
+ git :
260
+ submodules : false # avoid cloning ethereum/tests
261
+ script :
262
+ - go run build/ci.go purge -store gethstore/builds -days 14
263
+ >>>>>>> c71a7e26a8b1e332bbf3262d88ba3ff32071456c
0 commit comments