From 194ceace6f93d2f3f92ce9c827d3cd44624e3d56 Mon Sep 17 00:00:00 2001 From: stasatdaglabs <39559713+stasatdaglabs@users.noreply.github.com> Date: Wed, 17 Apr 2019 13:45:29 +0300 Subject: [PATCH] [NOD-71] Add support for Go modules (#251) * [NOD-71] Replaced Gopkg.lock and Gopkg.toml with go.mod and go.sum. * [NOD-71] Updated Dockerfiles to use go-modules instead of dep. --- Gopkg.lock | 105 ----------------------------- Gopkg.toml | 78 --------------------- dnsseeder/docker/Dockerfile | 9 ++- docker/Dockerfile | 9 ++- docker/Dockerfile.dev | 10 ++- go.mod | 28 ++++++++ go.sum | 62 +++++++++++++++++ mining/simulator/docker/Dockerfile | 11 ++- 8 files changed, 107 insertions(+), 205 deletions(-) delete mode 100644 Gopkg.lock delete mode 100644 Gopkg.toml create mode 100644 go.mod create mode 100644 go.sum diff --git a/Gopkg.lock b/Gopkg.lock deleted file mode 100644 index c321b2d6..00000000 --- a/Gopkg.lock +++ /dev/null @@ -1,105 +0,0 @@ -# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. - - -[[projects]] - name = "bou.ke/monkey" - packages = ["."] - revision = "bdf6dea004c6fd1cdf4b25da8ad45a606c09409a" - version = "v1.0.1" - -[[projects]] - name = "github.com/aead/siphash" - packages = ["."] - revision = "83563a290f60225eb120d724600b9690c3fb536f" - version = "v1.0.1" - -[[projects]] - branch = "master" - name = "github.com/btcsuite/btclog" - packages = ["."] - revision = "84c8d2346e9fc8c7b947e243b9c24e6df9fd206a" - -[[projects]] - branch = "master" - name = "github.com/btcsuite/go-socks" - packages = ["socks"] - revision = "4720035b7bfd2a9bb130b1c184f8bbe41b6f0d0f" - -[[projects]] - name = "github.com/btcsuite/goleveldb" - packages = ["leveldb","leveldb/cache","leveldb/comparer","leveldb/errors","leveldb/filter","leveldb/iterator","leveldb/journal","leveldb/memdb","leveldb/opt","leveldb/storage","leveldb/table","leveldb/util"] - revision = "3fd0373267b6461dbefe91cef614278064d05465" - version = "v1.0.0" - -[[projects]] - name = "github.com/btcsuite/snappy-go" - packages = ["."] - revision = "b3db38edf0a9a11a115eb6b022d8c946024a9ac0" - version = "v1.0.0" - -[[projects]] - branch = "master" - name = "github.com/btcsuite/websocket" - packages = ["."] - revision = "31079b6807923eb23992c421b114992b95131b55" - -[[projects]] - name = "github.com/btcsuite/winsvc" - packages = ["eventlog","mgr","registry","svc","winapi"] - revision = "f8fb11f83f7e860e3769a08e6811d1b399a43722" - version = "v1.0.0" - -[[projects]] - name = "github.com/davecgh/go-spew" - packages = ["spew"] - revision = "8991bc29aa16c548c550c7ff78260e27b9ab7c73" - version = "v1.1.1" - -[[projects]] - name = "github.com/jessevdk/go-flags" - packages = ["."] - revision = "c6ca198ec95c841fdb89fc0de7496fed11ab854e" - version = "v1.4.0" - -[[projects]] - name = "github.com/jrick/logrotate" - packages = ["rotator"] - revision = "a93b200c26cbae3bb09dd0dc2c7c7fe1468a034a" - version = "v1.0.0" - -[[projects]] - branch = "master" - name = "github.com/kkdai/bstream" - packages = ["."] - revision = "b3251f7901ec4dd4ec66b3210e8f4bd5c0f1c5a3" - -[[projects]] - name = "github.com/miekg/dns" - packages = ["."] - revision = "cc8cd02140663157ce797c6650488d6c8563f31f" - version = "v1.1.6" - -[[projects]] - branch = "master" - name = "golang.org/x/crypto" - packages = ["ed25519","ed25519/internal/edwards25519","ripemd160"] - revision = "c2843e01d9a2bc60bb26ad24e09734fdc2d9ec58" - -[[projects]] - branch = "master" - name = "golang.org/x/net" - packages = ["bpf","internal/iana","internal/socket","ipv4","ipv6"] - revision = "d8887717615a059821345a5c23649351b52a1c0b" - -[[projects]] - branch = "master" - name = "golang.org/x/sys" - packages = ["unix"] - revision = "fead79001313d15903fb4605b4a1b781532cd93e" - -[solve-meta] - analyzer-name = "dep" - analyzer-version = 1 - inputs-digest = "00392a00928f96fc94e2c8c65ce3a98cc6f5e2f93dda64d3c4502f2f38026e96" - solver-name = "gps-cdcl" - solver-version = 1 diff --git a/Gopkg.toml b/Gopkg.toml deleted file mode 100644 index e79e20cf..00000000 --- a/Gopkg.toml +++ /dev/null @@ -1,78 +0,0 @@ - -# Gopkg.toml example -# -# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md -# for detailed Gopkg.toml documentation. -# -# required = ["github.com/user/thing/cmd/thing"] -# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"] -# -# [[constraint]] -# name = "github.com/user/project" -# version = "1.0.0" -# -# [[constraint]] -# name = "github.com/user/project2" -# branch = "dev" -# source = "github.com/myfork/project2" -# -# [[override]] -# name = "github.com/x/y" -# version = "2.4.0" - - -[[constraint]] - name = "bou.ke/monkey" - version = "1.0.1" - -[[constraint]] - name = "github.com/aead/siphash" - version = "1.0.1" - -[[constraint]] - branch = "master" - name = "github.com/btcsuite/btclog" - -[[constraint]] - branch = "master" - name = "github.com/btcsuite/go-socks" - -[[constraint]] - name = "github.com/btcsuite/goleveldb" - version = "1.0.0" - -[[constraint]] - branch = "master" - name = "github.com/btcsuite/websocket" - -[[constraint]] - name = "github.com/btcsuite/winsvc" - version = "1.0.0" - -[[constraint]] - name = "github.com/davecgh/go-spew" - version = "1.1.1" - -[[constraint]] - name = "github.com/jessevdk/go-flags" - version = "1.4.0" - -[[constraint]] - name = "github.com/jrick/logrotate" - version = "1.0.0" - -[[constraint]] - branch = "master" - name = "github.com/kkdai/bstream" - -[[constraint]] - name = "github.com/miekg/dns" - version = "1.1.6" - -[[constraint]] - branch = "master" - name = "golang.org/x/crypto" - -[prune] - go-tests = true - unused-packages = true diff --git a/dnsseeder/docker/Dockerfile b/dnsseeder/docker/Dockerfile index be17e050..56cd3a29 100644 --- a/dnsseeder/docker/Dockerfile +++ b/dnsseeder/docker/Dockerfile @@ -6,19 +6,18 @@ RUN mkdir -p /go/src/github.com/daglabs/btcd WORKDIR /go/src/github.com/daglabs/btcd RUN apk add --no-cache curl git openssh binutils gcc musl-dev -RUN curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh RUN go get -u golang.org/x/lint/golint \ github.com/kisielk/errcheck \ github.com/opennota/check/cmd/aligncheck \ github.com/opennota/check/cmd/structcheck \ github.com/opennota/check/cmd/varcheck -COPY ./Gopkg.* ./ - -RUN dep ensure -v -vendor-only - COPY . . +# GO111MODULE=on forces Go to use the go-module system +# TODO: remove this once Go 1.13 is released +ENV GO111MODULE=on + RUN go vet ./... # RUN aligncheck ./... # RUN structcheck -e ./... diff --git a/docker/Dockerfile b/docker/Dockerfile index b50ec778..0bbba6ba 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -6,19 +6,18 @@ RUN mkdir -p /go/src/github.com/daglabs/btcd WORKDIR /go/src/github.com/daglabs/btcd RUN apk add --no-cache curl git openssh binutils gcc musl-dev -RUN curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh RUN go get -u golang.org/x/lint/golint \ github.com/kisielk/errcheck \ github.com/opennota/check/cmd/aligncheck \ github.com/opennota/check/cmd/structcheck \ github.com/opennota/check/cmd/varcheck -COPY ./Gopkg.* ./ - -RUN dep ensure -v -vendor-only - COPY . . +# GO111MODULE=on forces Go to use the go-module system +# TODO: remove this once Go 1.13 is released +ENV GO111MODULE=on + RUN TEST_DIRS=`go list -f {{.Dir}} ./... | grep -v /vendor/` GOFMT_RESULT=`gofmt -l $TEST_DIRS`; echo $GOFMT_RESULT; test -z "$GOFMT_RESULT" RUN go vet ./... RUN TEST_DIRS=`go list -f {{.Dir}} ./... | grep -v /vendor/` golint -set_exit_status $TEST_DIRS diff --git a/docker/Dockerfile.dev b/docker/Dockerfile.dev index 734e6ff8..9b3c1a01 100644 --- a/docker/Dockerfile.dev +++ b/docker/Dockerfile.dev @@ -10,16 +10,14 @@ RUN apk add --no-cache curl git openssh binutils gcc musl-dev tini bash # Allow delve to run on Alpine based containers. RUN apk add --no-cache libc6-compat -RUN curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh - RUN go get github.com/derekparker/delve/cmd/dlv -COPY ./Gopkg.* ./ - -RUN dep ensure -v -vendor-only - COPY . . +# GO111MODULE=on forces Go to use the go-module system +# TODO: remove this once Go 1.13 is released +ENV GO111MODULE=on + RUN CGO_ENABLED=0 GOOS=linux go build -gcflags "all=-N -l" -a -installsuffix cgo -o btcd . ENTRYPOINT [ "/sbin/tini", "--" ] diff --git a/go.mod b/go.mod new file mode 100644 index 00000000..ccd4e4fc --- /dev/null +++ b/go.mod @@ -0,0 +1,28 @@ +module github.com/daglabs/btcd + +go 1.12 + +require ( + bou.ke/monkey v1.0.1 + github.com/aead/siphash v1.0.1 + github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f + github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd + github.com/btcsuite/goleveldb v1.0.0 + github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792 + github.com/btcsuite/winsvc v1.0.0 + github.com/davecgh/go-spew v1.1.1 + github.com/fsnotify/fsnotify v1.4.7 // indirect + github.com/golang/protobuf v1.3.1 // indirect + github.com/hpcloud/tail v1.0.0 // indirect + github.com/jessevdk/go-flags v1.4.0 + github.com/jrick/logrotate v1.0.0 + github.com/kkdai/bstream v0.0.0-20181106074824-b3251f7901ec + github.com/miekg/dns v1.1.6 + github.com/stretchr/testify v1.3.0 // indirect + golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 + golang.org/x/net v0.0.0-20190311183353-d8887717615a // indirect + golang.org/x/sync v0.0.0-20190412183630-56d357773e84 // indirect + golang.org/x/sys v0.0.0-20190312061237-fead79001313 // indirect + gopkg.in/fsnotify.v1 v1.4.7 // indirect + gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 00000000..eb8a4397 --- /dev/null +++ b/go.sum @@ -0,0 +1,62 @@ +bou.ke/monkey v1.0.1 h1:zEMLInw9xvNakzUUPjfS4Ds6jYPqCFx3m7bRmG5NH2U= +bou.ke/monkey v1.0.1/go.mod h1:FgHuK96Rv2Nlf+0u1OOVDpCMdsWyOFmeeketDHE7LIg= +github.com/aead/siphash v1.0.1 h1:FwHfE/T45KPKYuuSAKyyvE+oPWcaQ+CUmFW0bPlM+kg= +github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII= +github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f h1:bAs4lUbRJpnnkd9VhRV3jjAVU7DJVjMaK+IsvSeZvFo= +github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA= +github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd h1:R/opQEbFEy9JGkIguV40SvRY1uliPX8ifOvi6ICsFCw= +github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg= +github.com/btcsuite/goleveldb v1.0.0 h1:Tvd0BfvqX9o823q1j2UZ/epQo09eJh6dTcRp79ilIN4= +github.com/btcsuite/goleveldb v1.0.0/go.mod h1:QiK9vBlgftBg6rWQIj6wFzbPfRjiykIEhBH4obrXJ/I= +github.com/btcsuite/snappy-go v1.0.0 h1:ZxaA6lo2EpxGddsA8JwWOcxlzRybb444sgmeJQMJGQE= +github.com/btcsuite/snappy-go v1.0.0/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= +github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792 h1:R8vQdOQdZ9Y3SkEwmHoWBmX1DNXhXZqlTpq6s4tyJGc= +github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY= +github.com/btcsuite/winsvc v1.0.0 h1:J9B4L7e3oqhXOcm+2IuNApwzQec85lE+QaikUcCs+dk= +github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/golang/protobuf v1.3.1 h1:YF8+flBXS5eO826T4nzqPrxfhQThhXl0YzfuUPu4SBg= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/jessevdk/go-flags v1.4.0 h1:4IU2WS7AumrZ/40jfhf4QVDMsQwqA7VEHozFRrGARJA= +github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= +github.com/jrick/logrotate v1.0.0 h1:lQ1bL/n9mBNeIXoTUoYRlK4dHuNJVofX9oWqBtPnSzI= +github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ= +github.com/kkdai/bstream v0.0.0-20181106074824-b3251f7901ec h1:n1NeQ3SgUHyISrjFFoO5dR748Is8dBL9qpaTNfphQrs= +github.com/kkdai/bstream v0.0.0-20181106074824-b3251f7901ec/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4= +github.com/miekg/dns v1.1.6 h1:jVwb4GDwD65q/gtItR/lIZHjNH93QfeGxZUkzJcW9mc= +github.com/miekg/dns v1.1.6/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/onsi/ginkgo v1.6.0 h1:Ix8l273rp3QzYgXSR+c8d1fTG7UPgYkOSELPhiY/YGw= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/gomega v1.4.1 h1:PZSj/UFNaVp3KxrzHOcS7oyuWA7LoOY/77yCTEFu21U= +github.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 h1:VklqNMn3ovrHsnt90PveolxSbWFaJdECFbxSq0Mqo2M= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/sync v0.0.0-20190412183630-56d357773e84 h1:IqXQ59gzdXv58Jmm2xn0tSOR9i6HqroaOFRQ3wR/dJQ= +golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190312061237-fead79001313 h1:pczuHS43Cp2ktBEEmLwScxgjWsBSzdaQiKzUyf3DTTc= +golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.2.1 h1:mUhvW9EsL+naU5Q3cakzfE91YhliOondGd6ZrsDBHQE= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/mining/simulator/docker/Dockerfile b/mining/simulator/docker/Dockerfile index eec92a0a..4424e7d1 100644 --- a/mining/simulator/docker/Dockerfile +++ b/mining/simulator/docker/Dockerfile @@ -5,15 +5,14 @@ RUN mkdir -p /go/src/github.com/daglabs/btcd WORKDIR /go/src/github.com/daglabs/btcd -RUN apk add --no-cache curl git -RUN curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh - -COPY ./Gopkg.* ./ - -RUN dep ensure -v -vendor-only +RUN apk add --no-cache curl git COPY . . +# GO111MODULE=on forces Go to use the go-module system +# TODO: remove this once Go 1.13 is released +ENV GO111MODULE=on + RUN cd mining/simulator && CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o mining_simulator . # --- multistage docker build: stage #2: runtime image