Manage empty image name

And avoid removing charts if there are problems before generating the
helm chart

fix #6
This commit is contained in:
2022-04-01 08:15:39 +02:00
parent 68a031d0be
commit 6cd1af015b
2 changed files with 20 additions and 4 deletions

View File

@@ -103,6 +103,10 @@ func Convert(composeFile, appVersion, appName, chartDir string, force bool) {
os.Exit(1) os.Exit(1)
} }
// Parse the compose file now
p := compose.NewParser(composeFile)
p.Parse(appName)
dirname := filepath.Join(chartDir, appName) dirname := filepath.Join(chartDir, appName)
if _, err := os.Stat(dirname); err == nil && !force { if _, err := os.Stat(dirname); err == nil && !force {
response := "" response := ""
@@ -133,10 +137,6 @@ func Convert(composeFile, appVersion, appName, chartDir string, force bool) {
os.Exit(1) os.Exit(1)
} }
// Parse the compose file now
p := compose.NewParser(composeFile)
p.Parse(appName)
// start generator // start generator
generator.Generate(p, Version, appName, appVersion, ComposeFile, dirname) generator.Generate(p, Version, appName, appVersion, ComposeFile, dirname)

View File

@@ -94,6 +94,22 @@ func (p *Parser) Parse(appname string) {
log.Fatal(strings.Join(missing, "\n")) log.Fatal(strings.Join(missing, "\n"))
} }
// check if all "image" properties are set
missing = []string{}
for name, s := range c.Services {
if s.Image == "" {
missing = append(missing, fmt.Sprintf(
"The service \"%s\" hasn't got "+
"an image property - please "+
"append an image property in the docker-compose file",
name,
))
}
}
if len(missing) > 0 {
log.Fatal(strings.Join(missing, "\n"))
}
// check the build element // check the build element
for name, s := range c.Services { for name, s := range c.Services {
if s.RawBuild == nil { if s.RawBuild == nil {