Skip to content

Commit 2ca36d1

Browse files
committed
Merge branch 'main' into update-compose-schema
Signed-off-by: Remy Suen <remy.suen@docker.com>
2 parents e067923 + 82507fe commit 2ca36d1

5 files changed

Lines changed: 16 additions & 14 deletions

File tree

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ jobs:
265265
266266
- name: Build for ${{ matrix.os }}-${{ matrix.arch }}
267267
run: |
268-
GOOS=${{ matrix.os }} GOARCH=${{ matrix.arch }} BUGSNAG_API_KEY=${{ secrets.BUGSNAG_API_KEY }} make build
268+
GOOS=${{ matrix.os }} GOARCH=${{ matrix.arch }} BUGSNAG_API_KEY=${{ secrets.BUGSNAG_API_KEY }} TELEMETRY_ENDPOINT=${{ env.TELEMETRY_ENDPOINT }} TELEMETRY_KEY=${{ secrets.TELEMETRY_KEY }} make build
269269
270270
- name: Rename the binary to include the version number
271271
run: |

build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ fi
1616
echo "Building for ${GOOS}-${GOARCH}: ${OUTPUT}"
1717

1818
CGO_ENABLED=0 go build \
19-
-ldflags="-X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.Version=$VERSION' -X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.BugSnagAPIKey=$BUGSNAG_API_KEY'" \
19+
-ldflags="-X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.Version=$VERSION' -X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.BugSnagAPIKey=$BUGSNAG_API_KEY' -X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.TelemetryEndpoint=$TELEMETRY_ENDPOINT' -X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.TelemetryKey=$TELEMETRY_KEY'" \
2020
-o $OUTPUT \
2121
./cmd/docker-language-server

internal/pkg/cli/metadata/metadata.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,9 @@ var Version = "0.0.0"
55

66
// BugSnagAPIKey will be set dynamically by the build.sh script.
77
var BugSnagAPIKey = ""
8+
9+
// TelemetryEndpoint will be set dynamically by the build.sh script.
10+
var TelemetryEndpoint = ""
11+
12+
// TelemetryKey will be set dynamically by the build.sh script.
13+
var TelemetryKey = ""

internal/scout/service_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,7 @@ func TestGetHovers_IgnoresSpecifics(t *testing.T) {
343343
result: &protocol.Hover{
344344
Contents: protocol.MarkupContent{
345345
Kind: protocol.MarkupKindMarkdown,
346-
Value: "Current image vulnerabilities: 1C 3H 9M 0L \r\n\r\nRecommended tags:\n\n<table>\n<tr><td><code>3.21.4</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 2M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.22.1</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 2M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.20.7</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 2M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.19.8</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 1M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n</table>\n",
346+
Value: "Current image vulnerabilities: 1C 3H 9M 0L \r\n\r\nRecommended tags:\n\n<table>\n<tr><td><code>3.21.5</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.20.8</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.19.9</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.22.2</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n</table>\n",
347347
},
348348
},
349349
},
@@ -359,7 +359,7 @@ func TestGetHovers_IgnoresSpecifics(t *testing.T) {
359359
result: &protocol.Hover{
360360
Contents: protocol.MarkupContent{
361361
Kind: protocol.MarkupKindMarkdown,
362-
Value: "Recommended tags:\n\n<table>\n<tr><td><code>3.21.4</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 2M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.22.1</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 2M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.20.7</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 2M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.19.8</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 1H</td><td align=\"right\"> 1M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n</table>\n",
362+
Value: "Recommended tags:\n\n<table>\n<tr><td><code>3.21.5</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.20.8</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.19.9</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n<tr><td><code>3.22.2</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 2L</td><td align=\"right\"></td></tr>\n</table>\n",
363363
},
364364
},
365365
},
@@ -391,7 +391,7 @@ func TestGetHovers_IgnoresSpecifics(t *testing.T) {
391391
result: &protocol.Hover{
392392
Contents: protocol.MarkupContent{
393393
Kind: protocol.MarkupKindMarkdown,
394-
Value: "Image vulnerabilities: 0C 0H 3M 5L \r\n\r\nRecommended tags:\n\n<table>\n<tr><td><code>25.10</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n<tr><td><code>25.04</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 5M</td><td align=\"right\"> 5L</td><td align=\"right\"></td></tr>\n</table>\n",
394+
Value: "Image vulnerabilities: 0C 0H 2M 5L \r\n\r\nRecommended tags:\n\n<table>\n<tr><td><code>25.04</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 2M</td><td align=\"right\"> 4L</td><td align=\"right\"></td></tr>\n<tr><td><code>25.10</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n</table>\n",
395395
},
396396
},
397397
},
@@ -407,7 +407,7 @@ func TestGetHovers_IgnoresSpecifics(t *testing.T) {
407407
result: &protocol.Hover{
408408
Contents: protocol.MarkupContent{
409409
Kind: protocol.MarkupKindMarkdown,
410-
Value: "Recommended tags:\n\n<table>\n<tr><td><code>25.10</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n<tr><td><code>25.04</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 5M</td><td align=\"right\"> 5L</td><td align=\"right\"></td></tr>\n</table>\n",
410+
Value: "Recommended tags:\n\n<table>\n<tr><td><code>25.04</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 2M</td><td align=\"right\"> 4L</td><td align=\"right\"></td></tr>\n<tr><td><code>25.10</code></td><td align=\"right\"> 0C</td><td align=\"right\"> 0H</td><td align=\"right\"> 0M</td><td align=\"right\"> 0L</td><td align=\"right\"></td></tr>\n</table>\n",
411411
},
412412
},
413413
},
@@ -423,7 +423,7 @@ func TestGetHovers_IgnoresSpecifics(t *testing.T) {
423423
result: &protocol.Hover{
424424
Contents: protocol.MarkupContent{
425425
Kind: protocol.MarkupKindMarkdown,
426-
Value: "Image vulnerabilities: 0C 0H 3M 5L ",
426+
Value: "Image vulnerabilities: 0C 0H 2M 5L ",
427427
},
428428
},
429429
},

