diff --git a/cliv2/go.mod b/cliv2/go.mod index 7c52dd1f4f..e32f161fa2 100644 --- a/cliv2/go.mod +++ b/cliv2/go.mod @@ -22,7 +22,7 @@ require ( github.com/snyk/code-client-go v1.27.0 github.com/snyk/container-cli v0.0.0-20260213211631-cd2b2cf8f3ea github.com/snyk/error-catalog-golang-public v0.0.0-20260505112649-a5103d411663 - github.com/snyk/go-application-framework v0.7.2 + github.com/snyk/go-application-framework v0.10.1-0.20260806080023-f868e847d10f github.com/snyk/go-httpauth v0.0.0-20240307114523-1f5ea3f55c65 github.com/snyk/snyk-iac-capture v0.6.5 github.com/snyk/snyk-ls v0.0.0-20260626083941-77c2abaeaaaa @@ -270,7 +270,8 @@ require ( // version 2491eb6c1c75 contains a valid license replace github.com/mattn/go-localereader v0.0.1 => github.com/mattn/go-localereader v0.0.2-0.20220822084749-2491eb6c1c75 -// replace github.com/snyk/go-application-framework => ../../go-application-framework +// Pinned to GAF IANDT-237+238+240 pre-release; bump to tagged release after #681 merges. +// For local dev: replace github.com/snyk/go-application-framework => ../../go-application-framework // replace github.com/snyk/snyk-ls => ../../snyk-ls diff --git a/cliv2/go.sum b/cliv2/go.sum index def86324c1..21a893ff4e 100644 --- a/cliv2/go.sum +++ b/cliv2/go.sum @@ -547,8 +547,8 @@ github.com/snyk/dep-graph/go v0.0.0-20260127160647-c836da762c62 h1:kgZNQ5ztI4+n3 github.com/snyk/dep-graph/go v0.0.0-20260127160647-c836da762c62/go.mod h1:hTr91da/4ze2nk9q6ZW1BmfM2Z8rLUZSEZ3kK+6WGpc= github.com/snyk/error-catalog-golang-public v0.0.0-20260505112649-a5103d411663 h1:j2ZPhi78wKIHTiL9EFTNVXMIbsk56FVF2d5Sy1ZwSYk= github.com/snyk/error-catalog-golang-public v0.0.0-20260505112649-a5103d411663/go.mod h1:Ytttq7Pw4vOCu9NtRQaOeDU2dhBYUyNBe6kX4+nIIQ4= -github.com/snyk/go-application-framework v0.7.2 h1:WzZ7BeFL0pKoB2YdheHtEgEdeB+9nunmwQP8XI+rKcc= -github.com/snyk/go-application-framework v0.7.2/go.mod h1:0YC7xCETnFTdz6rq8OQPL0aWekMLOkBQu1FE4/cReMA= +github.com/snyk/go-application-framework v0.10.1-0.20260806080023-f868e847d10f h1:amQet+3+p2q9+CVscPmne/X8FCzLDf72RQnyA4gdnzU= +github.com/snyk/go-application-framework v0.10.1-0.20260806080023-f868e847d10f/go.mod h1:9GV/CTAhM8PT9MbxwYt/Za7tKDtw/Wuq6SyCu1XFzvk= github.com/snyk/go-httpauth v0.0.0-20240307114523-1f5ea3f55c65 h1:CEQuYv0Go6MEyRCD3YjLYM2u3Oxkx8GpCpFBd4rUTUk= github.com/snyk/go-httpauth v0.0.0-20240307114523-1f5ea3f55c65/go.mod h1:88KbbvGYlmLgee4OcQ19yr0bNpXpOr2kciOthaSzCAg= github.com/snyk/policy-engine v1.1.4 h1:0XpaMpl7ixSk4+dlpHYg2iKEBuv+5Ci+QIcbsmhktao= diff --git a/cliv2/pkg/core/main.go b/cliv2/pkg/core/main.go index bc832ba635..06f874a54d 100644 --- a/cliv2/pkg/core/main.go +++ b/cliv2/pkg/core/main.go @@ -29,6 +29,7 @@ import ( "github.com/snyk/go-application-framework/pkg/analytics" "github.com/snyk/go-application-framework/pkg/app" + "github.com/snyk/go-application-framework/pkg/clibilling" "github.com/snyk/go-application-framework/pkg/configuration" "github.com/snyk/go-application-framework/pkg/instrumentation" "github.com/snyk/go-application-framework/pkg/logging" @@ -250,7 +251,10 @@ func defaultCmd(args []string) error { // * by specifying the raw cmd args for it globalConfiguration.Set(configuration.WORKFLOW_USE_STDIO, true) globalConfiguration.Set(configuration.RAW_CMD_ARGS, args) - _, err := globalEngine.Invoke(basic_workflows.WORKFLOWID_LEGACY_CLI) + _, err := globalEngine.Invoke( + basic_workflows.WORKFLOWID_LEGACY_CLI, + workflow.WithContext(globalContext), + ) return err } @@ -542,6 +546,8 @@ func tearDown(err error, errorList []error, startTime time.Time, ua networking.U writeLogFooter(exitCode, allErrors, globalConfiguration, networkAccess) } + clibilling.FinishCommand(teardownCtx, globalEngine, globalConfiguration, exitCode == 0) + return exitCode } @@ -592,7 +598,11 @@ func mainWithErrorCode(additionalExts []workflow.ExtensionInit) int { debugEnabled := globalConfiguration.GetBool(configuration.DEBUG) globalLogger, scrubbedLogger = initDebugLogger(globalConfiguration) - globalEngine = app.CreateAppEngineWithOptions(app.WithZeroLogger(globalLogger), app.WithConfiguration(globalConfiguration), app.WithRuntimeInfo(rInfo)) + globalEngine = clibilling.EnableIfConfigured(app.CreateAppEngineWithOptions( + app.WithZeroLogger(globalLogger), + app.WithConfiguration(globalConfiguration), + app.WithRuntimeInfo(rInfo), + )) globalConfiguration.AddDefaultValue(configuration.FF_OAUTH_AUTH_FLOW_ENABLED, defaultOAuthFF(globalConfiguration)) globalConfiguration.AddDefaultValue(configuration.FF_TRANSFORMATION_WORKFLOW, configuration.StandardDefaultValueFunction(true))