From f7d8d6bd6fd3261a46b9d4c356d52196c6de4a59 Mon Sep 17 00:00:00 2001 From: Ethan Frey Date: Wed, 10 Jun 2020 23:29:22 +0200 Subject: [PATCH] Update with go-cosmwasm fix --- Dockerfile.alpine | 40 +++++++++++++++++++++++++++++++- go.mod | 2 +- go.sum | 6 ++--- x/wasm/internal/keeper/keeper.go | 2 +- 4 files changed, 43 insertions(+), 7 deletions(-) diff --git a/Dockerfile.alpine b/Dockerfile.alpine index 84eb63d9..25fc7f53 100644 --- a/Dockerfile.alpine +++ b/Dockerfile.alpine @@ -1 +1,39 @@ -package wasmd +# docker build . -t wasm-alpine -f ./Dockerfile.alpine +# docker run --rm -it wasm-alpine /bin/sh +FROM cosmwasm/go-ext-builder:0.8.1-alpine-combi AS builder + +ENV GO_COSMWASM="v0.8.2-0.20200610171315-1776973f496a" + +# copy all code into /code +WORKDIR /code +COPY . /code + +# download all deps +RUN go mod download +RUN ls -ld /go/pkg/mod/github.com/\!cosm\!wasm/go-cosmwasm@v* + +# build go-cosmwasm *.a and install it +WORKDIR /go/pkg/mod/github.com/\!cosm\!wasm/go-cosmwasm@${GO_COSMWASM} +RUN cargo build --release --features backtraces --example muslc +RUN cp /go/pkg/mod/github.com/\!cosm\!wasm/go-cosmwasm@${GO_COSMWASM}/target/release/examples/libmuslc.a /lib/libgo_cosmwasm_muslc.a + +# build the go wasm binary +WORKDIR /code + +# other build flags... netgo,ledger,... +# also all the other link flags +#ldflags = -X github.com/cosmos/cosmos-sdk/version.Name=wasm \ +# -X github.com/cosmos/cosmos-sdk/version.ServerName=wasmd \ +# -X github.com/cosmos/cosmos-sdk/version.ClientName=wasmcli \ +# -X github.com/cosmos/cosmos-sdk/version.Version=$(VERSION) \ +# -X github.com/cosmos/cosmos-sdk/version.Commit=$(COMMIT) \ +# -X "github.com/cosmos/cosmos-sdk/version.BuildTags=$(build_tags_comma_sep)" + +# TODO: debug this before enabling + +#RUN go build -tags muslc,netgo -trimpath -mod=readonly -o build/wasmd ./cmd/wasmd +# +#FROM alpine:3.12 +# +#COPY --from=builder /code/build/wasmd /usr/bin/wasmd +#CMD ["/usr/bin/wasmd help"] \ No newline at end of file diff --git a/go.mod b/go.mod index 355a7495..1aca65c0 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/CosmWasm/wasmd go 1.13 require ( - github.com/CosmWasm/go-cosmwasm v0.8.2-0.20200608192602-082a8c18f964 + github.com/CosmWasm/go-cosmwasm v0.8.2-0.20200615215318-6f82d95b1cb6 github.com/btcsuite/btcd v0.0.0-20190807005414-4063feeff79a // indirect github.com/cosmos/cosmos-sdk v0.38.3 github.com/golang/mock v1.4.3 // indirect diff --git a/go.sum b/go.sum index c7e6f792..804101ff 100644 --- a/go.sum +++ b/go.sum @@ -9,10 +9,8 @@ github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/ChainSafe/go-schnorrkel v0.0.0-20200102211924-4bcbc698314f h1:4O1om+UVU+Hfcihr1timk8YNXHxzZWgCo7ofnrZRApw= github.com/ChainSafe/go-schnorrkel v0.0.0-20200102211924-4bcbc698314f/go.mod h1:URdX5+vg25ts3aCh8H5IFZybJYKWhJHYMTnf+ULtoC4= -github.com/CosmWasm/go-cosmwasm v0.8.1-0.20200604114456-1b2359bb7eb9 h1:UJOWFHfh2SG47GJcQsjbcEnfw7JM4HPM2cFO1fjjqEs= -github.com/CosmWasm/go-cosmwasm v0.8.1-0.20200604114456-1b2359bb7eb9/go.mod h1:gAFCwllx97ejI+m9SqJQrmd2SBW7HA0fOjvWWJjM2uc= -github.com/CosmWasm/go-cosmwasm v0.8.2-0.20200608192602-082a8c18f964 h1:qPuQfJFDXLcm8jhoWZs6x8jKr3c3yAlv40e93DUBHRY= -github.com/CosmWasm/go-cosmwasm v0.8.2-0.20200608192602-082a8c18f964/go.mod h1:gAFCwllx97ejI+m9SqJQrmd2SBW7HA0fOjvWWJjM2uc= +github.com/CosmWasm/go-cosmwasm v0.8.2-0.20200615215318-6f82d95b1cb6 h1:o/CwMvx7YP+Mnu4MvEypThjpmimGcd0ahJYUqKLI4q8= +github.com/CosmWasm/go-cosmwasm v0.8.2-0.20200615215318-6f82d95b1cb6/go.mod h1:gAFCwllx97ejI+m9SqJQrmd2SBW7HA0fOjvWWJjM2uc= github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= diff --git a/x/wasm/internal/keeper/keeper.go b/x/wasm/internal/keeper/keeper.go index a60c61cc..c1188e8d 100644 --- a/x/wasm/internal/keeper/keeper.go +++ b/x/wasm/internal/keeper/keeper.go @@ -229,7 +229,7 @@ func (k Keeper) Migrate(ctx sdk.Context, contractAddress sdk.AccAddress, caller prefixStoreKey := types.GetContractStorePrefixKey(contractAddress) prefixStore := prefix.NewStore(ctx.KVStore(k.storeKey), prefixStoreKey) gas := gasForContract(ctx) - res, gasUsed, err := k.wasmer.Migrate(newCodeInfo.CodeHash, params, msg, prefixStore, cosmwasmAPI, querier, ctx.GasMeter(), gas) + res, gasUsed, err := k.wasmer.Migrate(newCodeInfo.CodeHash, params, msg, &prefixStore, cosmwasmAPI, &querier, ctx.GasMeter(), gas) consumeGas(ctx, gasUsed) if err != nil { return nil, sdkerrors.Wrap(types.ErrMigrationFailed, err.Error())