feat: changed backend-pg to backend

This commit is contained in:
Akhil Mohan
2024-01-27 19:14:33 +05:30
parent d13eafcef7
commit 66d258f02b
792 changed files with 40298 additions and 40607 deletions
+61
View File
@@ -0,0 +1,61 @@
import { Knex } from "knex";
import { AuthMethod } from "../../services/auth/auth-type";
import { TableName } from "../schemas";
import { generateUserSrpKeys, seedData1 } from "../seed-data";
export async function seed(knex: Knex): Promise<void> {
// Deletes ALL existing entries
await knex(TableName.Users).del();
await knex(TableName.UserEncryptionKey).del();
await knex(TableName.SuperAdmin).del();
await knex(TableName.SuperAdmin).insert([{ initialized: true, allowSignUp: true }]);
// Inserts seed entries
const [user] = await knex(TableName.Users)
.insert([
{
// @ts-ignore to calculate predefined
id: seedData1.id,
email: seedData1.email,
superAdmin: true,
firstName: "test",
lastName: "",
authMethods: [AuthMethod.EMAIL],
isAccepted: true,
isMfaEnabled: false,
mfaMethods: null,
devices: null
}
])
.returning("*");
const encKeys = await generateUserSrpKeys(seedData1.password);
// password: testInfisical@1
await knex(TableName.UserEncryptionKey).insert([
{
encryptionVersion: 2,
protectedKey: encKeys.protectedKey,
protectedKeyIV: encKeys.protectedKeyIV,
protectedKeyTag: encKeys.protectedKeyTag,
publicKey: encKeys.publicKey,
encryptedPrivateKey: encKeys.encryptedPrivateKey,
iv: encKeys.encryptedPrivateKeyIV,
tag: encKeys.encryptedPrivateKeyTag,
salt: encKeys.salt,
verifier: encKeys.verifier,
userId: user.id
}
]);
await knex(TableName.AuthTokenSession).insert({
// @ts-ignore
id: seedData1.token.id,
userId: seedData1.id,
ip: "151.196.220.213",
userAgent:
"Mozilla/5.0 (X11; Ubuntu; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36 RuxitSynthetic/1.0 v3690753611340580436 t8052286838287810618",
accessVersion: 1,
refreshVersion: 1,
lastUsed: new Date()
});
}
+34
View File
@@ -0,0 +1,34 @@
import { Knex } from "knex";
import { OrgMembershipRole, OrgMembershipStatus, TableName } from "../schemas";
import { seedData1 } from "../seed-data";
export async function seed(knex: Knex): Promise<void> {
// Deletes ALL existing entries
await knex(TableName.Organization).del();
await knex(TableName.OrgMembership).del();
const user = await knex(TableName.Users).where({ email: seedData1.email }).first();
if (!user) throw new Error("User not found");
// Inserts seed entries
const [org] = await knex(TableName.Organization)
.insert([
{
// @ts-ignore because we need that id for api calls
id: seedData1.organization.id,
name: "infisical",
slug: "infisical",
customerId: null
}
])
.returning("*");
await knex(TableName.OrgMembership).insert([
{
role: OrgMembershipRole.Admin,
orgId: org.id,
status: OrgMembershipStatus.Accepted,
userId: user.id
}
]);
}
+51
View File
@@ -0,0 +1,51 @@
import { Knex } from "knex";
import { OrgMembershipRole, TableName } from "../schemas";
import { seedData1 } from "../seed-data";
export const DEFAULT_PROJECT_ENVS = [
{ name: "Development", slug: "dev" },
{ name: "Staging", slug: "staging" },
{ name: "Production", slug: "prod" }
];
export async function seed(knex: Knex): Promise<void> {
// Deletes ALL existing entries
await knex(TableName.Project).del();
await knex(TableName.Environment).del();
await knex(TableName.SecretFolder).del();
const [project] = await knex(TableName.Project)
.insert({
name: seedData1.project.name,
orgId: seedData1.organization.id,
slug: "first-project",
// @ts-ignore pre calc id
id: seedData1.project.id
})
.returning("*");
// await knex(TableName.ProjectKeys).insert({
// projectId: project.id,
// senderId: seedData1.id
// });
await knex(TableName.ProjectMembership).insert({
projectId: project.id,
role: OrgMembershipRole.Admin,
userId: seedData1.id
});
const envs = await knex(TableName.Environment)
.insert(
DEFAULT_PROJECT_ENVS.map(({ name, slug }, index) => ({
name,
slug,
projectId: project.id,
position: index + 1
}))
)
.returning("*");
await knex(TableName.SecretFolder).insert(
envs.map(({ id }) => ({ name: "root", envId: id, parentId: null }))
);
}