Skip to content

Commit f9e648b

Browse files
committed
chore(golangci-lint): stop handle error on Close()
most Close() is not so critical, add `//nolint:errcheck` to ignore them
1 parent 8b469f2 commit f9e648b

File tree

9 files changed

+90
-159
lines changed

9 files changed

+90
-159
lines changed

api/login.go

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99
"encoding/json"
1010
"errors"
1111
"fmt"
12-
"github.com/semaphoreui/semaphore/pkg/tz"
1312
"net/http"
1413
"net/url"
1514
"os"
@@ -18,6 +17,8 @@ import (
1817
"text/template"
1918
"time"
2019

20+
"github.com/semaphoreui/semaphore/pkg/tz"
21+
2122
"github.com/coreos/go-oidc/v3/oidc"
2223
"github.com/go-ldap/ldap/v3"
2324
"github.com/gorilla/mux"
@@ -60,7 +61,7 @@ func tryFindLDAPUser(username, password string) (*db.User, error) {
6061
if err != nil {
6162
return nil, err
6263
}
63-
defer l.Close()
64+
defer l.Close() //nolint:errcheck
6465

6566
// First bind with a read only user
6667
if err = l.Bind(util.Config.LdapBindDN, util.Config.LdapBindPassword); err != nil {
@@ -137,7 +138,6 @@ func tryFindLDAPUser(username, password string) (*db.User, error) {
137138
}
138139

139140
err = db.ValidateUser(ldapUser)
140-
141141
if err != nil {
142142
jsonBytes, _ := json.Marshal(ldapUser)
143143
log.Error("LDAP returned incorrect user data: " + string(jsonBytes))
@@ -171,7 +171,6 @@ func createSession(w http.ResponseWriter, r *http.Request, user db.User) {
171171
VerificationMethod: verificationMethod,
172172
Verified: verified,
173173
})
174-
175174
if err != nil {
176175
log.Error(err)
177176
helpers.WriteErrorStatus(w, "Failed to create session", http.StatusInternalServerError)
@@ -196,7 +195,6 @@ func createSession(w http.ResponseWriter, r *http.Request, user db.User) {
196195

197196
func loginByPassword(store db.Store, login string, password string) (user db.User, err error) {
198197
user, err = store.GetUserByLoginOrEmail(login, login)
199-
200198
if err != nil {
201199
return
202200
}
@@ -207,7 +205,6 @@ func loginByPassword(store db.Store, login string, password string) (user db.Use
207205
}
208206

209207
err = bcrypt.CompareHashAndPassword([]byte(user.Password), []byte(password))
210-
211208
if err != nil {
212209
err = db.ErrNotFound
213210
return
@@ -364,7 +361,6 @@ func login(w http.ResponseWriter, r *http.Request) {
364361
// - 204 No Content: Logout successful.
365362
// - 500 Internal Server Error: An error occurred while expiring the session.
366363
func logout(w http.ResponseWriter, r *http.Request) {
367-
368364
if session, ok := getSession(r); ok {
369365
err := helpers.Store(r).ExpireSession(session.UserID, session.ID)
370366
if err != nil {
@@ -512,8 +508,7 @@ type claimResult struct {
512508
email string
513509
}
514510

515-
func parseClaim(str string, claims map[string]interface{}) (string, bool) {
516-
511+
func parseClaim(str string, claims map[string]any) (string, bool) {
517512
for _, s := range strings.Split(str, "|") {
518513
s = strings.TrimSpace(s)
519514

@@ -523,7 +518,6 @@ func parseClaim(str string, claims map[string]interface{}) (string, bool) {
523518

524519
if strings.Contains(s, "{{") {
525520
tpl, err := template.New("").Parse(s)
526-
527521
if err != nil {
528522
return "", false
529523
}
@@ -567,8 +561,7 @@ func prepareClaims(claims map[string]interface{}) {
567561
}
568562
}
569563

570-
func parseClaims(claims map[string]interface{}, provider util.ClaimsProvider) (res claimResult, err error) {
571-
564+
func parseClaims(claims map[string]any, provider util.ClaimsProvider) (res claimResult, err error) {
572565
var ok bool
573566
res.email, ok = parseClaim(provider.GetEmailClaim(), claims)
574567

@@ -622,7 +615,6 @@ func getRandomProfileName() string {
622615

623616
func getSecretFromFile(source string) (string, error) {
624617
content, err := os.ReadFile(source)
625-
626618
if err != nil {
627619
return "", err
628620
}
@@ -691,7 +683,6 @@ func oidcRedirect(w http.ResponseWriter, r *http.Request) {
691683
userInfo, err = _oidc.UserInfo(ctx, oauth2.StaticTokenSource(oauth2Token))
692684

693685
if err == nil {
694-
695686
if userInfo.Email == "" {
696687
claims, err = claimOidcUserInfo(userInfo, provider)
697688
} else {

db/sql/SqlDb.go

Lines changed: 13 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ import (
55
"embed"
66
"errors"
77
"fmt"
8+
"reflect"
9+
"regexp"
10+
"strconv"
11+
"strings"
12+
813
"github.com/Masterminds/squirrel"
914
"github.com/go-gorp/gorp/v3"
1015
_ "github.com/go-sql-driver/mysql" // imports mysql driver
@@ -13,10 +18,6 @@ import (
1318
"github.com/semaphoreui/semaphore/pkg/task_logger"
1419
"github.com/semaphoreui/semaphore/util"
1520
log "github.com/sirupsen/logrus"
16-
"reflect"
17-
"regexp"
18-
"strconv"
19-
"strings"
2021
)
2122

2223
type SqlDb struct {
@@ -35,7 +36,6 @@ create table ` + "`migrations`" + ` (
3536
var dbAssets embed.FS
3637

3738
func getQueryForParams(q squirrel.SelectBuilder, prefix string, props db.ObjectProps, params db.RetrieveQueryParams) (res squirrel.SelectBuilder, err error) {
38-
3939
pp, err := params.Validate(props)
4040
if err != nil {
4141
return
@@ -78,9 +78,7 @@ func handleRollbackError(err error) {
7878
}
7979
}
8080

81-
var (
82-
identifierQuoteRE = regexp.MustCompile("`")
83-
)
81+
var identifierQuoteRE = regexp.MustCompile("`")
8482

8583
// validateMutationResult checks the success of the update query
8684
func validateMutationResult(res sql.Result, err error) error {
@@ -137,13 +135,11 @@ func (d *SqlDb) insert(primaryKeyColumnName string, query string, args ...interf
137135
}
138136
default:
139137
res, err := d.exec(query, args...)
140-
141138
if err != nil {
142139
return 0, err
143140
}
144141

145142
insertId, err = res.LastInsertId()
146-
147143
if err != nil {
148144
return 0, err
149145
}
@@ -212,10 +208,9 @@ func createDb() error {
212208
return err
213209
}
214210

215-
defer conn.Close()
211+
defer conn.Close() //nolint:errcheck
216212

217213
_, err = conn.Exec("create database " + cfg.GetDbName())
218-
219214
if err != nil {
220215
log.Warn(err.Error())
221216
}
@@ -235,7 +230,6 @@ func (d *SqlDb) getObject(projectID int, props db.ObjectProps, objectID int, obj
235230
}
236231

237232
query, args, err := q.ToSql()
238-
239233
if err != nil {
240234
return
241235
}
@@ -246,7 +240,6 @@ func (d *SqlDb) getObject(projectID int, props db.ObjectProps, objectID int, obj
246240
}
247241

248242
func (d *SqlDb) makeObjectsQuery(projectID int, props db.ObjectProps, params db.RetrieveQueryParams) (q squirrel.SelectBuilder, err error) {
249-
250243
columns := []string{"*"}
251244
if len(props.SelectColumns) > 0 {
252245
columns = props.SortableColumns
@@ -296,7 +289,6 @@ func (d *SqlDb) getObjects(
296289
objects interface{},
297290
) (err error) {
298291
q, err := d.makeObjectsQuery(projectID, props, params)
299-
300292
if err != nil {
301293
return
302294
}
@@ -306,7 +298,6 @@ func (d *SqlDb) getObjects(
306298
}
307299

308300
query, args, err := q.ToSql()
309-
310301
if err != nil {
311302
return
312303
}
@@ -349,7 +340,6 @@ func (d *SqlDb) Connect(_ string) {
349340
}
350341

351342
err = sqlDb.Ping()
352-
353343
if err != nil {
354344
if err = sqlDb.Close(); err != nil {
355345
log.Warn("Cannot close database connection: " + err.Error())
@@ -459,7 +449,6 @@ func (d *SqlDb) getObjectRefsFrom(
459449
if referringObjectProps.Type == db.ScheduleProps.Type {
460450
var referringSchedules []db.Schedule
461451
_, err = d.selectAll(&referringSchedules, "select template_id id from project__schedule where project_id = ? and ("+cond+")", vals...)
462-
463452
if err != nil {
464453
return
465454
}
@@ -512,7 +501,6 @@ func (d *SqlDb) getObjectByReferrer(referrerID int, referringObjectProps db.Obje
512501
Where("id=?", objectID).
513502
Where(referringObjectProps.ReferringColumnSuffix+"=?", referrerID).
514503
ToSql()
515-
516504
if err != nil {
517505
return
518506
}
@@ -529,7 +517,7 @@ func (d *SqlDb) getObjectsByReferrer(
529517
params db.RetrieveQueryParams,
530518
objects interface{},
531519
) (err error) {
532-
var referringColumn = referringObjectProps.ReferringColumnSuffix
520+
referringColumn := referringObjectProps.ReferringColumnSuffix
533521

534522
columns := []string{"*"}
535523
if len(props.SelectColumns) > 0 {
@@ -545,13 +533,11 @@ func (d *SqlDb) getObjectsByReferrer(
545533
}
546534

547535
q, err = getQueryForParams(q, "pe.", props, params)
548-
549536
if err != nil {
550537
return
551538
}
552539

553540
query, args, err := q.ToSql()
554-
555541
if err != nil {
556542
return
557543
}
@@ -562,7 +548,7 @@ func (d *SqlDb) getObjectsByReferrer(
562548
}
563549

564550
func (d *SqlDb) deleteByReferrer(referrerID int, referringObjectProps db.ObjectProps, props db.ObjectProps, objectID int) error {
565-
var referringColumn = referringObjectProps.ReferringColumnSuffix
551+
referringColumn := referringObjectProps.ReferringColumnSuffix
566552

567553
return validateMutationResult(
568554
d.exec(
@@ -622,7 +608,6 @@ func (d *SqlDb) GetObject(props db.ObjectProps, ID int) (object interface{}, err
622608
Where(squirrel.Eq{"t.id": ID}).
623609
OrderBy("t.id").
624610
ToSql()
625-
626611
if err != nil {
627612
return
628613
}
@@ -631,8 +616,8 @@ func (d *SqlDb) GetObject(props db.ObjectProps, ID int) (object interface{}, err
631616
return
632617
}
633618

634-
func (d *SqlDb) CreateObject(props db.ObjectProps, object interface{}) (newObject interface{}, err error) {
635-
//err = newObject.Validate()
619+
func (d *SqlDb) CreateObject(props db.ObjectProps, object any) (newObject any, err error) {
620+
// err = newObject.Validate()
636621

637622
if err != nil {
638623
return
@@ -642,7 +627,6 @@ func (d *SqlDb) CreateObject(props db.ObjectProps, object interface{}) (newObjec
642627
insertID, err := d.insert(
643628
"id",
644629
"insert into "+props.TableName+" "+template, args...)
645-
646630
if err != nil {
647631
return
648632
}
@@ -662,15 +646,13 @@ func (d *SqlDb) GetObjectsByForeignKeyQuery(props db.ObjectProps, foreignID int,
662646
Where(foreignProps.ReferringColumnSuffix+"=?", foreignID)
663647

664648
q, err = getQueryForParams(q, "t.", props, params)
665-
666649
if err != nil {
667650
return
668651
}
669652

670653
query, args, err := q.
671654
OrderBy("t.id").
672655
ToSql()
673-
674656
if err != nil {
675657
return
676658
}
@@ -685,7 +667,6 @@ func (d *SqlDb) GetAllObjectsByForeignKey(props db.ObjectProps, foreignID int, f
685667
Where(foreignProps.ReferringColumnSuffix+"=?", foreignID).
686668
OrderBy("t.id").
687669
ToSql()
688-
689670
if err != nil {
690671
return
691672
}
@@ -700,15 +681,13 @@ func (d *SqlDb) GetAllObjects(props db.ObjectProps) (objects interface{}, err er
700681
From(props.TableName + " as t").
701682
OrderBy("t.id").
702683
ToSql()
703-
704684
if err != nil {
705685
return
706686
}
707687
var results []interface{}
708688
results, err = d.selectAll(&objects, query, args...)
709689

710690
return results, err
711-
712691
}
713692

714693
// Retrieve the Matchers & Values referencing `id' from WebhookExtractor
@@ -730,10 +709,9 @@ func (d *SqlDb) GetAllObjects(props db.ObjectProps) (objects interface{}, err er
730709
// "Matchers": db.WebhookMatcherProps,
731710
// "Values": db.WebhookExtractValueProps
732711
// }, &referrerCollection)
733-
func (d *SqlDb) GetReferencesForForeignKey(objectProps db.ObjectProps, objectID int, referrerMapping map[string]db.ObjectProps, referrerCollection *interface{}) (err error) {
734-
712+
func (d *SqlDb) GetReferencesForForeignKey(objectProps db.ObjectProps, objectID int, referrerMapping map[string]db.ObjectProps, referrerCollection *any) (err error) {
735713
for key, value := range referrerMapping {
736-
//v := reflect.ValueOf(referrerCollection)
714+
// v := reflect.ValueOf(referrerCollection)
737715
referrers, errRef := d.GetObjectReferences(objectProps, value, objectID)
738716

739717
if errRef != nil {
@@ -775,7 +753,6 @@ func (d *SqlDb) GetObjectReferences(objectProps db.ObjectProps, referringObjectP
775753
referringObjects.Interface(),
776754
"select id, name from "+referringObjectProps.TableName+" where "+objectProps.ReferringColumnSuffix+" = ? and "+cond,
777755
vals...)
778-
779756
if err != nil {
780757
return
781758
}
@@ -790,7 +767,6 @@ func (d *SqlDb) GetObjectReferences(objectProps db.ObjectProps, referringObjectP
790767
}
791768

792769
func (d *SqlDb) GetTaskStats(projectID int, templateID *int, unit db.TaskStatUnit, filter db.TaskFilter) (stats []db.TaskStat, err error) {
793-
794770
stats = make([]db.TaskStat, 0)
795771

796772
if unit != db.TaskStatUnitDay {
@@ -827,7 +803,6 @@ func (d *SqlDb) GetTaskStats(projectID int, templateID *int, unit db.TaskStatUni
827803
}
828804

829805
query, args, err := q.ToSql()
830-
831806
if err != nil {
832807
return
833808
}

db_lib/AnsibleApp.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ func getMD5Hash(filepath string) (string, error) {
1616
if err != nil {
1717
return "", err
1818
}
19-
defer file.Close()
19+
defer file.Close() //nolint:errcheck
2020

2121
hash := md5.New()
2222
if _, err := io.Copy(hash, file); err != nil {
@@ -45,7 +45,7 @@ func writeMD5Hash(requirementsFile string, requirementsHashFile string) error {
4545
return err
4646
}
4747

48-
return os.WriteFile(requirementsHashFile, []byte(newFileMD5Hash), 0644)
48+
return os.WriteFile(requirementsHashFile, []byte(newFileMD5Hash), 0o644)
4949
}
5050

5151
type AnsibleApp struct {
@@ -91,7 +91,6 @@ func (t *AnsibleApp) getRepoPath() string {
9191
}
9292

9393
func (t *AnsibleApp) installGalaxyRequirementsFile(requirementsType GalaxyRequirementsType, requirementsFilePath string) error {
94-
9594
requirementsHashFilePath := fmt.Sprintf("%s_%s.md5", requirementsFilePath, requirementsType)
9695

9796
if _, err := os.Stat(requirementsFilePath); err != nil {

0 commit comments

Comments
 (0)