From 8706b771233ca8008687e6a93878fe1999076189 Mon Sep 17 00:00:00 2001
From: Manuel Blechschmidt <manuel.blechschmidt@incentergy.de>
Date: Tue, 27 Feb 2024 05:58:36 +0100
Subject: [PATCH] fix(datasource/go): Remove .git/v2 in go package name to
 retrieve it correctly (#27569)

---
 lib/modules/datasource/go/base.spec.ts | 2 +-
 lib/modules/datasource/go/base.ts      | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/modules/datasource/go/base.spec.ts b/lib/modules/datasource/go/base.spec.ts
index 7bfbe623ae..2fa96c2691 100644
--- a/lib/modules/datasource/go/base.spec.ts
+++ b/lib/modules/datasource/go/base.spec.ts
@@ -260,7 +260,7 @@ describe('modules/datasource/go/base', () => {
         hostRules.hostType.mockReturnValue('gitlab');
         httpMock
           .scope('https://my.custom.domain')
-          .get('/golang/subgroup/myrepo.git/v2?go-get=1')
+          .get('/golang/subgroup/myrepo?go-get=1')
           .reply(200, Fixtures.get('go-get-gitlab-ee-private-subgroup.html'));
 
         const res = await BaseGoDatasource.getDatasource(
diff --git a/lib/modules/datasource/go/base.ts b/lib/modules/datasource/go/base.ts
index f109920d3d..d29bc05714 100644
--- a/lib/modules/datasource/go/base.ts
+++ b/lib/modules/datasource/go/base.ts
@@ -77,7 +77,8 @@ export class BaseGoDatasource {
   private static async goGetDatasource(
     goModule: string,
   ): Promise<DataSource | null> {
-    const pkgUrl = `https://${goModule}?go-get=1`;
+    const goModuleUrl = goModule.replace(/\.git\/v2$/, '');
+    const pkgUrl = `https://${goModuleUrl}?go-get=1`;
     // GitHub Enterprise only returns a go-import meta
     const res = (await BaseGoDatasource.http.get(pkgUrl)).body;
     return (
-- 
GitLab