From 2b94b3c9ac58171acef1c587ed2ebba8ba304dc9 Mon Sep 17 00:00:00 2001 From: rcchopra Date: Fri, 22 Aug 2025 11:55:20 +0530 Subject: [PATCH 1/4] proxy setting --- scm/driver/bitbucket/repo.go | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/scm/driver/bitbucket/repo.go b/scm/driver/bitbucket/repo.go index 70fa6b0e..029b22fa 100644 --- a/scm/driver/bitbucket/repo.go +++ b/scm/driver/bitbucket/repo.go @@ -92,11 +92,7 @@ func (s *repositoryService) Find(ctx context.Context, repo string) (*scm.Reposit path := fmt.Sprintf("2.0/repositories/%s", repo) out := new(repository) res, err := s.client.do(ctx, "GET", path, nil, out) - if err != nil { - return nil, res, err - } - repoPerm, _, err := s.FindPerms(ctx, repo) - return convertRepository2(out, repoPerm), res, err + return convertRepository(out), res, err } // FindHook returns a repository hook. From ab204f86777b57042cb75bb024f9f749029df594 Mon Sep 17 00:00:00 2001 From: rcchopra Date: Fri, 22 Aug 2025 12:13:05 +0530 Subject: [PATCH 2/4] proxy setting --- scm/driver/bitbucket/repo_test.go | 7 +------ scm/driver/bitbucket/testdata/repo.json.golden | 6 +----- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/scm/driver/bitbucket/repo_test.go b/scm/driver/bitbucket/repo_test.go index 58fc343f..f9a410df 100644 --- a/scm/driver/bitbucket/repo_test.go +++ b/scm/driver/bitbucket/repo_test.go @@ -25,12 +25,7 @@ func TestRepositoryFind(t *testing.T) { Type("application/json"). File("testdata/repo.json") - gock.New("https://api.bitbucket.org"). - Get("/2.0/user/permissions/repositories"). - MatchParam("q", `repository.full_name="atlassian/stash-example-plugin"`). - Reply(200). - Type("application/json"). - File("testdata/perms.json") + client, _ := New("https://api.bitbucket.org") got, _, err := client.Repositories.Find(context.Background(), "atlassian/stash-example-plugin") diff --git a/scm/driver/bitbucket/testdata/repo.json.golden b/scm/driver/bitbucket/testdata/repo.json.golden index 4f28b5a8..7275c644 100644 --- a/scm/driver/bitbucket/testdata/repo.json.golden +++ b/scm/driver/bitbucket/testdata/repo.json.golden @@ -2,11 +2,7 @@ "ID": "{7dd600e6-0d9c-4801-b967-cb4cc17359ff}", "Namespace": "atlassian", "Name": "stash-example-plugin", - "Perm": { - "Pull": true, - "Push": true, - "Admin": true - }, + "Branch": "master", "Private": true, "Clone": "https://bitbucket.org/atlassian/stash-example-plugin.git", From 80dbf3aca84181e51c249cb0973a554fa5f46b1e Mon Sep 17 00:00:00 2001 From: rcchopra Date: Fri, 22 Aug 2025 18:36:17 +0530 Subject: [PATCH 3/4] proxy enabled --- scm/transport/proxy/proxy.go | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/scm/transport/proxy/proxy.go b/scm/transport/proxy/proxy.go index 92a546bc..70db4455 100644 --- a/scm/transport/proxy/proxy.go +++ b/scm/transport/proxy/proxy.go @@ -66,9 +66,7 @@ func NewTransport(base http.RoundTripper, proxyURL string) (http.RoundTripper, e if err != nil { return nil, err } - - return &Transport{ - Base: base, - ProxyURL: parsedURL, + return &http.Transport{ + Proxy: http.ProxyURL(parsedURL), }, nil } From bd35889ab927ffd898b9acfc6c82a841b5d01b5e Mon Sep 17 00:00:00 2001 From: rcchopra Date: Fri, 22 Aug 2025 18:47:05 +0530 Subject: [PATCH 4/4] proxy enabled --- scm/transport/proxy/proxy_test.go | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/scm/transport/proxy/proxy_test.go b/scm/transport/proxy/proxy_test.go index b0a602ae..cff3fbbf 100644 --- a/scm/transport/proxy/proxy_test.go +++ b/scm/transport/proxy/proxy_test.go @@ -37,15 +37,28 @@ func TestNewTransport_ValidProxyURL(t *testing.T) { if err != nil { t.Fatalf("Expected no error for valid proxy URL, got: %v", err) } - - proxyTransport, ok := transport.(*Transport) + + proxyTransport, ok := transport.(*http.Transport) if !ok { - t.Fatal("Expected transport to be of type *Transport") + t.Fatal("Expected transport to be of type *http.Transport") + } + + // Test that the proxy function is set correctly + if proxyTransport.Proxy == nil { + t.Fatal("Expected proxy function to be set") } - + + // Test the proxy function with a sample request + testURL, _ := url.Parse("http://example.com") + req := &http.Request{URL: testURL} + proxyURLResult, err := proxyTransport.Proxy(req) + if err != nil { + t.Fatalf("Expected no error from proxy function, got: %v", err) + } + expectedURL, _ := url.Parse(proxyURL) - if proxyTransport.ProxyURL.String() != expectedURL.String() { - t.Errorf("Expected proxy URL %s, got %s", expectedURL.String(), proxyTransport.ProxyURL.String()) + if proxyURLResult.String() != expectedURL.String() { + t.Errorf("Expected proxy URL %s, got %s", expectedURL.String(), proxyURLResult.String()) } }