@agentscope/studio
Version:
AgentScope Studio is a powerful local monitoring and visualization tool designed to provide real-time insights into your system's performance and behavior.
55 lines (54 loc) • 2.87 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.initializeDatabase = void 0;
const typeorm_1 = require("typeorm");
const InputRequest_1 = require("./dao/InputRequest");
const Run_1 = require("./dao/Run");
const migrations_1 = require("./migrations");
const FridayApp_1 = require("./models/FridayApp");
const FridayAppView_1 = require("./models/FridayAppView");
const InputRequest_2 = require("./models/InputRequest");
const Message_1 = require("./models/Message");
const ModelInvocationView_1 = require("./models/ModelInvocationView");
const Reply_1 = require("./models/Reply");
const Run_2 = require("./models/Run");
const RunView_1 = require("./models/RunView");
const Trace_1 = require("./models/Trace");
const initializeDatabase = (databaseConfig) => __awaiter(void 0, void 0, void 0, function* () {
try {
const options = Object.assign(Object.assign({}, databaseConfig), { entities: [
Run_2.RunTable,
RunView_1.RunView,
Message_1.MessageTable,
Reply_1.ReplyTable,
InputRequest_2.InputRequestTable,
Trace_1.SpanTable,
ModelInvocationView_1.ModelInvocationView,
FridayApp_1.FridayAppMessageTable,
FridayApp_1.FridayAppReplyTable,
FridayAppView_1.FridayAppReplyView,
], synchronize: true, migrations: migrations_1.migrations, migrationsRun: true, logging: false });
const dataSource = new typeorm_1.DataSource(options);
yield dataSource.initialize();
const printingOptions = Object.assign(Object.assign({}, options), { entities: undefined, migrations: undefined });
console.debug(`Database initialized with options: ${JSON.stringify(printingOptions, null, 2)}`);
console.debug('Refresh the database ...');
yield Run_1.RunDao.updateRunStatusAtBeginning();
yield InputRequest_1.InputRequestDao.updateInputRequests();
console.debug('Done');
}
catch (error) {
console.error('Error initializing database', error);
throw error;
}
});
exports.initializeDatabase = initializeDatabase;