mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-06 06:26:42 +00:00
Update 20240724101056_access-request-groups.ts
This commit is contained in:
committed by
Daniel Hougaard
parent
ae5b57f69f
commit
65db91d491
@@ -116,18 +116,21 @@ export async function up(knex: Knex): Promise<void> {
|
|||||||
tb.foreign("projectId").references("id").inTable(TableName.Project).onDelete("CASCADE");
|
tb.foreign("projectId").references("id").inTable(TableName.Project).onDelete("CASCADE");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const membershipQuery = knex(TableName.ProjectMembership)
|
||||||
|
.select("userId", "projectId")
|
||||||
|
.whereRaw(`${TableName.ProjectMembership}.id = ${TableName.ProjectUserAdditionalPrivilege}.projectMembershipId`)
|
||||||
|
.limit(1);
|
||||||
|
|
||||||
await knex(TableName.ProjectUserAdditionalPrivilege)
|
await knex(TableName.ProjectUserAdditionalPrivilege)
|
||||||
.update({
|
.update({
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
// @ts-ignore because generate schema happens after this
|
// @ts-ignore because generate schema happens after this
|
||||||
userId: knex.ref("pm.userId"),
|
userId: membershipQuery.select("userId"),
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
// @ts-ignore because generate schema happens after this
|
// @ts-ignore because generate schema happens after this
|
||||||
projectId: knex.ref("pm.projectId")
|
projectId: membershipQuery.select("projectId")
|
||||||
})
|
})
|
||||||
.from(`${TableName.ProjectUserAdditionalPrivilege} as puap`)
|
.whereNotNull("projectMembershipId");
|
||||||
.join(`${TableName.ProjectMembership} as pm`, "puap.projectMembershipId", "pm.id")
|
|
||||||
.whereNotNull("puap.projectMembershipId");
|
|
||||||
|
|
||||||
await knex.schema.alterTable(TableName.ProjectUserAdditionalPrivilege, (tb) => {
|
await knex.schema.alterTable(TableName.ProjectUserAdditionalPrivilege, (tb) => {
|
||||||
tb.uuid("userId").notNullable().alter();
|
tb.uuid("userId").notNullable().alter();
|
||||||
@@ -189,13 +192,8 @@ export async function down(knex: Knex): Promise<void> {
|
|||||||
});
|
});
|
||||||
|
|
||||||
await knex.schema.alterTable(TableName.ProjectUserAdditionalPrivilege, (tb) => {
|
await knex.schema.alterTable(TableName.ProjectUserAdditionalPrivilege, (tb) => {
|
||||||
// DROP AT A LATER TIME
|
tb.dropColumn("userId");
|
||||||
// tb.dropColumn("userId");
|
tb.dropColumn("projectId");
|
||||||
// tb.dropColumn("projectId");
|
|
||||||
|
|
||||||
// ADD ALLOW NULLABLE FOR NOW
|
|
||||||
tb.uuid("userId").nullable().alter();
|
|
||||||
tb.string("projectId").nullable().alter();
|
|
||||||
|
|
||||||
tb.uuid("projectMembershipId").notNullable().alter();
|
tb.uuid("projectMembershipId").notNullable().alter();
|
||||||
});
|
});
|
||||||
@@ -226,11 +224,7 @@ export async function down(knex: Knex): Promise<void> {
|
|||||||
.where("userId", knex.raw("??", [`${TableName.AccessApprovalPolicyApprover}.approverUserId`]))
|
.where("userId", knex.raw("??", [`${TableName.AccessApprovalPolicyApprover}.approverUserId`]))
|
||||||
});
|
});
|
||||||
await knex.schema.alterTable(TableName.AccessApprovalPolicyApprover, (tb) => {
|
await knex.schema.alterTable(TableName.AccessApprovalPolicyApprover, (tb) => {
|
||||||
// DROP AT A LATER TIME
|
tb.dropColumn("approverUserId");
|
||||||
// tb.dropColumn("approverUserId");
|
|
||||||
|
|
||||||
// ADD ALLOW NULLABLE FOR NOW
|
|
||||||
tb.uuid("approverUserId").nullable().alter();
|
|
||||||
|
|
||||||
tb.uuid("approverId").notNullable().alter();
|
tb.uuid("approverId").notNullable().alter();
|
||||||
});
|
});
|
||||||
@@ -266,11 +260,7 @@ export async function down(knex: Knex): Promise<void> {
|
|||||||
|
|
||||||
await knex.schema.alterTable(TableName.AccessApprovalRequest, (tb) => {
|
await knex.schema.alterTable(TableName.AccessApprovalRequest, (tb) => {
|
||||||
if (hasRequestedByUserId) {
|
if (hasRequestedByUserId) {
|
||||||
// DROP AT A LATER TIME
|
|
||||||
tb.dropColumn("requestedByUserId");
|
tb.dropColumn("requestedByUserId");
|
||||||
|
|
||||||
// ADD ALLOW NULLABLE FOR NOW
|
|
||||||
tb.uuid("requestedByUserId").nullable().alter();
|
|
||||||
}
|
}
|
||||||
if (hasRequestedBy) tb.uuid("requestedBy").notNullable().alter();
|
if (hasRequestedBy) tb.uuid("requestedBy").notNullable().alter();
|
||||||
});
|
});
|
||||||
@@ -295,13 +285,9 @@ export async function down(knex: Knex): Promise<void> {
|
|||||||
.where("userId", knex.raw("??", [`${TableName.AccessApprovalRequestReviewer}.reviewerUserId`]))
|
.where("userId", knex.raw("??", [`${TableName.AccessApprovalRequestReviewer}.reviewerUserId`]))
|
||||||
});
|
});
|
||||||
await knex.schema.alterTable(TableName.AccessApprovalRequestReviewer, (tb) => {
|
await knex.schema.alterTable(TableName.AccessApprovalRequestReviewer, (tb) => {
|
||||||
|
tb.dropColumn("reviewerUserId");
|
||||||
|
|
||||||
tb.uuid("member").notNullable().alter();
|
tb.uuid("member").notNullable().alter();
|
||||||
|
|
||||||
// DROP AT A LATER TIME
|
|
||||||
// tb.dropColumn("reviewerUserId");
|
|
||||||
|
|
||||||
// ADD ALLOW NULLABLE FOR NOW
|
|
||||||
tb.uuid("reviewerUserId").nullable().alter();
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user