Skip to content
This repository was archived by the owner on May 21, 2024. It is now read-only.

Commit 73dbed0

Browse files
authored
Merge pull request #32 from makerdao/upgrade/v1.10.17
Upgrade/v1.10.17
2 parents 227207f + fb0a9f3 commit 73dbed0

File tree

177 files changed

+10799
-1763
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

177 files changed

+10799
-1763
lines changed

.travis.yml

Lines changed: 170 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,55 +16,216 @@ jobs:
1616
- stage: lint
1717
os: linux
1818
dist: bionic
19-
go: 1.17.x
19+
go: 1.18.x
2020
env:
2121
- lint
2222
git:
2323
submodules: false # avoid cloning ethereum/tests
2424
script:
2525
- go run build/ci.go lint
2626

27+
# These builders create the Docker sub-images for multi-arch push and each
28+
# will attempt to push the multi-arch image if they are the last builder
29+
- stage: build
30+
if: type = push
31+
os: linux
32+
arch: amd64
33+
dist: bionic
34+
go: 1.18.x
35+
env:
36+
- docker
37+
services:
38+
- docker
39+
git:
40+
submodules: false # avoid cloning ethereum/tests
41+
before_install:
42+
- export DOCKER_CLI_EXPERIMENTAL=enabled
43+
script:
44+
- go run build/ci.go docker -image -manifest amd64,arm64 -upload ethereum/client-go
45+
46+
- stage: build
47+
if: type = push
48+
os: linux
49+
arch: arm64
50+
dist: bionic
51+
go: 1.18.x
52+
env:
53+
- docker
54+
services:
55+
- docker
56+
git:
57+
submodules: false # avoid cloning ethereum/tests
58+
before_install:
59+
- export DOCKER_CLI_EXPERIMENTAL=enabled
60+
script:
61+
- go run build/ci.go docker -image -manifest amd64,arm64 -upload ethereum/client-go
62+
63+
# This builder does the Ubuntu PPA upload
64+
- stage: build
65+
if: type = push
66+
os: linux
67+
dist: bionic
68+
go: 1.18.x
69+
env:
70+
- ubuntu-ppa
71+
- GO111MODULE=on
72+
git:
73+
submodules: false # avoid cloning ethereum/tests
74+
addons:
75+
apt:
76+
packages:
77+
- devscripts
78+
- debhelper
79+
- dput
80+
- fakeroot
81+
- python-bzrlib
82+
- python-paramiko
83+
script:
84+
- echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts
85+
- go run build/ci.go debsrc -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <[email protected]>"
86+
87+
# This builder does the Linux Azure uploads
88+
- stage: build
89+
if: type = push
90+
os: linux
91+
dist: bionic
92+
sudo: required
93+
go: 1.18.x
94+
env:
95+
- azure-linux
96+
- GO111MODULE=on
97+
git:
98+
submodules: false # avoid cloning ethereum/tests
99+
addons:
100+
apt:
101+
packages:
102+
- gcc-multilib
103+
script:
104+
# Build for the primary platforms that Trusty can manage
105+
- go run build/ci.go install -dlgo
106+
- go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
107+
- go run build/ci.go install -dlgo -arch 386
108+
- go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
109+
110+
# Switch over GCC to cross compilation (breaks 386, hence why do it here only)
111+
- 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
112+
- sudo ln -s /usr/include/asm-generic /usr/include/asm
113+
114+
- GOARM=5 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabi-gcc
115+
- GOARM=5 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
116+
- GOARM=6 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabi-gcc
117+
- GOARM=6 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
118+
- GOARM=7 go run build/ci.go install -dlgo -arch arm -cc arm-linux-gnueabihf-gcc
119+
- GOARM=7 go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
120+
- go run build/ci.go install -dlgo -arch arm64 -cc aarch64-linux-gnu-gcc
121+
- go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
122+
123+
# This builder does the Android Maven and Azure uploads
124+
- stage: build
125+
if: type = push
126+
os: linux
127+
dist: bionic
128+
addons:
129+
apt:
130+
packages:
131+
- openjdk-8-jdk
132+
env:
133+
- azure-android
134+
- maven-android
135+
- GO111MODULE=on
136+
git:
137+
submodules: false # avoid cloning ethereum/tests
138+
before_install:
139+
# Install Android and it's dependencies manually, Travis is stale
140+
- export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
141+
- curl https://dl.google.com/android/repository/commandlinetools-linux-6858069_latest.zip -o android.zip
142+
- unzip -q android.zip -d $HOME/sdk && rm android.zip
143+
- mv $HOME/sdk/cmdline-tools $HOME/sdk/latest && mkdir $HOME/sdk/cmdline-tools && mv $HOME/sdk/latest $HOME/sdk/cmdline-tools
144+
- export PATH=$PATH:$HOME/sdk/cmdline-tools/latest/bin
145+
- export ANDROID_HOME=$HOME/sdk
146+
147+
- yes | sdkmanager --licenses >/dev/null
148+
- sdkmanager "platform-tools" "platforms;android-15" "platforms;android-19" "platforms;android-24" "ndk-bundle"
149+
150+
# Install Go to allow building with
151+
- curl https://dl.google.com/go/go1.18.linux-amd64.tar.gz | tar -xz
152+
- export PATH=`pwd`/go/bin:$PATH
153+
- export GOROOT=`pwd`/go
154+
- export GOPATH=$HOME/go
155+
script:
156+
# Build the Android archive and upload it to Maven Central and Azure
157+
- mkdir -p $GOPATH/src/github.com/ethereum
158+
- ln -s `pwd` $GOPATH/src/github.com/ethereum/go-ethereum
159+
- go run build/ci.go aar -signer ANDROID_SIGNING_KEY -signify SIGNIFY_KEY -deploy https://oss.sonatype.org -upload gethstore/builds
160+
161+
# This builder does the OSX Azure, iOS CocoaPods and iOS Azure uploads
162+
- stage: build
163+
if: type = push
164+
os: osx
165+
go: 1.18.x
166+
env:
167+
- azure-osx
168+
- azure-ios
169+
- cocoapods-ios
170+
- GO111MODULE=on
171+
git:
172+
submodules: false # avoid cloning ethereum/tests
173+
script:
174+
- go run build/ci.go install -dlgo
175+
- go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
176+
177+
# Build the iOS framework and upload it to CocoaPods and Azure
178+
- gem uninstall cocoapods -a -x
179+
- gem install cocoapods
180+
181+
- mv ~/.cocoapods/repos/master ~/.cocoapods/repos/master.bak
182+
- sed -i '.bak' 's/repo.join/!repo.join/g' $(dirname `gem which cocoapods`)/cocoapods/sources_manager.rb
183+
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git clone --depth=1 https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master && pod setup --verbose; fi
184+
185+
- xctool -version
186+
- xcrun simctl list
187+
188+
# Workaround for https://github.com/golang/go/issues/23749
189+
- export CGO_CFLAGS_ALLOW='-fmodules|-fblocks|-fobjc-arc'
190+
- go run build/ci.go xcode -signer IOS_SIGNING_KEY -signify SIGNIFY_KEY -deploy trunk -upload gethstore/builds
27191

