+
+ case "convert":
+ if len(args) != 4 {
+ break
+ }
+
+ var t FileType
+ err := t.UnmarshalText([]byte(args[1]))
+ if err != nil {
+ log.Fatal(err)
+ }
+
+ src, err := ioutil.ReadFile(args[2])
+ if err != nil {
+ log.Fatal(err)
+ }
+ pws, err := ParsePasswds(bytes.NewReader(src))
+ if err != nil {
+ log.Fatal(err)
+ }
+ var x bytes.Buffer
+ err = SerializePasswds(&x, pws)
+ if err != nil {
+ log.Fatal(err)
+ }
+
+ // We must create the file first or deployFile() will abort
+ f, err := os.Create(args[3])
+ if err != nil {
+ log.Fatal(err)
+ }
+ f.Close()
+
+ err = deployFile(&File{
+ Type: t,
+ Url: args[2],
+ Path: args[3],
+ body: x.Bytes(),
+ })
+ if err != nil {
+ log.Fatal(err)
+ }
+ return