fix lint errors

This commit is contained in:
Adem Baccara
2025-08-26 18:24:44 +01:00
parent 9a6b8f4702
commit a70ecef4f2
5 changed files with 47 additions and 21 deletions
@@ -43,7 +43,9 @@ func (m *sshConfigManager) parseServers() ([]domain.Server, error) {
}
return nil, err
}
defer file.Close()
defer func() {
_ = file.Close()
}()
parser := &SSHConfigParser{}
return parser.Parse(file)
@@ -58,7 +60,9 @@ func (m *sshConfigManager) writeServers(servers []domain.Server) error {
if err != nil {
return err
}
defer file.Close()
defer func() {
_ = file.Close()
}()
writer := &SSHConfigWriter{}
return writer.Write(file, servers)
+29 -10
View File
@@ -26,36 +26,55 @@ type SSHConfigWriter struct{}
func (w *SSHConfigWriter) Write(writer io.Writer, servers []domain.Server) error {
bufWriter := bufio.NewWriter(writer)
defer bufWriter.Flush()
defer func() {
_ = bufWriter.Flush()
}()
fmt.Fprintf(bufWriter, "%s\n\n", ManagedByComment)
if _, err := fmt.Fprintf(bufWriter, "%s\n\n", ManagedByComment); err != nil {
return err
}
for i, server := range servers {
if i > 0 {
bufWriter.WriteString("\n")
if _, err := bufWriter.WriteString("\n"); err != nil {
return err
}
}
if err := w.writeServer(bufWriter, server); err != nil {
return err
}
w.writeServer(bufWriter, server)
}
return nil
}
func (w *SSHConfigWriter) writeServer(writer *bufio.Writer, server domain.Server) {
fmt.Fprintf(writer, "Host %s\n", server.Alias)
func (w *SSHConfigWriter) writeServer(writer *bufio.Writer, server domain.Server) error {
if _, err := fmt.Fprintf(writer, "Host %s\n", server.Alias); err != nil {
return err
}
if server.Host != "" {
fmt.Fprintf(writer, " HostName %s\n", server.Host)
if _, err := fmt.Fprintf(writer, " HostName %s\n", server.Host); err != nil {
return err
}
}
if server.User != "" {
fmt.Fprintf(writer, " User %s\n", server.User)
if _, err := fmt.Fprintf(writer, " User %s\n", server.User); err != nil {
return err
}
}
if server.Port != 0 && server.Port != DefaultPort {
fmt.Fprintf(writer, " Port %d\n", server.Port)
if _, err := fmt.Fprintf(writer, " Port %d\n", server.Port); err != nil {
return err
}
}
if server.Key != "" {
fmt.Fprintf(writer, " IdentityFile %s\n", server.Key)
if _, err := fmt.Fprintf(writer, " IdentityFile %s\n", server.Key); err != nil {
return err
}
}
return nil
}
+8 -7
View File
@@ -30,10 +30,10 @@ func renderTagBadgesForList(tags []string) string {
if len(tags) == 0 {
return ""
}
max := 2
maxTags := 2
shown := tags
if len(tags) > max {
shown = tags[:max]
if len(tags) > maxTags {
shown = tags[:maxTags]
}
parts := make([]string, 0, len(shown)+1)
for _, t := range shown {
@@ -93,11 +93,12 @@ func humanizeDuration(t time.Time) string {
func BuildSSHCommand(s domain.Server) string {
parts := []string{"ssh"}
userHost := ""
if s.User != "" && s.Host != "" {
switch {
case s.User != "" && s.Host != "":
userHost = fmt.Sprintf("%s@%s", s.User, s.Host)
} else if s.Host != "" {
case s.Host != "":
userHost = s.Host
} else {
default:
userHost = s.Alias
}
parts = append(parts, userHost)
@@ -114,7 +115,7 @@ func BuildSSHCommand(s domain.Server) string {
// quoteIfNeeded returns the value quoted if it contains spaces.
func quoteIfNeeded(val string) string {
if strings.ContainsAny(val, " \t") {
return fmt.Sprintf("\"%s\"", val)
return fmt.Sprintf("%q", val)
}
return val
}