28192
# These builders run the tests
29193
- stage: build
30194
os: linux
31195
arch: amd64
32196
dist: bionic
33-
go: 1.17.x
197+
go: 1.18.x
34198
env:
35199
- GO111MODULE=on
36200
script:
37-
- go run build/ci.go install
38201
- go run build/ci.go test -coverage $TEST_PACKAGES
39202

40203
- stage: build
41204
if: type = pull_request
42205
os: linux
43206
arch: arm64
44207
dist: bionic
45-
go: 1.17.x
208+
go: 1.18.x
46209
env:
47210
- GO111MODULE=on
48211
script:
49-
- go run build/ci.go install
50212
- go run build/ci.go test -coverage $TEST_PACKAGES
51213

52214
- stage: build
53215
os: linux
54216
dist: bionic
55-
go: 1.16.x
217+
go: 1.17.x
56218
env:
57219
- GO111MODULE=on
58220
script:
59-
- go run build/ci.go install
60221
- go run build/ci.go test -coverage $TEST_PACKAGES
61222

62223
# This builder does the Azure archive purges to avoid accumulating junk
63224
- stage: build
64225
if: type = cron
65226
os: linux
66227
dist: bionic
67-
go: 1.17.x
228+
go: 1.18.x
68229
env:
69230
- azure-purge
70231
- GO111MODULE=on
@@ -78,7 +239,7 @@ jobs:
78239
if: type = cron
79240
os: linux
80241
dist: bionic
81-
go: 1.17.x
242+
go: 1.18.x
82243
env:
83244
- GO111MODULE=on
84245
script:

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ ARG VERSION=""
44
ARG BUILDNUM=""
55

66
# Build Geth in a stock Go builder container
7-
FROM golang:1.17-alpine as builder
7+
FROM golang:1.18-alpine as builder
88

99
RUN apk add --no-cache gcc musl-dev linux-headers git
1010

Dockerfile.alltools

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ ARG VERSION=""
44
ARG BUILDNUM=""
55

66
# Build Geth in a stock Go builder container
7-
FROM golang:1.17-alpine as builder
7+
FROM golang:1.18-alpine as builder
88

99
RUN apk add --no-cache gcc musl-dev linux-headers git
1010

README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,22 @@ Going through all the possible command line flags is out of scope here (please c
6161
but we've enumerated a few common parameter combos to get you up to speed quickly
6262
on how you can run your own `geth` instance.
6363

64+
### Hardware Requirements
65+
66+
Minimum:
67+
68+
* CPU with 2+ cores
69+
* 4GB RAM
70+
* 500GB free storage space to sync the Mainnet
71+
* 8 MBit/sec download Internet service
72+
73+
Recommended:
74+
75+
* Fast CPU with 4+ cores
76+
* 16GB+ RAM
77+
* High Performance SSD with at least 500GB free space
78+
* 25+ MBit/sec download Internet service
79+
6480
### Full node on the main Ethereum network
6581

6682
By far the most common scenario is people wanting to simply interact with the Ethereum

0 commit comments

Comments
 (0)