]> ruderich.org/simon Gitweb - safcm/safcm.git/blobdiff - cmd/safcm-remote/main.go
remote: add "sync" sub-command to perform changes
[safcm/safcm.git] / cmd / safcm-remote / main.go
index 46a651aed947f96a3e136639da8f79b8ff366719..64889c5a16180a06387754f8e68071439d913eed 100644 (file)
@@ -23,20 +23,39 @@ import (
        "os"
 
        "ruderich.org/simon/safcm"
+       "ruderich.org/simon/safcm/cmd/safcm-remote/ainsl"
        "ruderich.org/simon/safcm/cmd/safcm-remote/info"
        "ruderich.org/simon/safcm/cmd/safcm-remote/run"
        "ruderich.org/simon/safcm/cmd/safcm-remote/sync"
 )
 
+func usage() {
+               log.Fatalf("usage: %[1]s sync\n"+
+                       "usage: %[1]s ainsl [options] <path> <line>",
+                       os.Args[0])
+}
+
 func main() {
        // Timestamps are added by `safcm`
        log.SetFlags(0)
 
-       if len(os.Args) != 1 {
-               log.Fatalf("usage: %s", os.Args[0])
+       if len(os.Args) < 2 {
+               usage()
+       }
+
+       var err error
+       switch os.Args[1] {
+       case "sync":
+               if len(os.Args) != 2 {
+                       usage()
+               }
+               err = mainLoop()
+       case "ainsl":
+               err = ainsl.Main(os.Args)
+       default:
+               usage()
        }
 
-       err := mainLoop()
        if err != nil {
                log.Fatalf("%s: %v", os.Args[0], err)
        }