fix(clustertool): fix some talhelper-connectivity mistakes
This commit is contained in:
@@ -11,8 +11,8 @@ import (
|
||||
|
||||
talhelperCfg "github.com/budimanjojo/talhelper/v3/pkg/config"
|
||||
"github.com/budimanjojo/talhelper/v3/pkg/generate"
|
||||
"github.com/budimanjojo/talhelper/v3/pkg/substitute"
|
||||
"github.com/budimanjojo/talhelper/v3/pkg/talos"
|
||||
"github.com/fatih/color"
|
||||
sideroConfig "github.com/siderolabs/talos/pkg/machinery/config"
|
||||
"github.com/siderolabs/talos/pkg/machinery/config/generate/secrets"
|
||||
"github.com/truecharts/public/clustertool/pkg/fluxhandler"
|
||||
@@ -28,7 +28,6 @@ func GenConfig(args []string) error {
|
||||
genTalSecret()
|
||||
validateTalConfig(args)
|
||||
talhelperGenConfig()
|
||||
validateTalConfig(args)
|
||||
initfiles.UpdateGitRepo()
|
||||
|
||||
if err := fluxhandler.ProcessDirectory(path.Join(helper.ClusterPath, "kubernetes")); err != nil {
|
||||
@@ -95,11 +94,10 @@ func talhelperGenConfig() error {
|
||||
genconfigDryRun := false
|
||||
genconfigOfflineMode := false
|
||||
|
||||
cfg, err := talhelperCfg.LoadAndValidateFromFile(helper.TalConfigFile, []string{helper.ClusterEnvFile}, true)
|
||||
cfg, err := talhelperCfg.LoadAndValidateFromFile(helper.TalConfigFile, []string{helper.ClusterEnvFile}, false)
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msgf("failed to parse TalConfig or talenv file: %s", err)
|
||||
}
|
||||
log.Info().Msg("Start Generating Config File...")
|
||||
|
||||
err = generate.GenerateConfig(cfg, genconfigDryRun, helper.TalosGenerated, helper.TalSecretFile, genconfigTalosMode, genconfigOfflineMode)
|
||||
if err != nil {
|
||||
@@ -125,38 +123,52 @@ func validateTalConfig(argsInt []string) error {
|
||||
log.Fatal().Err(err).Msgf("failed to read Talconfig file %s: %s", helper.TalConfigFile, err)
|
||||
}
|
||||
|
||||
if err := substitute.LoadEnvFromFiles([]string{helper.ClusterEnvFile}); err != nil {
|
||||
log.Fatal().Err(err).Msg("failed to load env file: %s")
|
||||
}
|
||||
cfgByte, err = substitute.SubstituteEnvFromByte(cfgByte)
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msg("failed trying to substitute env: %s")
|
||||
}
|
||||
|
||||
log.Debug().Msg("Checking configfile after substitution...")
|
||||
|
||||
errs, warns, err := talhelperCfg.ValidateFromByte(cfgByte)
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msgf("failed to validate talhelper config file: %s", err)
|
||||
}
|
||||
|
||||
if len(errs) > 0 {
|
||||
log.Trace().Msg("running talconfig validation errs...")
|
||||
log.Error().Msg("There are issues with your talhelper config file:")
|
||||
groupedWarns := make(map[string][]string)
|
||||
groupedErr := make(map[string][]string)
|
||||
for _, v := range errs {
|
||||
groupedWarns[v.Field] = append(groupedWarns[v.Field], v.Message.Error())
|
||||
groupedErr[v.Field] = append(groupedErr[v.Field], v.Message.Error())
|
||||
}
|
||||
for field, list := range groupedWarns {
|
||||
color.Yellow("field: %q\n", field)
|
||||
for field, list := range groupedErr {
|
||||
log.Error().Msgf("field: %q\n", field)
|
||||
for _, l := range list {
|
||||
log.Error().Msgf(l + "\n")
|
||||
}
|
||||
}
|
||||
if len(warns) > 0 {
|
||||
log.Warn().Msg("There might be some issues with your talhelper config file:")
|
||||
groupedErr := make(map[string][]string)
|
||||
for _, v := range warns {
|
||||
groupedErr[v.Field] = append(groupedErr[v.Field], v.Message)
|
||||
}
|
||||
for field, list := range groupedErr {
|
||||
color.Yellow("field: %q\n", field)
|
||||
for _, l := range list {
|
||||
log.Warn().Msgf(l + "\n")
|
||||
}
|
||||
os.Exit(1)
|
||||
} else if len(warns) > 0 {
|
||||
log.Trace().Msg("running talconfig validation warns...")
|
||||
log.Warn().Msg("There might be some issues with your talhelper config file:")
|
||||
groupedWarn := make(map[string][]string)
|
||||
for _, v := range warns {
|
||||
groupedWarn[v.Field] = append(groupedWarn[v.Field], v.Message)
|
||||
|
||||
}
|
||||
for field, list := range groupedWarn {
|
||||
log.Warn().Msgf("field: %q\n", field)
|
||||
for _, l := range list {
|
||||
log.Warn().Msgf(l + "\n")
|
||||
}
|
||||
}
|
||||
} else {
|
||||
log.Info().Msg("Your talhelper config file is looking great!")
|
||||
}
|
||||
log.Info().Msg("Finished validating talconfig")
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ import (
|
||||
|
||||
// TODO: remove talhelper dependency for cmd creation
|
||||
func GenUpgrade(node string, extraFlags []string) []string {
|
||||
// TODO: get rid of this, due to double uncontrollable log output
|
||||
cfg, err := talhelperCfg.LoadAndValidateFromFile(helper.TalConfigFile, []string{helper.ClusterEnvFile}, false)
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msgf("failed to parse talconfig or talenv file: %s", err)
|
||||
|
||||
Reference in New Issue
Block a user