From 330bf1abeca92c7503e3711e3e5eee8daf9f4e5e Mon Sep 17 00:00:00 2001 From: Tobi Demeco <50408393+TDemeco@users.noreply.github.com> Date: Thu, 12 Jun 2025 13:15:49 +0200 Subject: [PATCH] fix: :bug: update relayer's docker run logic to allow local images (#96) This PR adds a quick check to see if the image to use for the relayer is a locally-built one (by checking that it ends with `:local`) and avoids pulling from Docker Hub if so. This fixes the issue in which we were unable to run the CLI with a local relayer image since it was always trying to pull from the corresponding repository which of course didn't exist for local images. --- test/.papi/descriptors/package.json | 2 +- test/.papi/metadata/datahaven.scale | Bin 358131 -> 360214 bytes test/cli/handlers/common/relayer.ts | 5 ++++- test/cli/handlers/launch/relayer.ts | 8 +++++--- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/test/.papi/descriptors/package.json b/test/.papi/descriptors/package.json index ec63705d..19d94738 100644 --- a/test/.papi/descriptors/package.json +++ b/test/.papi/descriptors/package.json @@ -1,5 +1,5 @@ { - "version": "0.1.0-autogenerated.14950524012264222870", + "version": "0.1.0-autogenerated.4891319136699380765", "name": "@polkadot-api/descriptors", "files": [ "dist" diff --git a/test/.papi/metadata/datahaven.scale b/test/.papi/metadata/datahaven.scale index 28e8ceaac24dad4324404495ed9f3cba9633bd53..a33f2fdb9d25b469cfb2391a0ba302eaed7ad3bb 100644 GIT binary patch delta 13312 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 diff --git a/test/cli/handlers/common/relayer.ts b/test/cli/handlers/common/relayer.ts index 91d7c0dc..1bbdcfe4 100644 --- a/test/cli/handlers/common/relayer.ts +++ b/test/cli/handlers/common/relayer.ts @@ -240,6 +240,9 @@ export const initEthClientPallet = async ( const addHostParam = process.platform === "linux" ? "--add-host host.docker.internal:host-gateway" : ""; + // Opportunistic pull - pull the image from Docker Hub only if it's not a local image + const isLocal = relayerImageTag.endsWith(":local"); + logger.debug("Generating beacon checkpoint"); const datastoreHostPath = path.resolve(datastorePath); const command = `docker run \ @@ -248,10 +251,10 @@ export const initEthClientPallet = async ( -v ${datastoreHostPath}:/data \ --name generate-beacon-checkpoint \ --platform linux/amd64 \ - --pull always \ --workdir /app \ ${addHostParam} \ ${launchedNetwork.networkName ? `--network ${launchedNetwork.networkName}` : ""} \ + ${isLocal ? "" : "--pull always"} \ ${relayerImageTag} \ generate-beacon-checkpoint --config beacon-relay.json --export-json`; logger.debug(`Running command: ${command}`); diff --git a/test/cli/handlers/launch/relayer.ts b/test/cli/handlers/launch/relayer.ts index 786b1586..0a3a2f11 100644 --- a/test/cli/handlers/launch/relayer.ts +++ b/test/cli/handlers/launch/relayer.ts @@ -191,6 +191,9 @@ export const launchRelayers = async (options: LaunchOptions, launchedNetwork: La launchedNetwork ); + // Opportunistic pull - pull the image from Docker Hub only if it's not a local image + const isLocal = options.relayerImageTag.endsWith(":local"); + for (const { configFilePath, name, config, pk } of relayersToStart) { try { const containerName = `snowbridge-${config.type}-relay`; @@ -205,8 +208,6 @@ export const launchRelayers = async (options: LaunchOptions, launchedNetwork: La "docker", "run", "-d", - "--pull", - "always", "--platform", "linux/amd64", "--add-host", @@ -214,7 +215,8 @@ export const launchRelayers = async (options: LaunchOptions, launchedNetwork: La "--name", containerName, "--network", - networkName + networkName, + ...(isLocal ? [] : ["--pull", "always"]) ]; const volumeMounts: string[] = ["-v", `${hostConfigFilePath}:${containerConfigFilePath}`];