feat: init commit
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
package runtime
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
"os"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
type Environment struct {
|
||||
Version string
|
||||
Codename string
|
||||
Hostname string
|
||||
Port string
|
||||
WorkDir string
|
||||
}
|
||||
|
||||
func safeGrab(key, fallback string) string {
|
||||
if v, ok := os.LookupEnv(key); ok {
|
||||
return v
|
||||
}
|
||||
return fallback
|
||||
}
|
||||
|
||||
func GrabEnvironment() Environment {
|
||||
return Environment{
|
||||
Version: safeGrab("VERSION", "0.0.1"),
|
||||
Codename: safeGrab("CODENAME", "Magical Anomaly"),
|
||||
Hostname: safeGrab("HOSTNAME", "0.0.0.0"),
|
||||
Port: safeGrab("PORT", "8080"),
|
||||
WorkDir: safeGrab("OPERATIONDIR", "."),
|
||||
}
|
||||
}
|
||||
|
||||
func EnsureOperation(workDir string) error {
|
||||
slog.Info("starting audit on: " + workDir)
|
||||
|
||||
nDirs := []string{
|
||||
workDir,
|
||||
filepath.Join(workDir, "content"),
|
||||
filepath.Join(workDir, "content", "fresh"),
|
||||
filepath.Join(workDir, "web"),
|
||||
}
|
||||
|
||||
for _, p := range nDirs {
|
||||
if err := os.MkdirAll(p, 0755); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user