From e793ca3afb91996e449351951e41f001187a5673 Mon Sep 17 00:00:00 2001 From: Adam JOLY Date: Thu, 9 Jan 2025 10:07:36 +0100 Subject: [PATCH] =?UTF-8?q?=E3=80=8C=F0=9F=94=A8=E3=80=8D=20fix(Mariadb):?= =?UTF-8?q?=20entrypoint=20checking=20old=20db=20correctly?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmd/mariadb/entrypoint/entrypoint.go | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/cmd/mariadb/entrypoint/entrypoint.go b/cmd/mariadb/entrypoint/entrypoint.go index 066d8d5..3784c1c 100644 --- a/cmd/mariadb/entrypoint/entrypoint.go +++ b/cmd/mariadb/entrypoint/entrypoint.go @@ -1,7 +1,6 @@ package main import ( - "errors" "fmt" "log" "os" @@ -67,14 +66,29 @@ func createDBDir(dataDir string) { if err != nil { log.Fatal(err) } - err = os.Mkdir(dataDir+"/.already", 750) +} + +func anyFileExists(folderPath string) (bool, error) { + // Open the folder + dir, err := os.Open(folderPath) if err != nil { - log.Fatal(err) + return false, err } + defer dir.Close() + + // Read directory contents + files, err := dir.Readdir(1) // Read at most 1 file + if err != nil { + return false, err + } + + // If we read at least one file, it exists + return len(files) > 0, nil } func checkOlderDB(dataDir string) bool { - if _, err := os.Stat(dataDir+"/.already"); errors.Is(err, os.ErrNotExist) { + exist, err := anyFileExists(dataDir) + if err != nil || exist == false { return false } return true