linter fixes

This commit is contained in:
ston1th 2021-11-07 13:30:22 +01:00
commit df5babf6c8
15 changed files with 49 additions and 55 deletions

View file

@ -7,19 +7,16 @@ import (
"errors"
"fmt"
"io"
"io/ioutil"
"net"
"net/http"
"net/http/httputil"
"os"
"strconv"
"strings"
"sync"
"time"
)
type Client struct {
sync.Mutex
endpoint string
username string
password string
@ -193,13 +190,13 @@ func (c *Client) Do(r *http.Request, v interface{}) (resp *http.Response, err er
if err != nil {
return
}
body, err := ioutil.ReadAll(resp.Body)
body, err := io.ReadAll(resp.Body)
if err != nil {
resp.Body.Close()
return
}
resp.Body.Close()
resp.Body = ioutil.NopCloser(bytes.NewReader(body))
resp.Body = io.NopCloser(bytes.NewReader(body))
if c.debugWriter != nil {
dumpResp, err := httputil.DumpResponse(resp, true)

View file

@ -14,6 +14,10 @@ func (e Error) Error() string {
return e.Err
}
func (e Error) Is(target error) bool {
return e.Err == target.Error()
}
func decodeResp(resp *http.Response, v interface{}) error {
if resp.Body == nil {
return nil

View file

@ -112,19 +112,19 @@ func NewServer(c *config.Config, log logr.Logger) (*Server, error) {
return s, nil
}
func (s *Server) UpdateDB(db *db.DB, leader bool) error {
s.Data.DB = db
func (s *Server) UpdateDB(kvdb *db.DB, leader bool) error {
s.Data.DB = kvdb
s.Data.Leader = leader
if s.store.Local != nil {
if s.Data.Net == nil {
na, err := netalloc.NewGenericAlloc(db, s.prefix)
na, err := netalloc.NewGenericAlloc(kvdb, s.prefix)
if err != nil {
return err
}
s.Data.Net = na
close(s.init)
} else {
s.Data.Net.SetStore(db)
s.Data.Net.SetStore(kvdb)
}
} else {
if s.Data.Net == nil {

View file

@ -1,11 +1,10 @@
package types
import (
"encoding/hex"
"git.giftfish.de/ston1th/haproxy-lb/pkg/config"
"golang.org/x/crypto/bcrypt"
weakrand "math/rand"
//"net/http"
"encoding/hex"
"strings"
"sync"
"time"
@ -28,11 +27,11 @@ func newCache() *cache {
}
}
func (c *cache) get(key string) (bool, bool) {
func (c *cache) get(key string) (v, ok bool) {
c.mtx.Lock()
defer c.mtx.Unlock()
v, ok := c.cache[key]
return v, ok
v, ok = c.cache[key]
return
}
func (c *cache) set(key string, value bool) {

View file

@ -8,6 +8,7 @@ import (
// Error interface is a custom api error
type Error interface {
Error() string
JSON() string
Status() int
}
@ -19,6 +20,11 @@ type Err struct {
// Error returns the error string
func (a Err) Error() string {
return a.err
}
// Error returns the error string as JSON format
func (a Err) JSON() string {
return `{"error":"` + a.err + `","status":` + strconv.Itoa(a.status) + `}`
}

View file

@ -27,11 +27,11 @@ func NewClient(c *apiclient.Client) (*Client, error) {
return &Client{c}, nil
}
func (c *Client) GetLoadBalancers(ctx context.Context) (lbs map[string]schema.LoadBalancer, err error) {
func (c *Client) GetLoadBalancers(ctx context.Context) (lbs map[string]*schema.LoadBalancer, err error) {
return c.GetLoadBalancersWithCluster(ctx, "")
}
func (c *Client) GetLoadBalancersWithCluster(ctx context.Context, cluster string) (lbs map[string]schema.LoadBalancer, err error) {
func (c *Client) GetLoadBalancersWithCluster(ctx context.Context, cluster string) (lbs map[string]*schema.LoadBalancer, err error) {
path := base
if cluster != "" {
path += "/" + cluster
@ -40,12 +40,12 @@ func (c *Client) GetLoadBalancersWithCluster(ctx context.Context, cluster string
if err != nil {
return
}
lbs = make(map[string]schema.LoadBalancer)
lbs = make(map[string]*schema.LoadBalancer)
_, err = c.c.Do(req, &lbs)
return
}
func (c *Client) GetLoadBalancer(ctx context.Context, cluster, name string) (lb schema.LoadBalancer, err error) {
func (c *Client) GetLoadBalancer(ctx context.Context, cluster, name string) (lb *schema.LoadBalancer, err error) {
path := fmt.Sprintf("%s/%s/%s", base, cluster, name)
req, err := c.c.NewRequest(ctx, "GET", path, nil)
if err != nil {
@ -55,7 +55,7 @@ func (c *Client) GetLoadBalancer(ctx context.Context, cluster, name string) (lb
return
}
func (c *Client) CreateLoadBalancer(ctx context.Context, cluster, name string, lb schema.LoadBalancer) (err error) {
func (c *Client) CreateLoadBalancer(ctx context.Context, cluster, name string, lb *schema.LoadBalancer) (err error) {
buf := new(bytes.Buffer)
path := fmt.Sprintf("%s/%s/%s", base, cluster, name)
err = lb.ValidateClient()

View file

@ -137,7 +137,7 @@ func (o Servers) RemoveByName(name string) Servers {
return append(o[:index], o[index+1:]...)
}
func (lb LoadBalancer) ValidateClient() error {
func (lb *LoadBalancer) ValidateClient() error {
for i, p := range lb.Ports {
if p.Port < 0 || p.Port > 65535 {
return fmt.Errorf("LoadBalancer.Ports[%d].Port is invalid (range 0-65535", i)
@ -157,7 +157,7 @@ func (lb LoadBalancer) ValidateClient() error {
return nil
}
func (lb LoadBalancer) ValidateServer() error {
func (lb *LoadBalancer) ValidateServer() error {
if lb.Name == "" {
return errors.New("LoadBalancer.Name can not be empty")
}
@ -183,6 +183,6 @@ func (lb LoadBalancer) ValidateServer() error {
return nil
}
func (lb LoadBalancer) JSON() ([]byte, error) {
func (lb *LoadBalancer) JSON() ([]byte, error) {
return json.Marshal(lb)
}

View file

@ -1,8 +1,6 @@
package server
import (
//"golang.org/x/crypto/bcrypt"
//"net/http"
"encoding/json"
"errors"
"net"