Skip to content

Commit fc7d3f7

Browse files
GiteaBotJakobDevKN4CK3R
authored
Another round of db.DefaultContext refactor (#27103) (#27262)
Backport #27103 by @JakobDev Part of #27065 Co-authored-by: JakobDev <[email protected]> Co-authored-by: KN4CK3R <[email protected]>
1 parent 597b04f commit fc7d3f7

File tree

109 files changed

+353
-306
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

109 files changed

+353
-306
lines changed

cmd/admin.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -389,7 +389,7 @@ func runRepoSyncReleases(_ *cli.Context) error {
389389
}
390390
log.Trace(" currentNumReleases is %d, running SyncReleasesWithTags", oldnum)
391391

392-
if err = repo_module.SyncReleasesWithTags(repo, gitRepo); err != nil {
392+
if err = repo_module.SyncReleasesWithTags(ctx, repo, gitRepo); err != nil {
393393
log.Warn(" SyncReleasesWithTags: %v", err)
394394
gitRepo.Close()
395395
continue
@@ -438,7 +438,7 @@ func runRegenerateKeys(_ *cli.Context) error {
438438
if err := initDB(ctx); err != nil {
439439
return err
440440
}
441-
return asymkey_model.RewriteAllPublicKeys()
441+
return asymkey_model.RewriteAllPublicKeys(ctx)
442442
}
443443

444444
func parseOAuth2Config(c *cli.Context) *oauth2.Source {

cmd/migrate_storage_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"strings"
1010
"testing"
1111

12+
"code.gitea.io/gitea/models/db"
1213
"code.gitea.io/gitea/models/packages"
1314
"code.gitea.io/gitea/models/unittest"
1415
user_model "code.gitea.io/gitea/models/user"
@@ -30,7 +31,7 @@ func TestMigratePackages(t *testing.T) {
3031
assert.NoError(t, err)
3132
defer buf.Close()
3233

33-
v, f, err := packages_service.CreatePackageAndAddFile(&packages_service.PackageCreationInfo{
34+
v, f, err := packages_service.CreatePackageAndAddFile(db.DefaultContext, &packages_service.PackageCreationInfo{
3435
PackageInfo: packages_service.PackageInfo{
3536
Owner: creator,
3637
PackageType: packages.TypeGeneric,

models/activities/user_heatmap.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
package activities
55

66
import (
7+
"context"
8+
79
"code.gitea.io/gitea/models/db"
810
"code.gitea.io/gitea/models/organization"
911
user_model "code.gitea.io/gitea/models/user"
@@ -18,16 +20,16 @@ type UserHeatmapData struct {
1820
}
1921

2022
// GetUserHeatmapDataByUser returns an array of UserHeatmapData
21-
func GetUserHeatmapDataByUser(user, doer *user_model.User) ([]*UserHeatmapData, error) {
22-
return getUserHeatmapData(user, nil, doer)
23+
func GetUserHeatmapDataByUser(ctx context.Context, user, doer *user_model.User) ([]*UserHeatmapData, error) {
24+
return getUserHeatmapData(ctx, user, nil, doer)
2325
}
2426

2527
// GetUserHeatmapDataByUserTeam returns an array of UserHeatmapData
26-
func GetUserHeatmapDataByUserTeam(user *user_model.User, team *organization.Team, doer *user_model.User) ([]*UserHeatmapData, error) {
27-
return getUserHeatmapData(user, team, doer)
28+
func GetUserHeatmapDataByUserTeam(ctx context.Context, user *user_model.User, team *organization.Team, doer *user_model.User) ([]*UserHeatmapData, error) {
29+
return getUserHeatmapData(ctx, user, team, doer)
2830
}
2931

30-
func getUserHeatmapData(user *user_model.User, team *organization.Team, doer *user_model.User) ([]*UserHeatmapData, error) {
32+
func getUserHeatmapData(ctx context.Context, user *user_model.User, team *organization.Team, doer *user_model.User) ([]*UserHeatmapData, error) {
3133
hdata := make([]*UserHeatmapData, 0)
3234

3335
if !ActivityReadable(user, doer) {
@@ -60,7 +62,7 @@ func getUserHeatmapData(user *user_model.User, team *organization.Team, doer *us
6062
return nil, err
6163
}
6264

63-
return hdata, db.GetEngine(db.DefaultContext).
65+
return hdata, db.GetEngine(ctx).
6466
Select(groupBy+" AS timestamp, count(user_id) as contributions").
6567
Table("action").
6668
Where(cond).

models/activities/user_heatmap_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ func TestGetUserHeatmapDataByUser(t *testing.T) {
8383
assert.NoError(t, err)
8484

8585
// Get the heatmap and compare
86-
heatmap, err := activities_model.GetUserHeatmapDataByUser(user, doer)
86+
heatmap, err := activities_model.GetUserHeatmapDataByUser(db.DefaultContext, user, doer)
8787
var contributions int
8888
for _, hm := range heatmap {
8989
contributions += int(hm.Contributions)

models/asymkey/gpg_key.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -88,14 +88,14 @@ func ListGPGKeys(ctx context.Context, uid int64, listOptions db.ListOptions) ([]
8888
}
8989

9090
// CountUserGPGKeys return number of gpg keys a user own
91-
func CountUserGPGKeys(userID int64) (int64, error) {
92-
return db.GetEngine(db.DefaultContext).Where("owner_id=? AND primary_key_id=''", userID).Count(&GPGKey{})
91+
func CountUserGPGKeys(ctx context.Context, userID int64) (int64, error) {
92+
return db.GetEngine(ctx).Where("owner_id=? AND primary_key_id=''", userID).Count(&GPGKey{})
9393
}
9494

9595
// GetGPGKeyByID returns public key by given ID.
96-
func GetGPGKeyByID(keyID int64) (*GPGKey, error) {
96+
func GetGPGKeyByID(ctx context.Context, keyID int64) (*GPGKey, error) {
9797
key := new(GPGKey)
98-
has, err := db.GetEngine(db.DefaultContext).ID(keyID).Get(key)
98+
has, err := db.GetEngine(ctx).ID(keyID).Get(key)
9999
if err != nil {
100100
return nil, err
101101
} else if !has {
@@ -105,9 +105,9 @@ func GetGPGKeyByID(keyID int64) (*GPGKey, error) {
105105
}
106106

107107
// GetGPGKeysByKeyID returns public key by given ID.
108-
func GetGPGKeysByKeyID(keyID string) ([]*GPGKey, error) {
108+
func GetGPGKeysByKeyID(ctx context.Context, keyID string) ([]*GPGKey, error) {
109109
keys := make([]*GPGKey, 0, 1)
110-
return keys, db.GetEngine(db.DefaultContext).Where("key_id=?", keyID).Find(&keys)
110+
return keys, db.GetEngine(ctx).Where("key_id=?", keyID).Find(&keys)
111111
}
112112

113113
// GPGKeyToEntity retrieve the imported key and the traducted entity
@@ -224,8 +224,8 @@ func deleteGPGKey(ctx context.Context, keyID string) (int64, error) {
224224
}
225225

226226
// DeleteGPGKey deletes GPG key information in database.
227-
func DeleteGPGKey(doer *user_model.User, id int64) (err error) {
228-
key, err := GetGPGKeyByID(id)
227+
func DeleteGPGKey(ctx context.Context, doer *user_model.User, id int64) (err error) {
228+
key, err := GetGPGKeyByID(ctx, id)
229229
if err != nil {
230230
if IsErrGPGKeyNotExist(err) {
231231
return nil
@@ -238,7 +238,7 @@ func DeleteGPGKey(doer *user_model.User, id int64) (err error) {
238238
return ErrGPGKeyAccessDenied{doer.ID, key.ID}
239239
}
240240

241-
ctx, committer, err := db.TxContext(db.DefaultContext)
241+
ctx, committer, err := db.TxContext(ctx)
242242
if err != nil {
243243
return err
244244
}

models/asymkey/gpg_key_add.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,13 @@ func addGPGSubKey(ctx context.Context, key *GPGKey) (err error) {
6666
}
6767

6868
// AddGPGKey adds new public key to database.
69-
func AddGPGKey(ownerID int64, content, token, signature string) ([]*GPGKey, error) {
69+
func AddGPGKey(ctx context.Context, ownerID int64, content, token, signature string) ([]*GPGKey, error) {
7070
ekeys, err := checkArmoredGPGKeyString(content)
7171
if err != nil {
7272
return nil, err
7373
}
7474

75-
ctx, committer, err := db.TxContext(db.DefaultContext)
75+
ctx, committer, err := db.TxContext(ctx)
7676
if err != nil {
7777
return nil, err
7878
}

models/asymkey/gpg_key_commit_verification.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -392,7 +392,7 @@ func hashAndVerifyForKeyID(ctx context.Context, sig *packet.Signature, payload s
392392
if keyID == "" {
393393
return nil
394394
}
395-
keys, err := GetGPGKeysByKeyID(keyID)
395+
keys, err := GetGPGKeysByKeyID(ctx, keyID)
396396
if err != nil {
397397
log.Error("GetGPGKeysByKeyID: %v", err)
398398
return &CommitVerification{
@@ -407,7 +407,7 @@ func hashAndVerifyForKeyID(ctx context.Context, sig *packet.Signature, payload s
407407
for _, key := range keys {
408408
var primaryKeys []*GPGKey
409409
if key.PrimaryKeyID != "" {
410-
primaryKeys, err = GetGPGKeysByKeyID(key.PrimaryKeyID)
410+
primaryKeys, err = GetGPGKeysByKeyID(ctx, key.PrimaryKeyID)
411411
if err != nil {
412412
log.Error("GetGPGKeysByKeyID: %v", err)
413413
return &CommitVerification{

models/asymkey/gpg_key_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"testing"
88
"time"
99

10+
"code.gitea.io/gitea/models/db"
1011
"code.gitea.io/gitea/models/unittest"
1112
user_model "code.gitea.io/gitea/models/user"
1213
"code.gitea.io/gitea/modules/timeutil"
@@ -228,7 +229,7 @@ Q0KHb+QcycSgbDx0ZAvdIacuKvBBcbxrsmFUI4LR+oIup0G9gUc0roPvr014jYQL
228229
=zHo9
229230
-----END PGP PUBLIC KEY BLOCK-----`
230231

231-
keys, err := AddGPGKey(1, testEmailWithUpperCaseLetters, "", "")
232+
keys, err := AddGPGKey(db.DefaultContext, 1, testEmailWithUpperCaseLetters, "", "")
232233
assert.NoError(t, err)
233234
if assert.NotEmpty(t, keys) {
234235
key := keys[0]

models/asymkey/ssh_key_authorized_keys.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ func appendAuthorizedKeysToFile(keys ...*PublicKey) error {
117117
// RewriteAllPublicKeys removes any authorized key and rewrite all keys from database again.
118118
// Note: db.GetEngine(db.DefaultContext).Iterate does not get latest data after insert/delete, so we have to call this function
119119
// outside any session scope independently.
120-
func RewriteAllPublicKeys() error {
120+
func RewriteAllPublicKeys(ctx context.Context) error {
121121
// Don't rewrite key if internal server
122122
if setting.SSH.StartBuiltinServer || !setting.SSH.CreateAuthorizedKeysFile {
123123
return nil
@@ -165,7 +165,7 @@ func RewriteAllPublicKeys() error {
165165
}
166166
}
167167

168-
if err := RegeneratePublicKeys(db.DefaultContext, t); err != nil {
168+
if err := RegeneratePublicKeys(ctx, t); err != nil {
169169
return err
170170
}
171171

models/issues/issue_index.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,16 @@
33

44
package issues
55

6-
import "code.gitea.io/gitea/models/db"
6+
import (
7+
"context"
8+
9+
"code.gitea.io/gitea/models/db"
10+
)
711

812
// RecalculateIssueIndexForRepo create issue_index for repo if not exist and
913
// update it based on highest index of existing issues assigned to a repo
10-
func RecalculateIssueIndexForRepo(repoID int64) error {
11-
ctx, committer, err := db.TxContext(db.DefaultContext)
14+
func RecalculateIssueIndexForRepo(ctx context.Context, repoID int64) error {
15+
ctx, committer, err := db.TxContext(ctx)
1216
if err != nil {
1317
return err
1418
}

0 commit comments

Comments
 (0)