package chart import ( "os" "gopkg.in/yaml.v2" ) type ChartData struct { Name string `yaml:"name"` Chart string `yaml:"chart"` Version string `yaml:"version"` Opts string `yaml:"helm_opts"` Values string `yaml:"helm_values"` FileValues string `yaml:"helm_filevalues"` } type ChartRepoData struct { Name string `yaml:"name"` Repository string `yaml:"repository"` Charts []ChartData `yaml:"charts"` } type chartsRepoData struct { Charts []ChartRepoData `yaml:"opencloud"` } func FromConfigFile(filename string) ([]ChartRepoData, error) { yamlFile, _ := os.ReadFile(filename) var data chartsRepoData err := yaml.Unmarshal(yamlFile, &data) if err != nil { return data.Charts, err } return data.Charts, nil }