Skip to content

Commit 95b3b16

Browse files
authored
Merge pull request #281 from intelops/revert-280-pvc
Revert "Pvc"
2 parents 3909e7c + ca6737c commit 95b3b16

File tree

5 files changed

+32
-39
lines changed

5 files changed

+32
-39
lines changed

agent/kubviz/kubePreUpgrade.go

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -79,21 +79,19 @@ func publishK8sDepricated_Deleted_Api(result *model.Result, js nats.JetStreamCon
7979
}
8080

8181
func KubePreUpgradeDetector(config *rest.Config, js nats.JetStreamContext) error {
82-
pvcMountPath := "/mnt/agent/kbz"
83-
uniqueDir := fmt.Sprintf("%s/kubepug", pvcMountPath)
84-
err := os.Mkdir(uniqueDir, 0755)
82+
swaggerdir, err := os.MkdirTemp("", "kubepug")
8583
if err != nil {
8684
return err
8785
}
88-
89-
filename := fmt.Sprintf("%s/swagger-%s.json", uniqueDir, k8sVersion)
86+
filename := fmt.Sprintf("%s/swagger-%s.json", swaggerdir, k8sVersion)
9087
url := fmt.Sprintf("%s/%s/%s", baseURL, k8sVersion, fileURL)
9188
err = downloadFile(filename, url)
9289
if err != nil {
9390
return err
9491
}
95-
defer os.RemoveAll(filename)
96-
kubernetesAPIs, err := PopulateKubeAPIMap(filename)
92+
defer os.RemoveAll(swaggerdir)
93+
swaggerfile := filename
94+
kubernetesAPIs, err := PopulateKubeAPIMap(swaggerfile)
9795
if err != nil {
9896
return err
9997
}
@@ -104,6 +102,7 @@ func KubePreUpgradeDetector(config *rest.Config, js nats.JetStreamContext) error
104102

105103
func PopulateKubeAPIMap(swagfile string) (model.KubernetesAPIs, error) {
106104
var kubeAPIs = make(model.KubernetesAPIs)
105+
// log.Infof("Populating the PopulateKubeAPIMap")
107106
jsonFile, err := os.Open(swagfile)
108107
if err != nil {
109108
log.Error(err)

agent/kubviz/outdated.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,13 @@ func splitOutlierSemvers(allSemverTags []*semver.Version) ([]*semver.Version, []
447447
return outliers, remaining, nil
448448
}
449449

450+
// func homeDir() string {
451+
// if h := os.Getenv("HOME"); h != "" {
452+
// return h
453+
// }
454+
// return os.Getenv("USERPROFILE")
455+
// }
456+
450457
type VersionTag struct {
451458
Sort int `json:"sort"`
452459
Version string `json:"version"`

agent/kubviz/trivy.go

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@ package main
33
import (
44
"bytes"
55
"encoding/json"
6-
"fmt"
76
"log"
8-
"os"
97
exec "os/exec"
108
"strings"
119

@@ -31,15 +29,8 @@ func executeCommandTrivy(command string) ([]byte, error) {
3129
return outc.Bytes(), err
3230
}
3331
func RunTrivyK8sClusterScan(js nats.JetStreamContext) error {
34-
pvcMountPath := "/mnt/agent/kbz"
35-
trivyCacheDir := fmt.Sprintf("%s/trivy-cache", pvcMountPath)
36-
err := os.MkdirAll(trivyCacheDir, 0755)
37-
if err != nil {
38-
log.Printf("Error creating Trivy cache directory: %v\n", err)
39-
return err
40-
}
4132
var report report.ConsolidatedReport
42-
cmdString := fmt.Sprintf("trivy k8s --report summary cluster --exclude-nodes kubernetes.io/arch:amd64 --timeout 60m -f json --cache-dir %s --debug", trivyCacheDir)
33+
cmdString := "trivy k8s --report summary cluster --exclude-nodes kubernetes.io/arch:amd64 --timeout 60m -f json --cache-dir /tmp/.cache --debug"
4334
clearCacheCmd := "trivy k8s --clear-cache"
4435
out, err := executeCommandTrivy(cmdString)
4536
if err != nil {

agent/kubviz/trivy_image.go

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package main
22

33
import (
44
"encoding/json"
5-
"fmt"
65
"log"
76
"os"
87
"strings"
@@ -16,15 +15,6 @@ import (
1615
)
1716

1817
func RunTrivyImageScans(config *rest.Config, js nats.JetStreamContext) error {
19-
20-
pvcMountPath := "/mnt/agent/kbz"
21-
trivyImageCacheDir := fmt.Sprintf("%s/trivy-imagecache", pvcMountPath)
22-
err := os.MkdirAll(trivyImageCacheDir, 0755)
23-
if err != nil {
24-
log.Printf("Error creating Trivy Image cache directory: %v\n", err)
25-
return err
26-
}
27-
2818
clearCacheCmd := "trivy image --clear-cache"
2919

3020
images, err := ListImages(config)
@@ -35,8 +25,7 @@ func RunTrivyImageScans(config *rest.Config, js nats.JetStreamContext) error {
3525

3626
for _, image := range images {
3727
var report types.Report
38-
scanCmd := fmt.Sprintf("trivy image %s --timeout 60m -f json -q --cache-dir %s", image.PullableImage, trivyImageCacheDir)
39-
out, err := executeCommand(scanCmd)
28+
out, err := executeCommand("trivy image " + image.PullableImage + " --timeout 60m -f json -q --cache-dir /tmp/.cache")
4029
if err != nil {
4130
log.Printf("Error scanning image %s: %v", image.PullableImage, err)
4231
continue // Move on to the next image in case of an error
@@ -85,3 +74,12 @@ func publishImageScanReports(report types.Report, js nats.JetStreamContext) erro
8574
log.Printf("Trivy image report with ID:%s has been published\n", metrics.ID)
8675
return nil
8776
}
77+
78+
func cleanupCache(cacheDir string) {
79+
err := os.RemoveAll(cacheDir)
80+
if err != nil {
81+
log.Printf("Failed to clean up cache directory %s: %v", cacheDir, err)
82+
} else {
83+
log.Printf("Cache directory %s cleaned up successfully", cacheDir)
84+
}
85+
}

agent/kubviz/trivy_sbom.go

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import (
55
"encoding/json"
66
"fmt"
77
"log"
8-
"os"
98
"os/exec"
109

1110
"github.com/aquasecurity/trivy/pkg/sbom/cyclonedx"
@@ -48,20 +47,18 @@ func executeCommandSbom(command string) ([]byte, error) {
4847

4948
func RunTrivySbomScan(config *rest.Config, js nats.JetStreamContext) error {
5049
clearCacheCmd := "trivy image --clear-cache"
51-
pvcMountPath := "/mnt/agent/kbz"
52-
trivySbomCacheDir := fmt.Sprintf("%s/trivy-sbomcache", pvcMountPath)
53-
err := os.MkdirAll(trivySbomCacheDir, 0755)
54-
if err != nil {
55-
log.Printf("Error creating Trivy cache directory: %v\n", err)
56-
return err
57-
}
50+
51+
log.Println("trivy sbom run started")
5852
images, err := ListImages(config)
53+
5954
if err != nil {
6055
log.Printf("failed to list images: %v", err)
6156
}
6257
for _, image := range images {
63-
sbomcmd := fmt.Sprintf("trivy image --format cyclonedx %s --cache-dir %s", image.PullableImage, trivySbomCacheDir)
64-
out, err := executeCommandSbom(sbomcmd)
58+
59+
command := fmt.Sprintf("trivy image --format cyclonedx %s %s", image.PullableImage, "--cache-dir /tmp/.cache")
60+
out, err := executeCommandSbom(command)
61+
6562
if err != nil {
6663
log.Printf("Error executing Trivy for image sbom %s: %v", image.PullableImage, err)
6764
continue // Move on to the next image in case of an error
@@ -72,6 +69,7 @@ func RunTrivySbomScan(config *rest.Config, js nats.JetStreamContext) error {
7269
log.Printf("Trivy output is empty for image sbom %s", image.PullableImage)
7370
continue // Move on to the next image
7471
}
72+
7573
var report cyclonedx.BOM
7674
err = json.Unmarshal(out, &report)
7775
if err != nil {

0 commit comments

Comments
 (0)