Files
OliveTin/service/internal/filehelper/file_write.go
James Read ff31abe66c
Some checks failed
Build Snapshot / build-snapshot (push) Waiting to run
DevSkim / DevSkim (push) Waiting to run
Buf CI / buf (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Codestyle checks / codestyle (push) Has been cancelled
refactor: Project directories (#541)
2025-03-22 01:06:59 +00:00

39 lines
629 B
Go

package filehelper
import (
log "github.com/sirupsen/logrus"
"os"
"sync"
)
var writeFileMutex sync.Mutex
func WriteFile(filename string, out []byte) {
writeFileMutex.Lock()
defer writeFileMutex.Unlock()
if _, err := os.Stat(filename); os.IsNotExist(err) {
handle, err := os.Create(filename)
handle.Close()
if err != nil {
log.WithFields(log.Fields{
"error": err,
}).Errorf("Failed to create %v", filename)
return
}
}
err := os.WriteFile(filename, out, 0600)
if err != nil {
log.WithFields(log.Fields{
"error": err,
}).Errorf("Failed to write session to %v", filename)
return
}
}