diff --git a/sdk/Dockerfile b/Dockerfile similarity index 63% rename from sdk/Dockerfile rename to Dockerfile index d5e297ef..d43677d0 100644 --- a/sdk/Dockerfile +++ b/Dockerfile @@ -5,22 +5,22 @@ RUN apt-get update \ && apt-get install --no-install-recommends -y tini curl ca-certificates git \ && rm -rf /var/lib/apt/lists/* -RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app +RUN curl -L https://foundry.paradigm.xyz | bash && \ + . /root/.bashrc && \ + /root/.foundry/bin/foundryup && \ + cp /root/.foundry/bin/* /usr/local/bin/ + WORKDIR /home/node/app -COPY . ./ +COPY --chown=node:node . . + RUN corepack enable \ && corepack prepare pnpm@latest-9 --activate \ - && npm ci \ - && npm run build - -RUN curl -L https://foundry.paradigm.xyz | bash && \ - . /root/.bashrc && \ - foundryup && \ - mv /root/.foundry/bin/* /usr/local/bin + && chown -R node:node /home/node/app USER node -RUN mkdir /home/node/.npm/ -COPY --chown=node:node . . +RUN forge install + +WORKDIR /home/node/app/sdk +RUN npm ci && npm run build -WORKDIR /home/node/app/dist/ ENTRYPOINT [ "tini", "--", "node" ] diff --git a/sdk/src/scripts/relay-retarget.ts b/sdk/src/scripts/relay-retarget.ts index e26ac8fc..d91eb992 100644 --- a/sdk/src/scripts/relay-retarget.ts +++ b/sdk/src/scripts/relay-retarget.ts @@ -103,13 +103,14 @@ async function main(): Promise { const retargetHeaders = await getRetargetHeaders(esploraClient, nextRetargetHeight, proofLength); - let env = [ - `RELAY_ADDRESS=${relayAddress}`, - `RETARGET_HEADERS=${retargetHeaders}`, - `PRIVATE_KEY=${privateKey}`, - ]; - - exec(`${env.join(" ")} forge script ../script/RelayRetarget.s.sol:RelayRetargetScript --rpc-url '${rpcUrl}' --broadcast --priority-gas-price 1`, + let env = { + 'RELAY_ADDRESS': relayAddress, + 'RETARGET_HEADERS': retargetHeaders, + 'PRIVATE_KEY': privateKey, + }; + + exec(`forge script ../script/RelayRetarget.s.sol:RelayRetargetScript --rpc-url '${rpcUrl}' --broadcast --priority-gas-price 1`, + { env: { ...process.env, ...env } }, (err: any, stdout: string, stderr: string) => { if (err) { throw new Error(`Failed to run command: ${err}`);