slog migration: service layer + subsystem libraries - #40661
Conversation
|
@coderabbitai full review |
✅ Actions performedFull review triggered. |
There was a problem hiding this comment.
Pull request overview
Continues the slog migration by converting service-layer code paths and related subsystems (MDM/SCEP, handlers, async tasks, launcher, health checks, and EE services) to accept and use *log/slog.Logger, updating call sites, adapters, and tests accordingly.
Changes:
- Replace many
*platform/logging.Logger(and go-kitlevel) usages with*slog.LoggerandInfoContext/DebugContext/ErrorContext. - Update HTTP/gRPC wiring (handlers, middleware, SCEP transports) to pass the correct logger type, using adapters where needed.
- Update unit/integration tests and small tools/commands to construct
slogloggers or pass.SlogLogger().
Reviewed changes
Copilot reviewed 87 out of 87 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/mdm/apple/apnspush/main.go | Passes slog logger into NanoMDM logger adapter. |
| server/service/testing_utils.go | Test server/service wiring updated to pass *slog.Logger into constructors/handlers. |
| server/service/software_installers_test.go | Replaces nop platform logger with slog discard logger in test call. |
| server/service/service_campaigns.go | Migrates campaign streaming logging and function signatures to *slog.Logger. |
| server/service/service_campaign_test.go | Updates campaign tests to use slog discard logger. |
| server/service/service.go | Changes core Service.logger field and NewService signature to *slog.Logger. |
| server/service/osquery_test.go | Updates tests to use slog discard logger and new getHostIdentifier signature. |
| server/service/osquery.go | Migrates osquery service logging to slog; passes ctx through where needed. |
| server/service/orbit_test.go | Updates orbit tests to use slog discard logger. |
| server/service/orbit.go | Passes *slog.Logger to worker queue functions. |
| server/service/mdm_scep.go | Migrates SCEP service logger type to *slog.Logger and wraps for smallstep SCEP. |
| server/service/integrationtest/scep_server/scep.go | Updates SCEP handler creation to use logger.SlogLogger(). |
| server/service/integration_mdm_test.go | Updates integration tests to pass slog loggers into MDM/SCEP functions. |
| server/service/integration_mdm_profiles_test.go | Updates profile reconciliation calls to pass slog logger. |
| server/service/integration_mdm_lifecycle_test.go | Updates renewal cron test calls to pass slog logger. |
| server/service/integration_mdm_ddm_test.go | Updates DDM reconciliation calls to pass slog logger. |
| server/service/integration_enterprise_test.go | Updates uninstall migration calls to pass slog logger. |
| server/service/hosts_test.go | Updates tests to construct service with *slog.Logger. |
| server/service/hosts.go | Passes *slog.Logger into worker job queue calls. |
| server/service/handler_test.go | Updates handler tests to use slog discard logger. |
| server/service/handler.go | Changes handler construction to accept *slog.Logger and updates setup/MDM wiring. |
| server/service/frontend_test.go | Updates frontend tests to use slog text logger. |
| server/service/frontend.go | Changes frontend handlers to accept *slog.Logger and logs with request context. |
| server/service/endpoint_utils.go | Updates endpointer constructors to accept *slog.Logger. |
| server/service/endpoint_setup_test.go | Updates setup endpoint tests to pass slog discard logger. |
| server/service/endpoint_setup.go | Migrates setup/starter library code to *slog.Logger and context logging. |
| server/service/endpoint_middleware_test.go | Updates middleware tests to pass slog discard logger. |
| server/service/endpoint_middleware.go | Migrates auth middleware logging and debug JSON logging to *slog.Logger. |
| server/service/endpoint_campaigns.go | Updates websocket campaign handler to accept *slog.Logger and use context logging. |
| server/service/devices_url_auth_test.go | Updates device URL auth middleware test to use slog discard logger. |
| server/service/conditional_access_microsoft.go | Migrates one log site to WarnContext. |
| server/service/certificates.go | Migrates certificate status logs to InfoContext. |
| server/service/async/async.go | Changes async collectors to accept *slog.Logger and migrate logs. |
| server/service/apple_mdm_test.go | Updates MDM tests to use slog loggers and updated constructors. |
| server/service/apple_mdm_ddm_test.go | Updates DDM test to store *slog.Logger. |
| server/service/apple_mdm_cmd_results.go | Updates results handlers to accept *slog.Logger and pass into worker queues. |
| server/service/apple_mdm.go | Migrates many MDM functions and services to accept *slog.Logger. |
| server/mdm/scep/server/transport_test.go | Updates transport tests to pass *slog.Logger. |
| server/mdm/scep/server/transport.go | Changes HTTP handler constructors to accept *slog.Logger and adapt to go-kit logging where required. |
| server/mdm/scep/server/service_logging.go | Migrates SCEP service logging middleware to *slog.Logger. |
| server/mdm/scep/server/service.go | Migrates SCEP service debug logger to *slog.Logger and wraps for smallstep SCEP. |
| server/mdm/scep/server/endpoint.go | Migrates endpoint logging middleware to slog with attrs. |
| server/mdm/scep/csrverifier/executable/csrverifier.go | Migrates verifier logging to *slog.Logger. |
| server/mdm/scep/cmd/scepserver/scepserver.go | Migrates CLI server logging setup to create *slog.Logger directly. |
| server/mdm/scep/cmd/scepclient/scepclient.go | Migrates CLI client logging to *slog.Logger and adapts for smallstep SCEP. |
| server/mdm/scep/client/client.go | Updates SCEP client constructor to accept *slog.Logger. |
| server/mdm/lifecycle/lifecycle_test.go | Updates lifecycle tests to use slog discard logger. |
| server/mdm/lifecycle/lifecycle.go | Migrates lifecycle logger field/signature to *slog.Logger and updates worker queue calls. |
| server/launcher/server.go | Updates launcher server wiring to accept *slog.Logger and adapts to go-kit logging. |
| server/launcher/launcher_test.go | Updates launcher tests to use slog discard logger. |
| server/launcher/launcher.go | Migrates launcher wrapper logger field to *slog.Logger. |
| server/health/health_test.go | Updates health tests to use slog discard logger. |
| server/health/health.go | Migrates health handler to accept *slog.Logger and uses context logging. |
| pkg/mdm/mdmtest/apple.go | Updates SCEP endpoint logging middleware usage to pass slog logger. |
| ee/server/service/vpp.go | Passes *slog.Logger into worker job queue calls. |
| ee/server/service/testing_utils.go | Updates EE SCEP test server handler to use logger.SlogLogger(). |
| ee/server/service/teams.go | Passes *slog.Logger into worker job queue calls. |
| ee/server/service/software_installers.go | Migrates EE installer service logging and migration functions to *slog.Logger. |
| ee/server/service/service.go | Migrates EE service logger field/signature to *slog.Logger and updates DEP service creation. |
| ee/server/service/scep_proxy_test.go | Updates tests to use slog discard logger. |
| ee/server/service/scep_proxy.go | Migrates SCEP proxy/config services to *slog.Logger and replaces go-kit level logging. |
| ee/server/service/request_certificate_test.go | Updates test to use slog text logger. |
| ee/server/service/mdm_external_test.go | Updates EE service constructors to receive logger.SlogLogger(). |
| ee/server/service/mdm.go | Passes *slog.Logger into worker/ABM functions and updates log calls. |
| ee/server/service/maintained_apps.go | Migrates warning log to WarnContext. |
| ee/server/service/hostidentity/scep.go | Migrates host identity SCEP service/middleware to *slog.Logger and wraps for smallstep SCEP. |
| ee/server/service/hostidentity/httpsig/middleware.go | Migrates httpsig middleware to *slog.Logger logging calls. |
| ee/server/service/hostidentity/httpsig/httpsig.go | Migrates httpsig verifier/logger to *slog.Logger. |
| ee/server/service/est/est.go | Migrates EST service logger type/default initialization to slog and updates error logging. |
| ee/server/service/digicert/digicert.go | Migrates DigiCert service logger type/default initialization to slog. |
| ee/server/service/devices.go | Updates webhook posting to use *slog.Logger. |
| ee/server/service/condaccess/scep.go | Migrates conditional access SCEP service to *slog.Logger and wraps for smallstep SCEP. |
| ee/server/service/condaccess/idp_test.go | Updates IdP tests to use slog discard logger. |
| ee/server/service/condaccess/idp.go | Migrates IdP service to *slog.Logger and updates internal error handling logging. |
| ee/server/service/certificate_authorities_test.go | Updates CA tests to use slog text logger. |
| ee/server/service/calendar_test.go | Updates calendar tests to use slog discard logger. |
| ee/server/service/calendar.go | Passes *slog.Logger directly to calendar helpers. |
| ee/server/integrationtest/hostidentity/scep_rate_limit_test.go | Updates SCEP client creation to pass logger.SlogLogger(). |
| ee/server/integrationtest/hostidentity/hostidentity_test.go | Updates SCEP client creation to pass logger.SlogLogger(). |
| ee/server/integrationtest/condaccess/condaccess_test.go | Updates SCEP client creation to pass logger.SlogLogger(). |
| ee/orbit/pkg/scep/scep_test.go | Updates orbit SCEP test server handler to pass logger.SlogLogger(). |
| ee/orbit/pkg/scep/scep.go | Updates orbit SCEP client creation to pass *slog.Logger (and keep adapter where needed). |
| cmd/osquery-perf/hostidentity/hostidentity.go | Updates perf tool to pass *slog.Logger into SCEP client. |
| cmd/fleetctl/integrationtest/gitops/gitops_enterprise_integration_test.go | Updates test setup to create SCEP config service with *slog.Logger. |
| cmd/fleetctl/fleetctl/preview.go | Passes logger.SlogLogger() into starter library application. |
| cmd/fleet/serve.go | Updates service wiring to pass logger.SlogLogger() into slog-migrated constructors and middleware. |
| cmd/fleet/cron.go | Updates cron jobs to pass logger.SlogLogger() into migrated functions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
WalkthroughThis pull request migrates logging infrastructure from go-kit/platform logging to Go's standard library slog across multiple service layers. Function signatures are updated to accept Possibly related PRs
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
ee/server/service/hostidentity/httpsig/httpsig.go (1)
35-39:⚠️ Potential issue | 🟡 MinorAdd nil check for logger to prevent panic in error paths.
The
loggerparameter can be nil, yet theFetchByKeyIDmethod callsh.logger.InfoContext()andh.logger.ErrorContext()directly at multiple error paths (lines 53, 62, 68, 80). This will panic if logger is nil.Proposed fix
func NewHTTPSig(ds fleet.Datastore, logger *slog.Logger) *HTTPSig { + if logger == nil { + logger = slog.Default() + } return &HTTPSig{ ds: ds, logger: logger, } }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@ee/server/service/hostidentity/httpsig/httpsig.go` around lines 35 - 39, NewHTTPSig may receive a nil logger which causes panics when FetchByKeyID calls h.logger.InfoContext/ErrorContext; update NewHTTPSig to guard against a nil logger by assigning a no-op/default slog.Logger when logger==nil (so HTTPSig.logger is always non-nil), and keep existing uses in FetchByKeyID unchanged; reference the NewHTTPSig constructor and the HTTPSig.logger field to locate the change.
🧹 Nitpick comments (5)
server/service/apple_mdm_ddm_test.go (1)
23-26: Consider using a discard handler for cleaner test output.The slog migration is correctly implemented. However, using
slog.NewTextHandler(os.Stdout, nil)will output logs during test runs, which can add noise. Consider using a discard handler for quieter test output:ddmService := MDMAppleDDMService{ ds: ds, - logger: slog.New(slog.NewTextHandler(os.Stdout, nil)), + logger: slog.New(slog.DiscardHandler), }Alternatively, if you want to preserve the ability to see logs when debugging, keeping stdout is acceptable.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@server/service/apple_mdm_ddm_test.go` around lines 23 - 26, Replace the test logger that writes to stdout with a discard handler to avoid noisy test output: in the MDMAppleDDMService test setup, update the logger creation (the logger field on MDMAppleDDMService) to use slog.NewTextHandler with io.Discard (e.g., slog.New(slog.NewTextHandler(io.Discard, nil))) so logs are suppressed during test runs; keep the existing logger field and MDMAppleDDMService instantiation otherwise so you can revert to stdout when debugging.server/mdm/scep/cmd/scepserver/scepserver.go (1)
98-98: Consider usingcontext.Background()instead ofcontext.TODO().For a main function that serves as the root of execution with no parent context,
context.Background()is more idiomatic.context.TODO()is intended for code where the appropriate context is unclear or the function hasn't been extended to accept a context parameter yet.🔧 Suggested fix
- ctx := context.TODO() + ctx := context.Background()🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@server/mdm/scep/cmd/scepserver/scepserver.go` at line 98, Replace the use of context.TODO() with context.Background() for the root context; specifically update the ctx variable initialization (ctx := context.TODO()) in the scepserver main setup to ctx := context.Background() so the main/root execution uses the idiomatic background context.ee/server/service/request_certificate_test.go (1)
153-153: Use a discard logger in tests to avoid stdout noise.
This test doesn't assert logs, so emitting toos.Stdoutadds CI noise and can leak payload-like data into logs unnecessarily. The codebase pattern is to useslog.DiscardHandlerin tests.Proposed diff
import ( "context" "encoding/json" "log/slog" "net/http" "net/http/httptest" - "os" "testing" "time" @@ - logger := slog.New(slog.NewTextHandler(os.Stdout, nil)) + logger := slog.New(slog.DiscardHandler)🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@ee/server/service/request_certificate_test.go` at line 153, Replace the test logger that writes to stdout with a discard logger to avoid CI noise: change the logger construction (the line creating logger := slog.New(slog.NewTextHandler(os.Stdout, nil))) to use slog.DiscardHandler (e.g., logger := slog.New(slog.DiscardHandler())) so the test emits no logs; ensure any required imports for slog.DiscardHandler are present.server/mdm/scep/csrverifier/executable/csrverifier.go (1)
60-65: Consider propagating context through the interface.The use of
context.TODO()works but loses contextual information for tracing and logging. This is acceptable given the currentVerify(data []byte)interface signature, but if this interface is ever refactored, consider adding context as a parameter.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@server/mdm/scep/csrverifier/executable/csrverifier.go` around lines 60 - 65, The Verify implementation currently calls cmd.Run() and logs errors with context.TODO(), which loses caller context; update the interface and implementation to accept a context so tracing/metadata can be preserved: change the Verify(data []byte) signature to Verify(ctx context.Context, data []byte), propagate the ctx into csrverifier executable call sites and into the logging call (replace context.TODO() with the passed ctx) inside the csrverifier.go method that runs cmd.Run(), and adjust all callers of Verify and any tests to pass through their ctx accordingly while keeping the same boolean/error return semantics.server/service/handler.go (1)
1168-1180: Unusedloggerparameter inRedirectSetupToLogin.The
loggerparameter is accepted but never used within the function body. This may be intentional for API consistency with sibling functions, but consider either using it for potential error logging or documenting why it's kept for signature parity.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@server/service/handler.go` around lines 1168 - 1180, The RedirectSetupToLogin function currently accepts a logger parameter that is never used; to fix this, use the provided logger inside RedirectSetupToLogin (e.g., log an informational/debug message when the handler performs the redirect) so the parameter is meaningful and avoids unused-parameter warnings—add a logger call in the branch where r.URL.Path == "/setup" that records the redirect target (newURL.String()) and any useful context (e.g., request path or remote addr); alternatively, if signature parity is not required, remove the logger parameter from RedirectSetupToLogin and update its call sites accordingly.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@ee/server/service/hostidentity/httpsig/middleware.go`:
- Around line 51-53: Middleware currently passes a nil logger into NewHTTPSig
which leads to panics when the httpsig code dereferences logger (e.g.,
FetchByKeyID); ensure a non-nil logger is always used by adding a guard in
Middleware: if logger == nil, replace it with a safe default (e.g., a no-op or
standard slog logger) before calling NewHTTPSig(ds, logger). Also update
NewHTTPSig (and the httpsig type) so it enforces/stores a non-nil logger and add
defensive nil checks in FetchByKeyID (and any other methods that use the logger)
to avoid direct dereferences when logger somehow remains nil.
In `@server/service/endpoint_middleware.go`:
- Line 121: The log call is passing the wrong variable: at the device debug path
change the logged value from request to the actual response variable resp so
logJSON(ctx, hlogger, resp, "response") is used; locate the call to logJSON
where ctx, hlogger, request, "response" are passed (around the device debug
path) and replace the third argument with resp to correctly log the response
payload.
In `@server/service/mdm_scep.go`:
- Around line 87-91: NewSCEPService currently ignores the injected logger and
always sets debugLogger to slog.New(slog.DiscardHandler); change it to use the
provided logger so signing-path failures are logged: in the NewSCEPService
constructor assign the injected logger parameter to the service.debugLogger
field (i.e., set debugLogger: logger) instead of slog.New(slog.DiscardHandler);
reference the NewSCEPService function and the service struct fields signer,
debugLogger, and ds when making the change.
In `@server/service/osquery.go`:
- Around line 289-291: The log call to logger.InfoContext(ctx, "could not get
host identifier", ...) uses the wrong "reason" text ("missing instance_id in
osquery_info") when the code is actually checking for uuid or hostname; update
the reason strings in the failing branches to accurately reflect the missing
field being checked (e.g., "missing uuid in osquery_info" and "missing hostname
in osquery_info") for the logger.InfoContext calls and any other similar log
invocations in the same function (the other occurrence around the
logger.InfoContext call at 305-307) so each branch reports the correct
identifier type; keep the surrounding keys ("identifier", etc.) unchanged.
---
Outside diff comments:
In `@ee/server/service/hostidentity/httpsig/httpsig.go`:
- Around line 35-39: NewHTTPSig may receive a nil logger which causes panics
when FetchByKeyID calls h.logger.InfoContext/ErrorContext; update NewHTTPSig to
guard against a nil logger by assigning a no-op/default slog.Logger when
logger==nil (so HTTPSig.logger is always non-nil), and keep existing uses in
FetchByKeyID unchanged; reference the NewHTTPSig constructor and the
HTTPSig.logger field to locate the change.
---
Nitpick comments:
In `@ee/server/service/request_certificate_test.go`:
- Line 153: Replace the test logger that writes to stdout with a discard logger
to avoid CI noise: change the logger construction (the line creating logger :=
slog.New(slog.NewTextHandler(os.Stdout, nil))) to use slog.DiscardHandler (e.g.,
logger := slog.New(slog.DiscardHandler())) so the test emits no logs; ensure any
required imports for slog.DiscardHandler are present.
In `@server/mdm/scep/cmd/scepserver/scepserver.go`:
- Line 98: Replace the use of context.TODO() with context.Background() for the
root context; specifically update the ctx variable initialization (ctx :=
context.TODO()) in the scepserver main setup to ctx := context.Background() so
the main/root execution uses the idiomatic background context.
In `@server/mdm/scep/csrverifier/executable/csrverifier.go`:
- Around line 60-65: The Verify implementation currently calls cmd.Run() and
logs errors with context.TODO(), which loses caller context; update the
interface and implementation to accept a context so tracing/metadata can be
preserved: change the Verify(data []byte) signature to Verify(ctx
context.Context, data []byte), propagate the ctx into csrverifier executable
call sites and into the logging call (replace context.TODO() with the passed
ctx) inside the csrverifier.go method that runs cmd.Run(), and adjust all
callers of Verify and any tests to pass through their ctx accordingly while
keeping the same boolean/error return semantics.
In `@server/service/apple_mdm_ddm_test.go`:
- Around line 23-26: Replace the test logger that writes to stdout with a
discard handler to avoid noisy test output: in the MDMAppleDDMService test
setup, update the logger creation (the logger field on MDMAppleDDMService) to
use slog.NewTextHandler with io.Discard (e.g.,
slog.New(slog.NewTextHandler(io.Discard, nil))) so logs are suppressed during
test runs; keep the existing logger field and MDMAppleDDMService instantiation
otherwise so you can revert to stdout when debugging.
In `@server/service/handler.go`:
- Around line 1168-1180: The RedirectSetupToLogin function currently accepts a
logger parameter that is never used; to fix this, use the provided logger inside
RedirectSetupToLogin (e.g., log an informational/debug message when the handler
performs the redirect) so the parameter is meaningful and avoids
unused-parameter warnings—add a logger call in the branch where r.URL.Path ==
"/setup" that records the redirect target (newURL.String()) and any useful
context (e.g., request path or remote addr); alternatively, if signature parity
is not required, remove the logger parameter from RedirectSetupToLogin and
update its call sites accordingly.
ℹ️ Review info
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (87)
cmd/fleet/cron.gocmd/fleet/serve.gocmd/fleetctl/fleetctl/preview.gocmd/fleetctl/integrationtest/gitops/gitops_enterprise_integration_test.gocmd/osquery-perf/hostidentity/hostidentity.goee/orbit/pkg/scep/scep.goee/orbit/pkg/scep/scep_test.goee/server/integrationtest/condaccess/condaccess_test.goee/server/integrationtest/hostidentity/hostidentity_test.goee/server/integrationtest/hostidentity/scep_rate_limit_test.goee/server/service/calendar.goee/server/service/calendar_test.goee/server/service/certificate_authorities_test.goee/server/service/condaccess/idp.goee/server/service/condaccess/idp_test.goee/server/service/condaccess/scep.goee/server/service/devices.goee/server/service/digicert/digicert.goee/server/service/est/est.goee/server/service/hostidentity/httpsig/httpsig.goee/server/service/hostidentity/httpsig/middleware.goee/server/service/hostidentity/scep.goee/server/service/maintained_apps.goee/server/service/mdm.goee/server/service/mdm_external_test.goee/server/service/request_certificate_test.goee/server/service/scep_proxy.goee/server/service/scep_proxy_test.goee/server/service/service.goee/server/service/software_installers.goee/server/service/teams.goee/server/service/testing_utils.goee/server/service/vpp.gopkg/mdm/mdmtest/apple.goserver/health/health.goserver/health/health_test.goserver/launcher/launcher.goserver/launcher/launcher_test.goserver/launcher/server.goserver/mdm/lifecycle/lifecycle.goserver/mdm/lifecycle/lifecycle_test.goserver/mdm/scep/client/client.goserver/mdm/scep/cmd/scepclient/scepclient.goserver/mdm/scep/cmd/scepserver/scepserver.goserver/mdm/scep/csrverifier/executable/csrverifier.goserver/mdm/scep/server/endpoint.goserver/mdm/scep/server/service.goserver/mdm/scep/server/service_logging.goserver/mdm/scep/server/transport.goserver/mdm/scep/server/transport_test.goserver/service/apple_mdm.goserver/service/apple_mdm_cmd_results.goserver/service/apple_mdm_ddm_test.goserver/service/apple_mdm_test.goserver/service/async/async.goserver/service/certificates.goserver/service/conditional_access_microsoft.goserver/service/devices_url_auth_test.goserver/service/endpoint_campaigns.goserver/service/endpoint_middleware.goserver/service/endpoint_middleware_test.goserver/service/endpoint_setup.goserver/service/endpoint_setup_test.goserver/service/endpoint_utils.goserver/service/frontend.goserver/service/frontend_test.goserver/service/handler.goserver/service/handler_test.goserver/service/hosts.goserver/service/hosts_test.goserver/service/integration_enterprise_test.goserver/service/integration_mdm_ddm_test.goserver/service/integration_mdm_lifecycle_test.goserver/service/integration_mdm_profiles_test.goserver/service/integration_mdm_test.goserver/service/integrationtest/scep_server/scep.goserver/service/mdm_scep.goserver/service/orbit.goserver/service/orbit_test.goserver/service/osquery.goserver/service/osquery_test.goserver/service/service.goserver/service/service_campaign_test.goserver/service/service_campaigns.goserver/service/software_installers_test.goserver/service/testing_utils.gotools/mdm/apple/apnspush/main.go
|
Unassigning myself as betwen other priorities on my plate and the size of this PR, this will exceed the 24h PR time to merge KPI if it's assigned to me. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #40661 +/- ##
==========================================
- Coverage 66.29% 66.29% -0.01%
==========================================
Files 2466 2466
Lines 197394 197557 +163
Branches 8764 8727 -37
==========================================
+ Hits 130863 130963 +100
- Misses 54682 54744 +62
- Partials 11849 11850 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Related issue: Resolves #40540
Checklist for submitter
changes/,orbit/changes/oree/fleetd-chrome/changes.Testing
Summary by CodeRabbit