27 lines
906 B
TypeScript
27 lines
906 B
TypeScript
import grabDockerStackServicesNames from "./backend/names/grab-docker-stack-services-names";
|
|
import execute from "./execute";
|
|
import normalizeText from "./normalize-text";
|
|
|
|
export default function mariaDBlocalQuery(query: string | string[]) {
|
|
const { dbServiceName, maxScaleServiceName } =
|
|
grabDockerStackServicesNames();
|
|
|
|
const MARIADB_CMD_PREFIX = `docker exec ${dbServiceName} mariadb -u root -p"${process.env.DSQL_MARIADB_ROOT_PASSWORD}"`;
|
|
|
|
function grabMariadbDockerCmd(cmd: string) {
|
|
return `${MARIADB_CMD_PREFIX} -e "${removeQueryDoubleQuotes(
|
|
normalizeText(cmd)
|
|
)}"`;
|
|
}
|
|
|
|
const finalQuery = Array.isArray(query)
|
|
? query.map((qry) => grabMariadbDockerCmd(qry))
|
|
: grabMariadbDockerCmd(query);
|
|
|
|
return execute(finalQuery);
|
|
}
|
|
|
|
export function removeQueryDoubleQuotes(query: string) {
|
|
return query.replace(/\"/gm, '\\"');
|
|
}
|