Add --cwd override for relative paths

This commit is contained in:
2026-02-19 16:29:30 +00:00
parent 3c1972d670
commit 24fb9be6fb

23
main.go
View File

@@ -28,17 +28,28 @@ func main() {
os.Exit(1)
}
args := os.Args[1:]
cwd := ""
if len(args) >= 2 && args[0] == "--cwd" {
cwd = args[1]
args = args[2:]
if len(args) == 0 {
usage()
os.Exit(1)
}
}
var err error
switch os.Args[1] {
switch args[0] {
case "apply":
err = applyCmd()
case "add":
err = addCmd(os.Args[2:])
err = addCmd(args[1:], cwd)
case "help", "-h", "--help":
usage()
return
default:
err = fmt.Errorf("unknown command %q", os.Args[1])
err = fmt.Errorf("unknown command %q", args[0])
}
if err != nil {
@@ -105,17 +116,15 @@ func applyCmd() error {
return nil
}
func addCmd(args []string) error {
func addCmd(args []string, cwd string) error {
if len(args) < 1 {
return errors.New("missing path")
}
argPath := args[0]
if !filepath.IsAbs(argPath) {
if cwd := os.Getenv("SIGIL_CWD"); cwd != "" {
if !filepath.IsAbs(argPath) && cwd != "" {
argPath = filepath.Join(cwd, argPath)
}
}
absPath, err := filepath.Abs(argPath)
if err != nil {