diff --git a/packages/k8s/src/k8s/index.ts b/packages/k8s/src/k8s/index.ts index aac84409..6fee8675 100644 --- a/packages/k8s/src/k8s/index.ts +++ b/packages/k8s/src/k8s/index.ts @@ -14,7 +14,8 @@ import { PodPhase, mergePodSpecWithOptions, mergeObjectMeta, - useKubeScheduler + useKubeScheduler, + fixArgs } from './utils' const kc = new k8s.KubeConfig() @@ -226,6 +227,7 @@ export async function execPodStep( stdin?: stream.Readable ): Promise { const exec = new k8s.Exec(kc) + command = fixArgs(command) await new Promise(async function (resolve, reject) { await exec.exec( namespace(), diff --git a/packages/k8s/tests/prepare-job-test.ts b/packages/k8s/tests/prepare-job-test.ts index 7047fa0c..80cb6dc7 100644 --- a/packages/k8s/tests/prepare-job-test.ts +++ b/packages/k8s/tests/prepare-job-test.ts @@ -91,6 +91,15 @@ describe('Prepare job', () => { expect(services[0].args).toBe(undefined) }) + it('should determine alpine correctly', async () => { + prepareJobData.args.container.image = 'alpine:latest' + await prepareJob(prepareJobData.args, prepareJobOutputFilePath) + const content = JSON.parse( + fs.readFileSync(prepareJobOutputFilePath).toString() + ) + expect(content.isAlpine).toBe(true) + }) + it('should run pod with extensions applied', async () => { process.env[ENV_HOOK_TEMPLATE_PATH] = path.join( __dirname,