From 9677f1ab4552d0f44bdc350aae2de7ab49ba1a8f Mon Sep 17 00:00:00 2001 From: Alexander Zeitler Date: Fri, 4 Jun 2021 21:39:09 +0200 Subject: [PATCH] wip: poc `docker compose` --- src/index.ts | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/src/index.ts b/src/index.ts index 55cd91a..ed71f44 100644 --- a/src/index.ts +++ b/src/index.ts @@ -122,7 +122,7 @@ const configToArgs = (config): string[] => { * Converts docker-compose commandline options to cli arguments */ const composeOptionsToArgs = (composeOptions): string[] => { - let composeArgs: string[] = [] + let composeArgs: string[] = ['compose'] composeOptions.forEach((option: string[] | string): void => { if (option instanceof Array) { @@ -136,6 +136,24 @@ const composeOptionsToArgs = (composeOptions): string[] => { return composeArgs } +/** + * Converts docker-compose commandline options to cli arguments + */ +const commandOptionsToArgs = (commandOptions): string[] => { + let commandArgs: string[] = [] + + commandOptions.forEach((option: string[] | string): void => { + if (option instanceof Array) { + commandArgs = commandArgs.concat(option) + } + if (typeof option === 'string') { + commandArgs = commandArgs.concat([option]) + } + }) + + return commandArgs +} + /** * Executes docker-compose command with common options */ @@ -156,13 +174,14 @@ export const execCompose = ( composeArgs = composeArgs.concat( configArgs.concat( - [command].concat(composeOptionsToArgs(commandOptions), args) + [command].concat(commandOptionsToArgs(commandOptions), args) ) ) const cwd = options.cwd const env = options.env || undefined - const executablePath = options.executablePath || 'docker-compose' + const executablePath = + 'docker' || options.executablePath || 'docker-compose' const childProc = childProcess.spawn(executablePath, composeArgs, { cwd,