diff --git a/packages/server/src/utils/providers/gitea.ts b/packages/server/src/utils/providers/gitea.ts index 4d26a9212..a2e061fcd 100644 --- a/packages/server/src/utils/providers/gitea.ts +++ b/packages/server/src/utils/providers/gitea.ts @@ -211,7 +211,7 @@ export const testGiteaConnection = async (input: { giteaId: string }) => { }); } - const baseUrl = provider.giteaUrl.replace(/\/+$/, ""); + const baseUrl = (provider.giteaInternalUrl || provider.giteaUrl).replace(/\/+$/, ""); // Use /user/repos to get authenticated user's repositories with pagination let allRepos = 0; @@ -268,7 +268,7 @@ export const getGiteaRepositories = async (giteaId?: string) => { await refreshGiteaToken(giteaId); const giteaProvider = await findGiteaById(giteaId); - const baseUrl = giteaProvider.giteaUrl.replace(/\/+$/, ""); + const baseUrl = (giteaProvider.giteaInternalUrl || giteaProvider.giteaUrl).replace(/\/+$/, ""); // Use /user/repos to get authenticated user's repositories with pagination let allRepositories: any[] = []; @@ -333,7 +333,7 @@ export const getGiteaBranches = async (input: { const giteaProvider = await findGiteaById(input.giteaId); - const baseUrl = giteaProvider.giteaUrl.replace(/\/+$/, ""); + const baseUrl = (giteaProvider.giteaInternalUrl || giteaProvider.giteaUrl).replace(/\/+$/, ""); // Handle pagination for branches let allBranches: any[] = []; diff --git a/packages/server/src/utils/providers/gitlab.ts b/packages/server/src/utils/providers/gitlab.ts index 41126cd29..0629895aa 100644 --- a/packages/server/src/utils/providers/gitlab.ts +++ b/packages/server/src/utils/providers/gitlab.ts @@ -214,10 +214,11 @@ export const getGitlabBranches = async (input: { const allBranches = []; let page = 1; const perPage = 100; // GitLab's max per page is 100 + const baseUrl = (gitlabProvider.gitlabInternalUrl || gitlabProvider.gitlabUrl).replace(/\/+$/, ""); while (true) { const branchesResponse = await fetch( - `${gitlabProvider.gitlabUrl}/api/v4/projects/${input.id}/repository/branches?page=${page}&per_page=${perPage}`, + `${baseUrl}/api/v4/projects/${input.id}/repository/branches?page=${page}&per_page=${perPage}`, { headers: { Authorization: `Bearer ${gitlabProvider.accessToken}`, @@ -292,10 +293,11 @@ export const validateGitlabProvider = async (gitlabProvider: Gitlab) => { const allProjects = []; let page = 1; const perPage = 100; // GitLab's max per page is 100 + const baseUrl = (gitlabProvider.gitlabInternalUrl || gitlabProvider.gitlabUrl).replace(/\/+$/, ""); while (true) { const response = await fetch( - `${gitlabProvider.gitlabUrl}/api/v4/projects?membership=true&page=${page}&per_page=${perPage}`, + `${baseUrl}/api/v4/projects?membership=true&page=${page}&per_page=${perPage}`, { headers: { Authorization: `Bearer ${gitlabProvider.accessToken}`,