refactor: update gitlab update name

This commit is contained in:
Mauricio Siu 2024-09-01 22:07:40 -06:00
parent 68d2e73e7a
commit 2593736179
5 changed files with 12 additions and 36 deletions

View File

@ -1,4 +1,4 @@
import { createGithub } from "@/server/api/services/git-provider";
import { createGithub } from "@/server/api/services/github";
import { db } from "@/server/db";
import { github } from "@/server/db/schema";
import { eq } from "drizzle-orm";

View File

@ -1,7 +1,4 @@
import {
findGitlabById,
updateGitlab,
} from "@/server/api/services/git-provider";
import { findGitlabById, updateGitlab } from "@/server/api/services/gitlab";
import type { NextApiRequest, NextApiResponse } from "next";
export default async function handler(

View File

@ -16,6 +16,7 @@ import {
import { TRPCError } from "@trpc/server";
import { createGitlab, findGitlabById, updateGitlab } from "../services/gitlab";
import { db } from "@/server/db";
import { updateGitProvider } from "../services/git-provider";
export const gitlabRouter = createTRPCRouter({
create: protectedProcedure
@ -81,6 +82,12 @@ export const gitlabRouter = createTRPCRouter({
update: protectedProcedure
.input(apiUpdateGitlab)
.mutation(async ({ input }) => {
return await updateGitlab(input.gitlabId, input);
if (input.name) {
await updateGitProvider(input.gitProviderId, {
name: input.name,
});
} else {
await updateGitlab(input.gitlabId, input);
}
}),
});

View File

@ -1,7 +1,6 @@
import { db } from "@/server/db";
import {
type apiCreateGitlab,
type apiUpdateGitlab,
type bitbucket,
type github,
gitlab,
@ -63,33 +62,6 @@ export const findGitlabById = async (gitlabId: string) => {
};
export const updateGitlab = async (
gitlabId: string,
input: typeof apiUpdateGitlab._type,
) => {
return await db.transaction(async (tx) => {
const result = await tx
.update(gitlab)
.set({
...input,
})
.where(eq(gitlab.gitlabId, gitlabId))
.returning();
if (input.name) {
await tx
.update(gitProvider)
.set({
name: input.name,
})
.where(eq(gitProvider.gitProviderId, input.gitProviderId))
.returning();
}
return result[0];
});
};
export const updateGitlabComplete = async (
gitlabId: string,
input: Partial<Gitlab>,
) => {

View File

@ -8,7 +8,7 @@ import type { InferResultType } from "@/server/types/with";
import type { Compose } from "@/server/api/services/compose";
import {
findGitlabById,
updateGitlabComplete,
updateGitlab,
type Gitlab,
} from "@/server/api/services/gitlab";
import type { apiGitlabTestConnection } from "@/server/db/schema";
@ -48,7 +48,7 @@ export const refreshGitlabToken = async (gitlabProviderId: string) => {
console.log("Refreshed token");
await updateGitlabComplete(gitlabProviderId, {
await updateGitlab(gitlabProviderId, {
accessToken: data.access_token,
refreshToken: data.refresh_token,
expiresAt,