diff --git a/.changeset/five-pets-speak.md b/.changeset/five-pets-speak.md new file mode 100644 index 0000000000000..d71cd2c67f7bb --- /dev/null +++ b/.changeset/five-pets-speak.md @@ -0,0 +1,5 @@ +--- +'@eth-optimism/js-builder': patch +--- + +Add abigen diff --git a/.changeset/itchy-walls-kneel.md b/.changeset/itchy-walls-kneel.md new file mode 100644 index 0000000000000..d8b667953c778 --- /dev/null +++ b/.changeset/itchy-walls-kneel.md @@ -0,0 +1,5 @@ +--- +'@eth-optimism/go-builder': patch +--- + +Add abigen and gotestsum to go-builder diff --git a/ops/docker/go-builder/Dockerfile b/ops/docker/go-builder/Dockerfile index a8363174e1110..7257704e02b68 100644 --- a/ops/docker/go-builder/Dockerfile +++ b/ops/docker/go-builder/Dockerfile @@ -1,5 +1,9 @@ +FROM ethereum/client-go:alltools-v1.10.17 as geth + FROM golang:1.18.0-alpine3.15 +COPY --from=geth /usr/local/bin/abigen /usr/local/bin/abigen + RUN apk add --no-cache make gcc musl-dev linux-headers git jq curl bash gzip ca-certificates openssh && \ go install gotest.tools/gotestsum@latest && \ curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.45.2 diff --git a/ops/docker/js-builder/Dockerfile b/ops/docker/js-builder/Dockerfile index 5fb85f8a12d18..7bd79ffa49fb1 100644 --- a/ops/docker/js-builder/Dockerfile +++ b/ops/docker/js-builder/Dockerfile @@ -1,15 +1,21 @@ +FROM ethereum/client-go:alltools-v1.10.17 as geth + FROM ghcr.io/foundry-rs/foundry:latest as foundry FROM python:3.8.12-slim-buster +COPY --from=foundry /usr/local/bin/forge /usr/local/bin/forge +COPY --from=foundry /usr/local/bin/cast /usr/local/bin/cast +COPY --from=geth /usr/local/bin/abigen /usr/local/bin/abigen + RUN apt-get update && \ - apt-get install -y curl openssh-client git build-essential ca-certificates && \ + apt-get install -y curl openssh-client git build-essential ca-certificates musl && \ curl -sL https://deb.nodesource.com/setup_16.x -o nodesource_setup.sh && \ + curl -sL https://go.dev/dl/go1.18.2.linux-amd64.tar.gz -o go1.18.2.linux-amd64.tar.gz && \ + tar -C /usr/local/ -xzvf go1.18.2.linux-amd64.tar.gz && \ + ln -s /usr/local/go/bin/gofmt /usr/local/bin/gofmt && \ bash nodesource_setup.sh && \ apt-get install -y nodejs && \ npm i -g yarn && \ npm i -g depcheck && \ - pip install slither-analyzer - -COPY --from=foundry /usr/local/bin/forge /usr/local/bin/forge -COPY --from=foundry /usr/local/bin/cast /usr/local/bin/cast \ No newline at end of file + pip install slither-analyzer \ No newline at end of file