import { CliTerseError } from '@alwaysai/alwayscli';

import { DOCKERFILE_STANDALONE } from '../../paths';
import { writeStandaloneDockerfile } from '../../core/app';
import { Spinner, logger, stringifyError } from '../../util';

const WRITE_MESSAGE = `Write ${DOCKERFILE_STANDALONE}`;
export async function writeStandaloneDockerfileComponent() {
  const spinner = Spinner(WRITE_MESSAGE);
  try {
    await writeStandaloneDockerfile();
    spinner.succeed();
  } catch (exception) {
    logger.error(stringifyError(exception));
    spinner.fail();
    throw new CliTerseError(exception);
  }
}
