Inital commit

This commit is contained in:
2026-06-24 13:44:39 -04:00
commit f098d5f170
15 changed files with 471 additions and 0 deletions

47
server/new.go Normal file
View File

@@ -0,0 +1,47 @@
package server
import (
"log"
"mc-tool/docker"
"os"
"path/filepath"
"github.com/spf13/cobra"
)
func New(cmd *cobra.Command, args []string) {
dir := args[0]
if err := os.Mkdir(dir, 0755); err != nil {
log.Fatal(err)
}
if err := os.Chdir(dir); err != nil {
log.Fatal(err)
}
compose := docker.NewCompose(dir)
if compose.Type != docker.VANILLA.String() {
if err := os.MkdirAll("data/mods", 0755); err != nil {
log.Fatal(err)
}
if err := os.MkdirAll("data/config", 0755); err != nil {
log.Fatal(err)
}
}
if err := os.MkdirAll("data/world", 0755); err != nil {
log.Fatal(err)
}
if err := writeFile("docker-compose.yml", compose.String()); err != nil {
log.Fatal(err)
}
}
func writeFile(path string, data string) error {
if err := os.MkdirAll(filepath.Dir(path), 0o755); err != nil {
return err
}
return os.WriteFile(path, []byte(data), 0644)
}