update init

This commit is contained in:
2026-01-13 12:01:03 +00:00
parent 67c8c24c7d
commit 10e7191c8f
2 changed files with 17 additions and 2 deletions

View File

@@ -4,7 +4,7 @@ A simple, rsync-based PocketBase deployment tool.
## init
- start a new PocketBase project
- start a new PocketBase project (optionally provide a service name via `pb init <name>`)
## dev

17
main.go
View File

@@ -20,6 +20,8 @@ import (
tea "github.com/charmbracelet/bubbletea"
)
var initServiceNameArg string
func main() {
commands := defaultCommands()
args := os.Args[1:]
@@ -37,6 +39,11 @@ func main() {
return
}
initServiceNameArg = ""
if args[0] == "init" && len(args) > 1 {
initServiceNameArg = args[1]
}
if args[0] == "menu" {
if err := tea.NewProgram(newModel()).Start(); err != nil {
log.Fatal(err)
@@ -211,7 +218,7 @@ func runInit() error {
}
defaultName := generateServiceName()
serviceName, err := promptServiceName(defaultName)
serviceName, err := resolveServiceName(defaultName)
if err != nil {
return err
}
@@ -314,6 +321,14 @@ func promptServiceName(defaultName string) (string, error) {
return input, nil
}
func resolveServiceName(defaultName string) (string, error) {
if override := strings.TrimSpace(initServiceNameArg); override != "" {
initServiceNameArg = ""
return override, nil
}
return promptServiceName(defaultName)
}
func pocketbaseBinaryName(goos string) string {
if goos == "windows" {
return "pocketbase.exe"