diff options
| author | Jeff Carr <[email protected]> | 2025-09-11 02:19:56 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-09-11 02:19:56 -0500 |
| commit | 92d7a71f125b69c52731f2c63a400ca782c88afa (patch) | |
| tree | c9f626b39494111c159455043bff49471d462f52 | |
| parent | 41fe3edc93e20fa78fca5eb679e1d83e71357825 (diff) | |
using new config package
| -rw-r--r-- | save.go | 23 |
1 files changed, 22 insertions, 1 deletions
@@ -19,7 +19,6 @@ func ConfigSave(pb proto.Message) error { return ErrProtoFilename } - // Unmarshal() s := prototext.Format(pb) dir, name := filepath.Split(fullname) @@ -35,6 +34,28 @@ func ConfigSave(pb proto.Message) error { return configWrite(fullname, []byte(s)) } +func ConfigSaveWithHeader(pb proto.Message, header string) error { + // get pb.Filename if it is there in the .proto file + fullname, ok := GetFilename(pb) + if !ok { + return ErrProtoFilename + } + + s := prototext.Format(pb) + + dir, name := filepath.Split(fullname) + if name == "" { + return fmt.Errorf("filename was blank") + } + err := os.MkdirAll(dir, os.ModePerm) + if err != nil { + return err + } + + log.Infof("ConfigSave() filename=%s %d\n", fullname, len(s)) + return configWrite(fullname, []byte(header+s)) +} + func configWrite(fullname string, data []byte) error { cfgfile, err := os.OpenFile(fullname, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644) |
