| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package servicelib
- import (
- "net"
- "os"
- "path/filepath"
- "strings"
- )
- func IsAddrInUse(network, addr string) bool {
- ln, err := net.Listen(network, addr)
- if err != nil {
- return true
- }
- _ = ln.Close()
- return false
- }
- func WriteVersionFile(dir, version string) error {
- file := filepath.Join(dir, "version.txt")
- tmp := file + ".tmp"
- if err := os.MkdirAll(dir, 0755); err != nil {
- return err
- }
- if err := os.WriteFile(tmp, []byte(version+"\n"), 0644); err != nil {
- return err
- }
- return os.Rename(tmp, file)
- }
- func ReadVersionFile(dir string) (string, error) {
- file := filepath.Join(dir, "version.txt")
- data, err := os.ReadFile(file)
- if err != nil {
- return "", err
- }
- return strings.TrimSpace(string(data)), nil
- }
|