MCPcopy Create free account
hub / github.com/Kilo-Org/cloud / needsDB

Function needsDB

services/app-builder/src/db-provisioner.ts:20–39  ·  view source on GitHub ↗
(sandbox: Sandbox)

Source from the content-addressed store, hash-verified

18
19export function createDBProvisioner(deps: DBProvisionerDeps) {
20 async function needsDB(sandbox: Sandbox): Promise<boolean> {
21 const result = await sandbox.readFile('/workspace/package.json');
22 if (!result.success) {
23 logger.debug('needsDB: package.json not found');
24 return false;
25 }
26 try {
27 const pkg = JSON.parse(result.content) as {
28 dependencies?: Record<string, string>;
29 devDependencies?: Record<string, string>;
30 };
31 const allDeps = { ...pkg.dependencies, ...pkg.devDependencies };
32 const found = '@kilocode/app-builder-db' in allDeps;
33 logger.debug(found ? 'needsDB: dependency found' : 'needsDB: dependency not in package.json');
34 return found;
35 } catch (error) {
36 logger.warn('needsDB: failed to parse package.json', formatError(error));
37 return false;
38 }
39 }
40
41 async function provisionDB(appId: string): Promise<void> {
42 logger.info('Provisioning database');

Callers 1

provisionIfNeededFunction · 0.85

Calls 4

debugMethod · 0.65
warnMethod · 0.65
formatErrorFunction · 0.50
readFileMethod · 0.45

Tested by

no test coverage detected