🧑‍💻 Check and create theme dir if not exist

This commit is contained in:
Maxim Lebedev 2023-11-08 08:22:07 +06:00
parent 3e5709e498
commit 72eb8627ee
Signed by: toby3d
GPG Key ID: 1F14E25B7C119FC5
1 changed files with 17 additions and 12 deletions

29
main.go
View File

@ -49,21 +49,26 @@ func init() {
logger.Fatalln("cannot unmarshal configuration into domain:", err)
}
if config.ContentDir, err = filepath.Abs(filepath.Clean(config.ContentDir)); err != nil {
logger.Fatalf("cannot format '%s' content dir path into absolute path: %s", config.ContentDir, err)
}
if _, err = os.Stat(config.ContentDir); err != nil {
if errors.Is(err, os.ErrExist) {
return
for _, dir := range []*string{
&config.ContentDir,
&config.ThemeDir,
} {
if *dir, err = filepath.Abs(filepath.Clean(*dir)); err != nil {
logger.Fatalf("cannot format '%s' into absolute path: %s", *dir, err)
}
if !errors.Is(err, os.ErrNotExist) {
logger.Fatalln("cannot check directory path for content:", err)
}
if _, err = os.Stat(*dir); err != nil {
if errors.Is(err, os.ErrExist) {
return
}
if err = os.MkdirAll(config.ContentDir, os.ModePerm); err != nil {
logger.Fatalln("cannot create directory for content:", err)
if !errors.Is(err, os.ErrNotExist) {
logger.Fatalf("cannot check '%s' path: %v", *dir, err)
}
if err = os.MkdirAll(*dir, os.ModePerm); err != nil {
logger.Fatalf("cannot create directory on '%s': %v", *dir, err)
}
}
}
}