@@ -14,69 +14,51 @@ import (
1414)
1515
1616type ExportOption struct {
17- Data helm.RegistryImageStatus // image data
18- Data2 map [* registry.Registry ]map [* helm.Chart ]bool // chart data
19- ChartData helm.ChartData
20- //RegistryImage map[*registry.Registry]map[*image.Image]bool
21- RegistryImage map [* helm.Chart ]map [* image.Image ][]bool
17+ Image helm.RegistryImageStatus
18+ Chart helm.RegistryChartStatus // image data
19+ Data2 map [* registry.Registry ]map [* helm.Chart ]bool // chart data
20+ ChartData helm.ChartData
21+ RegistryImage map [* helm.Chart ]map [* image.Image ][]bool
22+ Registries []* registry.Registry
2223}
2324
2425type ChartArtifact struct {
2526 ChartOverview string `json:"chart_overview"`
2627 ChartName string `json:"chart_name"`
2728 Repository string `json:"repository"`
28- Registry string `json:"registry"`
2929 ChartVersion string `json:"chart_version"`
30- Import bool `json:"import "`
30+ ChartPath string `json:"chart_artifact_path "`
3131}
3232
3333type ImageArtifact struct {
3434 ImageOverview string `json:"image_overview"`
3535 ImageName string `json:"image_name"`
3636 ImageTag string `json:"image_tag"`
3737 Repository string `json:"repository"`
38- Import bool `json:"import"`
3938}
4039
4140func (eo * ExportOption ) Run (ctx context.Context ) ([]string , []string , error ) {
4241 imgOverview := []string {}
4342 chartOverview := []string {}
44- chartDataOverview := []string {}
4543
4644 // Collect image data
47- for reg , imgs := range eo .Data {
48- for img := range imgs {
45+ for r , i := range eo .Image {
46+ for img := range i {
4947 overview := fmt .Sprintf ("Registry: %s, Image: %s, Repository: %s, Tag: %s" ,
50- reg .GetName (),
48+ r .GetName (),
5149 img .String (), img .Repository , img .Tag )
52- fmt .Println ("Registry - data 1:" , reg )
53- fmt .Println ("Image - data 1:" , imgs )
5450 imgOverview = append (imgOverview , overview )
5551 }
5652 }
5753 // Collect chart data
58- for reg , charts := range eo .Data2 {
59- for chart := range charts {
60- overview := fmt .Sprintf ("Registry: %s, Chart: %s, Version: %s" ,
61- reg .Name , chart .Name , chart .Version )
62- fmt .Println ("Registry - data 2:" , reg )
63- fmt .Println ("Chart - data 2:" , chart )
64- chartPath := fmt .Sprintf ("charts/%s" , chart .Name )
65- fmt .Println (chartPath )
54+ for r , c := range eo .Chart {
55+ for chart := range c {
56+ overview := fmt .Sprintf ("Registry: %s, Chart: %s, Version: %s, ChartPath: %s" ,
57+ r .Name , chart .Name , chart .Version , fmt .Sprintf ("charts/%s" , chart .Name ))
6658 chartOverview = append (chartOverview , overview )
6759 }
6860 }
69-
70- // Collect chart data (2)
71- for reg , charts := range eo .RegistryImage {
72- // for chart := range charts {
73- overview := fmt .Sprintf ("Reg: %s, Charts: %s" ,
74- reg , charts )
75- chartDataOverview = append (chartDataOverview , overview )
76- // }
77- }
78-
79- // Convert to JSON (IMAGES) ("Registry: %s, Image: %s, Repository: %s, Tag: %s"
61+ // Convert to JSON
8062 artifacts := []ImageArtifact {}
8163 for _ , overview := range imgOverview {
8264 ia := ImageArtifact {
@@ -87,48 +69,36 @@ func (eo *ExportOption) Run(ctx context.Context) ([]string, []string, error) {
8769 }
8870 artifacts = append (artifacts , ia )
8971 }
72+
9073 chartArtifacts := []ChartArtifact {}
91- // Convert to JSON (CHARTS) ("Registry: %s, Chart: %s, Version: %s"
9274 for _ , overview := range chartOverview {
9375 ca := ChartArtifact {
9476 ChartOverview : overview ,
95- Registry : strings .Split (overview , ", " )[0 ],
9677 ChartName : strings .Split (overview , ", " )[1 ],
9778 ChartVersion : strings .Split (overview , ", " )[2 ],
79+ ChartPath : strings .Split (overview , ", " )[3 ],
9880 }
9981 chartArtifacts = append (chartArtifacts , ca )
10082 }
10183
102- chartData := []ChartArtifact {}
103- // Convert to JSON (CHARTS) ("Registry: %s, Chart: %s, Version: %s"
104- for _ , overview := range chartDataOverview {
105- cd := ChartArtifact {
106- ChartOverview : overview ,
107- }
108- chartData = append (chartData , cd )
109- }
110-
11184 exportData := struct {
11285 Images []ImageArtifact `json:"images"`
11386 Charts []ChartArtifact `json:"charts"`
114- Data []ChartArtifact `json:"chart_data"`
11587 }{
11688 Images : artifacts ,
11789 Charts : chartArtifacts ,
118- Data : chartData ,
11990 }
12091
12192 jsonData , err := json .MarshalIndent (exportData , "" , " " )
12293 if err != nil {
12394 return nil , nil , err
12495 }
12596
126- // Write JSON to file
12797 err = os .WriteFile ("artifacts.json" , jsonData , 0644 )
12898 if err != nil {
12999 return nil , nil , err
130100 }
131101
132102 slog .Info ("Exported artifacts to artifacts.json" )
133103 return imgOverview , chartOverview , nil
134- }
104+ }
0 commit comments