datasquirel/package-shared/shell/grantFullPriviledges.ts
Benjamin Toby 7e8bb37c09 Updates
2025-07-05 14:59:30 +01:00

45 lines
1.5 KiB
TypeScript

require("dotenv").config({ path: "./../.env" });
import { AppNames } from "../dict/app-names";
import serverError from "../functions/backend/serverError";
import noDatabaseDbHandler from "./utils/noDatabaseDbHandler";
/**
* # Create Database From Schema
*/
async function grantFullPrivileges({ userId }: { userId: string | null }) {
/**
* Grab Schema
*
* @description Grab Schema
*/
try {
const defaultMariadbUserHost = process.env.DSQL_DB_HOST || "127.0.0.1";
const allDatabases = await noDatabaseDbHandler(`SHOW DATABASES`);
const datasquirelUserDatabases = allDatabases.filter((database: any) =>
database.Database.match(new RegExp(`^${AppNames["DsqlDbPrefix"]}`))
);
for (let i = 0; i < datasquirelUserDatabases.length; i++) {
const datasquirelUserDatabase = datasquirelUserDatabases[i];
const { Database } = datasquirelUserDatabase;
}
const flushPriviledged = await noDatabaseDbHandler(`FLUSH PRIVILEGES`);
} catch (error: any) {
serverError({
component: "shell/grantDbPriviledges/main-catch-error",
message: error.message,
user: { id: userId },
});
}
process.exit();
}
const userArg = process.argv[process.argv.indexOf("--user")];
const externalUser = process.argv[process.argv.indexOf("--user") + 1];
grantFullPrivileges({ userId: userArg ? externalUser : null });