github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/lib/fsutil/update.go (about)

     1  package fsutil
     2  
     3  func updateFile(buffer []byte, filename string) (bool, error) {
     4  	if same, err := CompareFile(buffer, filename); err != nil {
     5  		return false, err
     6  	} else if same {
     7  		return false, nil
     8  	} else {
     9  		file, err := CreateRenamingWriter(filename, PublicFilePerms)
    10  		if err != nil {
    11  			return false, err
    12  		}
    13  		defer file.Close()
    14  		if _, err := file.Write(buffer); err != nil {
    15  			return false, err
    16  		}
    17  		return true, nil
    18  	}
    19  }