oc-deploy/src/chart/conf.go

43 lines
916 B
Go
Raw Normal View History

2024-09-02 13:44:44 +02:00
package chart
import (
"os"
"gopkg.in/yaml.v2"
)
type ChartData struct {
Name string `yaml:"name"`
Chart string `yaml:"chart"`
2024-09-03 17:18:11 +02:00
Url string `yaml:"url"`
2024-09-02 13:44:44 +02:00
Version string `yaml:"version"`
Opts string `yaml:"helm_opts"`
Values string `yaml:"helm_values"`
FileValues string `yaml:"helm_filevalues"`
2024-09-03 17:18:11 +02:00
}
2024-09-02 13:44:44 +02:00
2024-09-03 17:18:11 +02:00
type repoData struct {
Name string `yaml:"name"`
Url string `yaml:"url"`
ForceUpdate bool `yaml:"forceupdate"`
2024-09-02 13:44:44 +02:00
}
type ChartRepoData struct {
2024-09-03 17:18:11 +02:00
Repository repoData `yaml:"repository"`
2024-09-03 13:46:45 +02:00
Charts []ChartData `yaml:"charts"`
2024-09-02 13:44:44 +02:00
}
type chartsRepoData struct {
Charts []ChartRepoData `yaml:"opencloud"`
}
2024-09-03 15:18:20 +02:00
func FromConfigFile(filename string) ([]ChartRepoData, error) {
2024-09-02 13:44:44 +02:00
yamlFile, _ := os.ReadFile(filename)
var data chartsRepoData
2024-09-03 15:18:20 +02:00
err := yaml.Unmarshal(yamlFile, &data)
if err != nil {
return data.Charts, err
}
return data.Charts, nil
2024-09-02 13:44:44 +02:00
}