fix: pass ai metadata to telemetry during cni image build (#3095)
* fix log on ai telemetry handle create error
* fix failure to pass cni ai id at build time for cni images
* address feedback
* move ai id to hardcoded variable
* update unit test
* Revert "move ai id to hardcoded variable"
This reverts commit 666c2b0a8f
.
* fix typo
This commit is contained in:
Родитель
7b188cc08e
Коммит
7f0339a294
3
Makefile
3
Makefile
|
@ -436,7 +436,8 @@ cni-image: ## build cni container image.
|
|||
TARGET=$(OS) \
|
||||
OS=$(OS) \
|
||||
ARCH=$(ARCH) \
|
||||
OS_VERSION=$(OS_VERSION)
|
||||
OS_VERSION=$(OS_VERSION) \
|
||||
EXTRA_BUILD_ARGS='--build-arg CNI_AI_PATH=$(CNI_AI_PATH) --build-arg CNI_AI_ID=$(CNI_AI_ID)'
|
||||
|
||||
cni-image-push: ## push cni container image.
|
||||
$(MAKE) container-push \
|
||||
|
|
|
@ -12,10 +12,12 @@ FROM --platform=linux/${ARCH} mcr.microsoft.com/cbl-mariner/base/core@sha256:a49
|
|||
FROM go AS azure-vnet
|
||||
ARG OS
|
||||
ARG VERSION
|
||||
ARG CNI_AI_PATH
|
||||
ARG CNI_AI_ID
|
||||
WORKDIR /azure-container-networking
|
||||
COPY . .
|
||||
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/network/plugin/main.go
|
||||
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-telemetry -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/telemetry/service/telemetrymain.go
|
||||
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-telemetry -trimpath -ldflags "-X main.version="$VERSION" -X "$CNI_AI_PATH"="$CNI_AI_ID"" -gcflags="-dwarflocationlists=true" cni/telemetry/service/telemetrymain.go
|
||||
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-ipam -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/ipam/plugin/main.go
|
||||
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-stateless -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/network/stateless/main.go
|
||||
|
||||
|
|
|
@ -167,8 +167,8 @@ func main() {
|
|||
GetEnvRetryWaitTimeInSecs: config.GetEnvRetryWaitTimeInSecs,
|
||||
}
|
||||
|
||||
if tb.CreateAITelemetryHandle(aiConfig, config.DisableAll, config.DisableTrace, config.DisableMetric) != nil {
|
||||
logger.Error("AI Handle creation error", zap.Error(err))
|
||||
if err := tb.CreateAITelemetryHandle(aiConfig, config.DisableAll, config.DisableTrace, config.DisableMetric); err != nil { // nolint
|
||||
logger.Error("AI Handle creation error:", zap.Error(err))
|
||||
}
|
||||
logger.Info("Report to host interval", zap.Duration("seconds", config.ReportToHostIntervalInSeconds))
|
||||
tb.PushData(context.Background())
|
||||
|
|
|
@ -672,7 +672,7 @@ func main() {
|
|||
}
|
||||
|
||||
if telemetryDaemonEnabled {
|
||||
logger.Printf("CNI Telemtry is enabled")
|
||||
logger.Printf("CNI Telemetry is enabled")
|
||||
go startTelemetryService(rootCtx)
|
||||
}
|
||||
|
||||
|
|
|
@ -17,15 +17,7 @@ func TestCreateAITelemetryHandle(t *testing.T) {
|
|||
wantErr bool
|
||||
}{
|
||||
{
|
||||
name: "disable telemetry",
|
||||
aiConfig: aitelemetry.AIConfig{},
|
||||
disableAll: false,
|
||||
disableMetric: true,
|
||||
disableTrace: true,
|
||||
wantErr: true,
|
||||
},
|
||||
{
|
||||
name: "empty aiconfig",
|
||||
name: "disabled telemetry with empty aiconfig",
|
||||
aiConfig: aitelemetry.AIConfig{},
|
||||
disableAll: true,
|
||||
disableMetric: true,
|
||||
|
|
Загрузка…
Ссылка в новой задаче