mirror of
https://github.com/kubescape/kubescape.git
synced 2026-02-14 09:59:54 +00:00
fix: add error handling and context propagation
Signed-off-by: Ruslan Semagin <pixel.365.24@gmail.com>
This commit is contained in:
@@ -73,9 +73,7 @@ func GetDownloadCmd(ks meta.IKubescape) *cobra.Command {
|
|||||||
|
|
||||||
downloadInfo.Target = args[0]
|
downloadInfo.Target = args[0]
|
||||||
if len(args) >= 2 {
|
if len(args) >= 2 {
|
||||||
|
|
||||||
downloadInfo.Identifier = args[1]
|
downloadInfo.Identifier = args[1]
|
||||||
|
|
||||||
}
|
}
|
||||||
if err := ks.Download(&downloadInfo); err != nil {
|
if err := ks.Download(&downloadInfo); err != nil {
|
||||||
logger.L().Fatal(err.Error())
|
logger.L().Fatal(err.Error())
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ func getRootCmd(ks meta.IKubescape) *cobra.Command {
|
|||||||
rootCmd.AddCommand(completion.GetCompletionCmd())
|
rootCmd.AddCommand(completion.GetCompletionCmd())
|
||||||
rootCmd.AddCommand(version.GetVersionCmd(ks))
|
rootCmd.AddCommand(version.GetVersionCmd(ks))
|
||||||
rootCmd.AddCommand(config.GetConfigCmd(ks))
|
rootCmd.AddCommand(config.GetConfigCmd(ks))
|
||||||
rootCmd.AddCommand(update.GetUpdateCmd())
|
rootCmd.AddCommand(update.GetUpdateCmd(ks))
|
||||||
rootCmd.AddCommand(fix.GetFixCmd(ks))
|
rootCmd.AddCommand(fix.GetFixCmd(ks))
|
||||||
rootCmd.AddCommand(patch.GetPatchCmd(ks))
|
rootCmd.AddCommand(patch.GetPatchCmd(ks))
|
||||||
rootCmd.AddCommand(vap.GetVapHelperCmd())
|
rootCmd.AddCommand(vap.GetVapHelperCmd())
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package scan
|
package scan
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
@@ -113,13 +112,12 @@ func getFrameworkCmd(ks meta.IKubescape, scanInfo *cautils.ScanInfo) *cobra.Comm
|
|||||||
|
|
||||||
scanInfo.SetPolicyIdentifiers(frameworks, apisv1.KindFramework)
|
scanInfo.SetPolicyIdentifiers(frameworks, apisv1.KindFramework)
|
||||||
|
|
||||||
ctx := context.TODO()
|
|
||||||
results, err := ks.Scan(scanInfo)
|
results, err := ks.Scan(scanInfo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.L().Fatal(err.Error())
|
logger.L().Fatal(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = results.HandleResults(ctx); err != nil {
|
if err = results.HandleResults(ks.Context()); err != nil {
|
||||||
logger.L().Fatal(err.Error())
|
logger.L().Fatal(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package scan
|
package scan
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -135,15 +134,12 @@ func setSecurityViewScanInfo(args []string, scanInfo *cautils.ScanInfo) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func securityScan(scanInfo cautils.ScanInfo, ks meta.IKubescape) error {
|
func securityScan(scanInfo cautils.ScanInfo, ks meta.IKubescape) error {
|
||||||
|
|
||||||
ctx := context.TODO()
|
|
||||||
|
|
||||||
results, err := ks.Scan(&scanInfo)
|
results, err := ks.Scan(&scanInfo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = results.HandleResults(ctx); err != nil {
|
if err = results.HandleResults(ks.Context()); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package scan
|
package scan
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -66,13 +65,12 @@ func getWorkloadCmd(ks meta.IKubescape, scanInfo *cautils.ScanInfo) *cobra.Comma
|
|||||||
setWorkloadScanInfo(scanInfo, kind, name)
|
setWorkloadScanInfo(scanInfo, kind, name)
|
||||||
|
|
||||||
// todo: add api version if provided
|
// todo: add api version if provided
|
||||||
ctx := context.TODO()
|
|
||||||
results, err := ks.Scan(scanInfo)
|
results, err := ks.Scan(scanInfo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.L().Fatal(err.Error())
|
logger.L().Fatal(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = results.HandleResults(ctx); err != nil {
|
if err = results.HandleResults(ks.Context()); err != nil {
|
||||||
logger.L().Fatal(err.Error())
|
logger.L().Fatal(err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ package update
|
|||||||
// kubescape update
|
// kubescape update
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"github.com/kubescape/kubescape/v3/core/meta"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/kubescape/backend/pkg/versioncheck"
|
"github.com/kubescape/backend/pkg/versioncheck"
|
||||||
@@ -25,17 +25,18 @@ var updateCmdExamples = fmt.Sprintf(`
|
|||||||
%[1]s update
|
%[1]s update
|
||||||
`, cautils.ExecName())
|
`, cautils.ExecName())
|
||||||
|
|
||||||
func GetUpdateCmd() *cobra.Command {
|
func GetUpdateCmd(ks meta.IKubescape) *cobra.Command {
|
||||||
updateCmd := &cobra.Command{
|
updateCmd := &cobra.Command{
|
||||||
Use: "update",
|
Use: "update",
|
||||||
Short: "Update to latest release version",
|
Short: "Update to latest release version",
|
||||||
Long: ``,
|
Long: ``,
|
||||||
Example: updateCmdExamples,
|
Example: updateCmdExamples,
|
||||||
RunE: func(_ *cobra.Command, args []string) error {
|
RunE: func(_ *cobra.Command, args []string) error {
|
||||||
ctx := context.TODO()
|
|
||||||
v := versioncheck.NewVersionCheckHandler()
|
v := versioncheck.NewVersionCheckHandler()
|
||||||
versionCheckRequest := versioncheck.NewVersionCheckRequest("", versioncheck.BuildNumber, "", "", "update", nil)
|
versionCheckRequest := versioncheck.NewVersionCheckRequest("", versioncheck.BuildNumber, "", "", "update", nil)
|
||||||
v.CheckLatestVersion(ctx, versionCheckRequest)
|
if err := v.CheckLatestVersion(ks.Context(), versionCheckRequest); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
//Checking the user's version of kubescape to the latest release
|
//Checking the user's version of kubescape to the latest release
|
||||||
if versioncheck.BuildNumber == "" || strings.Contains(versioncheck.BuildNumber, "rc") {
|
if versioncheck.BuildNumber == "" || strings.Contains(versioncheck.BuildNumber, "rc") {
|
||||||
|
|||||||
@@ -16,7 +16,10 @@ func GetVersionCmd(ks meta.IKubescape) *cobra.Command {
|
|||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, args []string) error {
|
||||||
v := versioncheck.NewIVersionCheckHandler(ks.Context())
|
v := versioncheck.NewIVersionCheckHandler(ks.Context())
|
||||||
versionCheckRequest := versioncheck.NewVersionCheckRequest("", versioncheck.BuildNumber, "", "", "version", nil)
|
versionCheckRequest := versioncheck.NewVersionCheckRequest("", versioncheck.BuildNumber, "", "", "version", nil)
|
||||||
v.CheckLatestVersion(ks.Context(), versionCheckRequest)
|
if err := v.CheckLatestVersion(ks.Context(), versionCheckRequest); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
fmt.Fprintf(cmd.OutOrStdout(),
|
fmt.Fprintf(cmd.OutOrStdout(),
|
||||||
"Your current version is: %s\n",
|
"Your current version is: %s\n",
|
||||||
versionCheckRequest.ClientVersion,
|
versionCheckRequest.ClientVersion,
|
||||||
|
|||||||
Reference in New Issue
Block a user