Dockerfile.sdk.test 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. FROM --platform=linux/amd64 ghcr.io/foundry-rs/foundry:v1.0.0@sha256:d12a373ec950de170d5461014ef9320ba0fb6e0db6f87835999d0fcf3820370e as foundry
  2. FROM node:22.16-bullseye-slim@sha256:550b434f7edc3a1875860657a3e306752358029c957280809ae6395ab296faeb
  3. RUN apt-get update && apt-get -y install \
  4. git python3 make curl netcat vim
  5. RUN npm i typescript -g
  6. COPY --from=foundry /usr/local/bin/forge /bin/forge
  7. RUN mkdir -p /app
  8. WORKDIR /app
  9. COPY ethereum/package.json ethereum/package-lock.json ./ethereum/
  10. RUN --mount=type=cache,uid=1000,gid=1000,target=/home/node/.npm \
  11. npm ci --prefix ethereum
  12. COPY ethereum ./ethereum
  13. COPY relayer/ethereum/package.json relayer/ethereum/package-lock.json ./relayer/ethereum/
  14. RUN --mount=type=cache,uid=1000,gid=1000,target=/home/node/.npm \
  15. npm ci --prefix relayer/ethereum
  16. COPY relayer/ethereum ./relayer/ethereum
  17. COPY solana/idl ./solana/idl/
  18. COPY sdk/js/package.json sdk/js/package-lock.json ./sdk/js/
  19. RUN --mount=type=cache,uid=1000,gid=1000,target=/home/node/.npm \
  20. npm ci --prefix sdk/js
  21. COPY sdk/js ./sdk/js
  22. RUN npm run build --prefix sdk/js
  23. COPY testing ./testing
  24. WORKDIR /app/testing