Budibase is an open-source low-code platform for creating internal apps in minutes. Supports PostgreSQL, MySQL, MSSQL, MongoDB, Rest API, Docker, K8s 🚀
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

45 lines
1.2 KiB

const {
initialiseData,
setupDatastore
} = require("@budibase/core");
const getDatabaseManager = require("../utilities/databaseManager");
const { applictionVersionPackage } = require("../utilities/createAppPackage");
const { determineVersionId } = require("../utilities/runtimePackages");
module.exports = async (context, datastoreModule, app, instance) => {
try {
const databaseManager = getDatabaseManager(
datastoreModule,
context.config.datastoreConfig);
await databaseManager.createEmptyInstanceDb(
app.id, instance.id);
const dbConfig = databaseManager.getInstanceDatastoreConfig(
app.id, instance.id);
const datastore = setupDatastore(
datastoreModule.getDatastore(dbConfig));
const versionId = determineVersionId(instance.version);
const appPackage = await applictionVersionPackage(
context, app.name, versionId, instance.key
);
await initialiseData(
datastore,
appPackage.appDefinition,
appPackage.accessLevels);
return dbConfig;
} catch(e) {
throw e;
}
};