UNPKG

@augment-vir/node

Version:

A collection of augments, helpers types, functions, and classes only for Node.js (backend) JavaScript environments.

25 lines (24 loc) 802 B
import { check } from '@augment-vir/assert'; import { runShellCommand } from '../../augments/terminal/shell.js'; import { makeEnvFlags } from './docker-command-inputs.js'; export async function runContainerCommand({ tty, containerNameOrId, command, envMapping, executionEnv, dockerFlags = [], }) { const envFlags = makeEnvFlags(envMapping); /** Can't test tty in automated tests. */ /* node:coverage ignore next 1 */ const ttyFlag = tty ? '-it' : ''; const fullCommand = [ 'docker', 'exec', ttyFlag, envFlags, ...dockerFlags, containerNameOrId, command, ] .filter(check.isTruthy) .join(' '); return await runShellCommand(fullCommand, { env: executionEnv, rejectOnError: true, }); }