From 165b206963a242a1f5ffe4f69eac85b6c7dbb9dc Mon Sep 17 00:00:00 2001 From: blam Date: Thu, 2 Jul 2020 03:25:29 +0200 Subject: [PATCH] chore(scaffolder): pull image first --- .../scaffolder/stages/templater/helpers.test.ts | 14 ++++++++++++++ .../src/scaffolder/stages/templater/helpers.ts | 1 + 2 files changed, 15 insertions(+) diff --git a/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.test.ts b/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.test.ts index d27eb4f93f..02bc801385 100644 --- a/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.test.ts +++ b/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.test.ts @@ -26,6 +26,9 @@ describe('helpers', () => { jest .spyOn(mockDocker, 'run') .mockResolvedValue([{ Error: null, StatusCode: 0 }]); + jest + .spyOn(mockDocker, 'pull') + .mockResolvedValue([{ Error: null, StatusCode: 0 }]); }); describe('runDockerContainer', () => { @@ -34,6 +37,17 @@ describe('helpers', () => { const templateDir = os.tmpdir(); const resultDir = os.tmpdir(); + it('will pull the docker container before running', async () => { + await runDockerContainer({ + imageName, + args, + templateDir, + resultDir, + dockerClient: mockDocker, + }); + + expect(mockDocker.pull).toHaveBeenCalledWith(imageName, {}); + }); it('should call the dockerClient run command with the correct arguments passed through', async () => { await runDockerContainer({ imageName, diff --git a/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.ts b/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.ts index 2856a016e4..9ef85224d4 100644 --- a/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.ts +++ b/plugins/scaffolder-backend/src/scaffolder/stages/templater/helpers.ts @@ -44,6 +44,7 @@ export const runDockerContainer = async ({ templateDir, dockerClient, }: RunDockerContainerOptions) => { + await dockerClient.pull(imageName, {}); const [{ Error: error, StatusCode: statusCode }] = await dockerClient.run( imageName, args,