alwaysai
Version:
The alwaysAI command-line interface (CLI)
35 lines • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildDockerImageComponent = void 0;
const logSymbols = require("log-symbols");
const docker_cmd_1 = require("../../util/docker/docker-cmd");
const alwayscli_1 = require("@alwaysai/alwayscli");
const util_1 = require("../../util");
async function buildDockerImageComponent(props) {
const { targetHostSpawner, targetHardware, dockerImageTag, dockerfilePath, pullBaseImage } = props;
const dockerTagStr = dockerImageTag ? ` (tag=${dockerImageTag})` : '';
const targetHardwareStr = targetHardware
? ` (ALWAYSAI_HW=${targetHardware})`
: '';
const BUILD_DOCKER_IMAGE_MESSAGE = `Build docker image${dockerTagStr}${targetHardwareStr}`;
(0, util_1.echo)(`- ${BUILD_DOCKER_IMAGE_MESSAGE}`);
try {
const dockerImageId = await (0, docker_cmd_1.buildDockerImage)({
targetHostSpawner,
targetHardware,
dockerImageTag,
dockerfilePath,
pullBaseImage,
runInForeground: true
});
(0, util_1.echo)(`${logSymbols.success} ${BUILD_DOCKER_IMAGE_MESSAGE}`);
return dockerImageId;
}
catch (exception) {
util_1.logger.error((0, util_1.stringifyError)(exception));
(0, util_1.echo)(`${logSymbols.error} ${BUILD_DOCKER_IMAGE_MESSAGE}`);
throw new alwayscli_1.CliTerseError('Docker build failed! Check Docker logs.');
}
}
exports.buildDockerImageComponent = buildDockerImageComponent;
//# sourceMappingURL=build-docker-image-component.js.map