Skip to content

Commit 3cb054a

Browse files
authored
Remove ecosystem usage service API call (#1335)
1 parent 3dade73 commit 3cb054a

File tree

4 files changed

+10
-108
lines changed

4 files changed

+10
-108
lines changed

go.mod

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,8 @@ require (
9696
gopkg.in/warnings.v0 v0.1.2 // indirect
9797
)
9898

99-
// replace github.com/jfrog/jfrog-client-go => github.com/jfrog/jfrog-client-go v1.28.1-0.20241225183733-80a5e1ba7a2c
99+
// attiasas:remove_usage_ecosys
100+
replace github.com/jfrog/jfrog-client-go => github.com/attiasas/jfrog-client-go v0.0.0-20250119095720-828b0be8a057
100101

101102
// replace github.com/jfrog/build-info-go => github.com/jfrog/build-info-go v1.8.9-0.20241121100855-e7a75ceee2bd
102103

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFI
1919
github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4=
2020
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
2121
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
22+
github.com/attiasas/jfrog-client-go v0.0.0-20250119095720-828b0be8a057 h1:UQca9wB62fqY3JxhY8jARn1Y7g9T7VDVtBXB+UfNmFU=
23+
github.com/attiasas/jfrog-client-go v0.0.0-20250119095720-828b0be8a057/go.mod h1:ohIfKpMBCQsE9kunrKQ1wvoExpqsPLaluRFO186B5EM=
2224
github.com/bradleyjkemp/cupaloy/v2 v2.8.0 h1:any4BmKE+jGIaMpnU8YgH/I2LPiLBufr6oMMlVBbn9M=
2325
github.com/bradleyjkemp/cupaloy/v2 v2.8.0/go.mod h1:bm7JXdkRd4BHJk9HpwqAI8BoAY1lps46Enkdqw6aRX0=
2426
github.com/buger/jsonparser v1.1.1 h1:2PnMjfWD7wBILjqQbt530v576A/cAbQvEW9gGIpYMUs=
@@ -93,8 +95,6 @@ github.com/jfrog/build-info-go v1.10.8 h1:8D4wtvKzLS1hzfDWtfH4OliZLtLCgL62tXCnGW
9395
github.com/jfrog/build-info-go v1.10.8/go.mod h1:JcISnovFXKx3wWf3p1fcMmlPdt6adxScXvoJN4WXqIE=
9496
github.com/jfrog/gofrog v1.7.6 h1:QmfAiRzVyaI7JYGsB7cxfAJePAZTzFz0gRWZSE27c6s=
9597
github.com/jfrog/gofrog v1.7.6/go.mod h1:ntr1txqNOZtHplmaNd7rS4f8jpA5Apx8em70oYEe7+4=
96-
github.com/jfrog/jfrog-client-go v1.49.0 h1:NaTK6+LQBEJafL//6ntnS/eVx1dZMJnxydALwWHKORQ=
97-
github.com/jfrog/jfrog-client-go v1.49.0/go.mod h1:ohIfKpMBCQsE9kunrKQ1wvoExpqsPLaluRFO186B5EM=
9898
github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4=
9999
github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM=
100100
github.com/klauspost/compress v1.4.1/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A=

utils/usage/usage.go

Lines changed: 0 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import (
1111
clientutils "github.com/jfrog/jfrog-client-go/utils"
1212
"github.com/jfrog/jfrog-client-go/utils/errorutils"
1313
"github.com/jfrog/jfrog-client-go/utils/log"
14-
ecosysusage "github.com/jfrog/jfrog-client-go/utils/usage"
1514
xrayusage "github.com/jfrog/jfrog-client-go/xray/usage"
1615

1716
"golang.org/x/sync/errgroup"
@@ -27,7 +26,6 @@ type UsageReporter struct {
2726
serverDetails *config.ServerDetails
2827
reportWaitGroup *errgroup.Group
2928

30-
sendToEcosystem bool
3129
sendToXray bool
3230
sendToArtifactory bool
3331
}
@@ -48,7 +46,6 @@ func NewUsageReporter(productId string, serverDetails *config.ServerDetails) *Us
4846
ProductId: productId,
4947
serverDetails: serverDetails,
5048
reportWaitGroup: new(errgroup.Group),
51-
sendToEcosystem: true,
5249
sendToXray: true,
5350
sendToArtifactory: true,
5451
}
@@ -63,11 +60,6 @@ func ShouldReportUsage() (reportUsage bool) {
6360
return reportUsage
6461
}
6562

66-
func (ur *UsageReporter) SetSendToEcosystem(send bool) *UsageReporter {
67-
ur.sendToEcosystem = send
68-
return ur
69-
}
70-
7163
func (ur *UsageReporter) SetSendToXray(send bool) *UsageReporter {
7264
ur.sendToXray = send
7365
return ur
@@ -89,14 +81,6 @@ func (ur *UsageReporter) Report(features ...ReportFeature) {
8981
return
9082
}
9183
log.Debug(ArtifactoryCallHomePrefix, "Sending info...")
92-
if ur.sendToEcosystem {
93-
ur.reportWaitGroup.Go(func() (err error) {
94-
if err = ur.reportToEcosystem(features...); err != nil {
95-
err = fmt.Errorf("ecosystem, %w", err)
96-
}
97-
return
98-
})
99-
}
10084
if ur.sendToXray {
10185
ur.reportWaitGroup.Go(func() (err error) {
10286
if err = ur.reportToXray(features...); err != nil {
@@ -122,22 +106,6 @@ func (ur *UsageReporter) WaitForResponses() (err error) {
122106
return
123107
}
124108

125-
func (ur *UsageReporter) reportToEcosystem(features ...ReportFeature) (err error) {
126-
if ur.serverDetails.Url == "" {
127-
err = errorutils.CheckErrorf("JFrog Platform URL is not set")
128-
return
129-
}
130-
reports, err := ur.convertAttributesToEcosystemReports(features...)
131-
if err != nil {
132-
return
133-
}
134-
if len(reports) == 0 {
135-
err = errorutils.CheckErrorf("nothing to send")
136-
return
137-
}
138-
return ecosysusage.SendEcosystemUsageReports(reports...)
139-
}
140-
141109
func (ur *UsageReporter) reportToXray(features ...ReportFeature) (err error) {
142110
events := ur.convertAttributesToXrayEvents(features...)
143111
if len(events) == 0 {
@@ -219,28 +187,3 @@ func (ur *UsageReporter) convertAttributesToXrayEvents(reportFeatures ...ReportF
219187
}
220188
return
221189
}
222-
223-
func (ur *UsageReporter) convertAttributesToEcosystemReports(reportFeatures ...ReportFeature) (reports []ecosysusage.ReportEcosystemUsageData, err error) {
224-
accountId := ur.serverDetails.Url
225-
clientToFeaturesMap := map[string][]string{}
226-
// Combine
227-
for _, feature := range reportFeatures {
228-
if feature.FeatureId == "" {
229-
continue
230-
}
231-
if features, contains := clientToFeaturesMap[feature.ClientId]; contains {
232-
clientToFeaturesMap[feature.ClientId] = append(features, feature.FeatureId)
233-
} else {
234-
clientToFeaturesMap[feature.ClientId] = []string{feature.FeatureId}
235-
}
236-
}
237-
// Create data
238-
for clientId, features := range clientToFeaturesMap {
239-
var report ecosysusage.ReportEcosystemUsageData
240-
if report, err = ecosysusage.CreateUsageData(ur.ProductId, accountId, clientId, features...); err != nil {
241-
return
242-
}
243-
reports = append(reports, report)
244-
}
245-
return
246-
}

utils/usage/usage_test.go

Lines changed: 6 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99

1010
"github.com/jfrog/jfrog-cli-core/v2/utils/config"
1111
"github.com/jfrog/jfrog-client-go/artifactory/usage"
12-
ecosysusage "github.com/jfrog/jfrog-client-go/utils/usage"
1312
xrayusage "github.com/jfrog/jfrog-client-go/xray/usage"
1413

1514
"github.com/stretchr/testify/assert"
@@ -41,25 +40,6 @@ var (
4140
{FeatureId: "featureId", ClientId: "clientId2"},
4241
{FeatureId: "featureId"},
4342
}
44-
ecosystemData = []ecosysusage.ReportEcosystemUsageData{
45-
{
46-
ProductId: productName,
47-
AccountId: serverUrl,
48-
ClientId: "clientId",
49-
Features: []string{"featureId2"},
50-
},
51-
{
52-
ProductId: productName,
53-
AccountId: serverUrl,
54-
ClientId: "clientId2",
55-
Features: []string{"featureId"},
56-
},
57-
{
58-
ProductId: productName,
59-
AccountId: serverUrl,
60-
Features: []string{"featureId"},
61-
},
62-
}
6343
)
6444

6545
func TestConvertToArtifactoryUsage(t *testing.T) {
@@ -69,22 +49,13 @@ func TestConvertToArtifactoryUsage(t *testing.T) {
6949
}
7050
}
7151

72-
func TestConvertToEcosystemUsage(t *testing.T) {
73-
reporter := NewUsageReporter(productName, &config.ServerDetails{Url: serverUrl})
74-
for i := 0; i < len(features); i++ {
75-
report, err := reporter.convertAttributesToEcosystemReports(features[i])
76-
assert.NoError(t, err)
77-
assert.Equal(t, ecosystemData[i], report[0])
78-
}
79-
}
80-
8152
func TestReportArtifactoryUsage(t *testing.T) {
8253
const commandName = "test-command"
8354
server := httptest.NewServer(createArtifactoryUsageHandler(t, productName, commandName))
8455
defer server.Close()
8556
serverDetails := &config.ServerDetails{ArtifactoryUrl: server.URL + "/"}
8657

87-
reporter := NewUsageReporter(productName, serverDetails).SetSendToEcosystem(false).SetSendToXray(false)
58+
reporter := NewUsageReporter(productName, serverDetails).SetSendToXray(false)
8859

8960
reporter.Report(ReportFeature{
9061
FeatureId: commandName,
@@ -93,15 +64,15 @@ func TestReportArtifactoryUsage(t *testing.T) {
9364
}
9465

9566
func TestReportArtifactoryUsageError(t *testing.T) {
96-
reporter := NewUsageReporter("", &config.ServerDetails{}).SetSendToEcosystem(false).SetSendToXray(false)
67+
reporter := NewUsageReporter("", &config.ServerDetails{}).SetSendToXray(false)
9768
reporter.Report(ReportFeature{
9869
FeatureId: "",
9970
})
10071
assert.Error(t, reporter.WaitForResponses())
10172

10273
server := httptest.NewServer(create404UsageHandler(t))
10374
defer server.Close()
104-
reporter = NewUsageReporter("", &config.ServerDetails{ArtifactoryUrl: server.URL + "/"}).SetSendToEcosystem(false).SetSendToXray(false)
75+
reporter = NewUsageReporter("", &config.ServerDetails{ArtifactoryUrl: server.URL + "/"}).SetSendToXray(false)
10576
reporter.Report(ReportFeature{
10677
FeatureId: "",
10778
})
@@ -140,7 +111,7 @@ func TestReportXrayUsage(t *testing.T) {
140111
defer server.Close()
141112
serverDetails := &config.ServerDetails{XrayUrl: server.URL + "/"}
142113

143-
reporter := NewUsageReporter(productName, serverDetails).SetSendToEcosystem(false).SetSendToArtifactory(false)
114+
reporter := NewUsageReporter(productName, serverDetails).SetSendToArtifactory(false)
144115

145116
reporter.Report(ReportFeature{
146117
FeatureId: commandName,
@@ -150,13 +121,13 @@ func TestReportXrayUsage(t *testing.T) {
150121
}
151122

152123
func TestReportXrayError(t *testing.T) {
153-
reporter := NewUsageReporter("", &config.ServerDetails{}).SetSendToEcosystem(false).SetSendToArtifactory(false)
124+
reporter := NewUsageReporter("", &config.ServerDetails{}).SetSendToArtifactory(false)
154125
reporter.Report(ReportFeature{})
155126
assert.Error(t, reporter.WaitForResponses())
156127

157128
server := httptest.NewServer(create404UsageHandler(t))
158129
defer server.Close()
159-
reporter = NewUsageReporter("", &config.ServerDetails{ArtifactoryUrl: server.URL + "/"}).SetSendToEcosystem(false).SetSendToArtifactory(false)
130+
reporter = NewUsageReporter("", &config.ServerDetails{ArtifactoryUrl: server.URL + "/"}).SetSendToArtifactory(false)
160131
reporter.Report(ReportFeature{})
161132
assert.Error(t, reporter.WaitForResponses())
162133
}
@@ -187,19 +158,6 @@ func createXrayUsageHandler(t *testing.T, productId, commandName, clientId strin
187158
}
188159
}
189160

190-
func TestReportEcosystemUsageError(t *testing.T) {
191-
// No features
192-
reporter := NewUsageReporter("", &config.ServerDetails{}).SetSendToArtifactory(false).SetSendToXray(false)
193-
reporter.Report()
194-
assert.NoError(t, reporter.WaitForResponses())
195-
// Empty features
196-
reporter.Report(ReportFeature{
197-
FeatureId: "",
198-
ClientId: "client",
199-
})
200-
assert.Error(t, reporter.WaitForResponses())
201-
}
202-
203161
func create404UsageHandler(t *testing.T) http.HandlerFunc {
204162
return func(w http.ResponseWriter, _ *http.Request) {
205163
w.WriteHeader(http.StatusNotFound)

0 commit comments

Comments
 (0)