pyth-crosschain/wormhole_attester/client/Dockerfile.p2w-attest

32 lines
1.4 KiB
Docker

#syntax=docker/dockerfile:1.2@sha256:e2a8561e419ab1ba6b2fe6cbdf49fd92b95912df1cf7d313c3e2230a333fdbcc
FROM ghcr.io/certusone/solana:1.10.31@sha256:d31e8db926a1d3fbaa9d9211d9979023692614b7b64912651aba0383e8c01bad AS solana
RUN apt-get update && apt-get install -yq python3 libudev-dev ncat
RUN curl -fsSL https://deb.nodesource.com/setup_16.x | bash - && apt-get install -y nodejs
ADD governance/remote_executor /usr/src/governance/remote_executor
ADD wormhole_attester /usr/src/wormhole_attester
WORKDIR /usr/src/wormhole_attester
ENV EMITTER_ADDRESS="11111111111111111111111111111115"
ENV BRIDGE_ADDRESS="Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o"
RUN --mount=type=cache,target=/root/.cache \
--mount=type=cache,target=/usr/local/cargo/registry \
--mount=type=cache,target=target \
cargo test --package pyth-wormhole-attester-client && \
cargo build --package pyth-wormhole-attester-client && \
mv target/debug/pwhac /usr/local/bin/pwhac
ADD third_party/pyth/pyth_utils.py /usr/src/pyth/pyth_utils.py
ADD third_party/pyth/p2w_autoattest.py /usr/src/pyth/p2w_autoattest.py
ADD tilt_devnet/secrets/solana /solana-secrets
RUN chmod a+rx /usr/src/pyth/*.py
ENV P2W_OWNER_KEYPAIR="/solana-secrets/p2w_owner.json"
ENV P2W_ATTESTATIONS_PORT="4343"
ENV PYTH_PUBLISHER_KEYPAIR="/solana-secrets/pyth_publisher.json"
ENV PYTH_PROGRAM_KEYPAIR="/solana-secrets/pyth_program.json"