internal/telemetry/client.go

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ import (
1414
"github.com/docker/docker-language-server/internal/pkg/cli/metadata"
1515
)
1616

17-
const apiKey = "eIxc3dSmud2vuJRKiq9hJ6wORVWfoLxp1nqb4qXz"
18-
1917
type TelemetryClient interface {
2018
Enqueue(event string, properties map[string]any)
2119
Publish(ctx context.Context) (int, error)
@@ -28,8 +26,6 @@ type TelemetryClientImpl struct {
2826
records []Record
2927
}
3028

31-
const telemetryUrl = "https://api.docker.com/events/v1/track"
32-
3329
func NewClient() TelemetryClient {
3430
return &TelemetryClientImpl{telemetry: configuration.TelemetrySettingAll}
3531
}
@@ -85,7 +81,7 @@ func (c *TelemetryClientImpl) trimRecords() []Record {
8581
}
8682

8783
func (c *TelemetryClientImpl) Publish(ctx context.Context) (int, error) {
88-
if os.Getenv("DOCKER_LANGUAGE_SERVER_TELEMETRY") == "false" {
84+
if os.Getenv("DOCKER_LANGUAGE_SERVER_TELEMETRY") == "false" || metadata.TelemetryEndpoint == "" || metadata.TelemetryKey == "" {
8985
c.records = nil
9086
return 0, nil
9187
}
@@ -102,14 +98,14 @@ func (c *TelemetryClientImpl) Publish(ctx context.Context) (int, error) {
10298
return 0, fmt.Errorf("failed to marshal telemetry payload: %w", err)
10399
}
104100

105-
req, err := http.NewRequestWithContext(ctx, http.MethodPost, telemetryUrl, bytes.NewBuffer(b))
101+
req, err := http.NewRequestWithContext(ctx, http.MethodPost, metadata.TelemetryEndpoint, bytes.NewBuffer(b))
106102
if err != nil {
107103
return 0, fmt.Errorf("failed to create telemetry request: %w", err)
108104
}
109105

110106
req.Header.Set("Content-Type", "application/json")
111107
req.Header.Set("User-Agent", fmt.Sprintf("docker-language-server/v%v", metadata.Version))
112-
req.Header.Set("x-api-key", apiKey)
108+
req.Header.Set("x-api-key", metadata.TelemetryKey)
113109
res, err := http.DefaultClient.Do(req)
114110
if err != nil {
115111
return 0, fmt.Errorf("failed to send telemetry request: %w", err)

0 commit comments

Comments
 (0)