alwaysai
Version:
The alwaysAI command-line interface (CLI)
43 lines • 1.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const fs_1 = require("fs");
const app_config_file_1 = require("../util/app-config-file");
const target_config_file_1 = require("../util/target-config-file");
const constants_1 = require("../constants");
const app_configure_component_1 = require("./app-configure-component");
const alwayscli_1 = require("@alwaysai/alwayscli");
const ora = require("ora");
async function checkForRequiredFilesComponent(props) {
const { yes } = props;
const spinner = ora('Check for required files').start();
let titleOfMissingFile = '';
if (!titleOfMissingFile && !app_config_file_1.appConfigFile.exists()) {
titleOfMissingFile = `Application configuration file "${app_config_file_1.APP_CONFIG_FILE_NAME}"`;
}
if (!titleOfMissingFile && !target_config_file_1.targetConfigFile.exists()) {
titleOfMissingFile = `Target configuration file "${target_config_file_1.TARGET_CONFIG_FILE_NAME}"`;
}
if (!titleOfMissingFile && !fs_1.existsSync(constants_1.APP_DOT_PY)) {
titleOfMissingFile = `Python application file "${constants_1.APP_DOT_PY}"`;
}
if (titleOfMissingFile) {
if (yes) {
spinner.fail();
throw new alwayscli_1.TerseError(`${titleOfMissingFile} not found. Please run "alwaysai app configure".`);
}
else {
spinner.warn(`${titleOfMissingFile} not found`);
await app_configure_component_1.appConfigureComponent({
yes,
targetPath: '',
targetHostname: '',
targetProtocol: 'ssh+docker:',
});
}
}
else {
spinner.succeed();
}
}
exports.checkForRequiredFilesComponent = checkForRequiredFilesComponent;
//# sourceMappingURL=check-for-required-files-component.js.map