Add linters and fix lint issues
This commit is contained in:
@@ -13,14 +13,15 @@ func (c *configurator) Start(ctx context.Context) (stdout io.ReadCloser, waitFn
|
||||
return stdout, waitFn, err
|
||||
}
|
||||
|
||||
// Version obtains the version of the installed Tinyproxy server
|
||||
// Version obtains the version of the installed Tinyproxy server.
|
||||
func (c *configurator) Version(ctx context.Context) (string, error) {
|
||||
output, err := c.commander.Run(ctx, "tinyproxy", "-v")
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
words := strings.Fields(output)
|
||||
if len(words) < 2 {
|
||||
const minWords = 2
|
||||
if len(words) < minWords {
|
||||
return "", fmt.Errorf("tinyproxy -v: output is too short: %q", output)
|
||||
}
|
||||
return words[1], nil
|
||||
|
||||
@@ -9,16 +9,18 @@ import (
|
||||
"github.com/qdm12/golibs/files"
|
||||
)
|
||||
|
||||
func (c *configurator) MakeConf(logLevel models.TinyProxyLogLevel, port uint16, user, password string, uid, gid int) error {
|
||||
func (c *configurator) MakeConf(logLevel models.TinyProxyLogLevel,
|
||||
port uint16, user, password string, uid, gid int) error {
|
||||
c.logger.Info("generating tinyproxy configuration file")
|
||||
lines := generateConf(logLevel, port, user, password, uid, gid)
|
||||
return c.fileManager.WriteLinesToFile(string(constants.TinyProxyConf),
|
||||
lines,
|
||||
files.Ownership(uid, gid),
|
||||
files.Permissions(0400))
|
||||
files.Permissions(constants.UserReadPermission))
|
||||
}
|
||||
|
||||
func generateConf(logLevel models.TinyProxyLogLevel, port uint16, user, password string, uid, gid int) (lines []string) {
|
||||
func generateConf(logLevel models.TinyProxyLogLevel, port uint16, user, password string, uid, gid int) (
|
||||
lines []string) {
|
||||
confMapping := map[string]string{
|
||||
"User": fmt.Sprintf("%d", uid),
|
||||
"Group": fmt.Sprintf("%d", gid),
|
||||
|
||||
@@ -37,10 +37,16 @@ type looper struct {
|
||||
|
||||
func (l *looper) logAndWait(ctx context.Context, err error) {
|
||||
l.logger.Error(err)
|
||||
l.logger.Info("retrying in 1 minute")
|
||||
ctx, cancel := context.WithTimeout(ctx, time.Minute)
|
||||
defer cancel() // just for the linter
|
||||
<-ctx.Done()
|
||||
const waitTime = time.Minute
|
||||
l.logger.Info("retrying in %s", waitTime)
|
||||
timer := time.NewTimer(waitTime)
|
||||
select {
|
||||
case <-timer.C:
|
||||
case <-ctx.Done():
|
||||
if !timer.Stop() {
|
||||
<-timer.C
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func NewLooper(conf Configurator, firewallConf firewall.Configurator, settings settings.TinyProxy,
|
||||
|
||||
Reference in New Issue
Block a user