diff --git a/models/auth/secret.go b/models/auth/secret.go index fea4e4b3b5..5bf950a50d 100644 --- a/models/auth/secret.go +++ b/models/auth/secret.go @@ -29,17 +29,18 @@ func (err ErrSecretDataInvalid) Error() string { var nameRE = regexp.MustCompile("[^a-zA-Z0-9-_.]+") +// Secret represents a secret type Secret struct { - ID int64 - UserID int64 `xorm:"index"` - RepoID int64 `xorm:"index"` - Name string - Data string - PullRequest bool + ID int64 + UserID int64 `xorm:"index"` + RepoID int64 `xorm:"index"` + Name string + Data string + PullRequest bool CreatedUnix timeutil.TimeStamp `xorm:"created"` } - // Validate validates the required fields and formats. +// Validate validates the required fields and formats. func (s *Secret) Validate() error { switch { case len(s.Name) == 0: diff --git a/models/db/search.go b/models/db/search.go index f4bbd9d3fa..a5bd427ee6 100644 --- a/models/db/search.go +++ b/models/db/search.go @@ -41,7 +41,7 @@ func FindObjects[Object any](ctx context.Context, cond builder.Cond, opts *ListO if opts.Page < 1 { opts.Page = 1 } - sess.Limit(opts.PageSize, opts.PageSize * (opts.Page - 1)) + sess.Limit(opts.PageSize, opts.PageSize*(opts.Page-1)) } return sess.Find(objects) } diff --git a/models/migrations/v227.go b/models/migrations/v227.go new file mode 100644 index 0000000000..d4455c0c4a --- /dev/null +++ b/models/migrations/v227.go @@ -0,0 +1,25 @@ +// Copyright 2022 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package migrations + +import ( + "code.gitea.io/gitea/modules/timeutil" + + "xorm.io/xorm" +) + +func createSecretsTable(x *xorm.Engine) error { + type Secret struct { + ID int64 + UserID int64 `xorm:"index"` + RepoID int64 `xorm:"index"` + Name string + Data string + PullRequest bool + CreatedUnix timeutil.TimeStamp `xorm:"created"` + } + + return x.Sync(new(Secret)) +} diff --git a/modules/generate/generate.go b/modules/generate/generate.go index c28b99d552..6b788df0a1 100644 --- a/modules/generate/generate.go +++ b/modules/generate/generate.go @@ -9,7 +9,6 @@ import ( "crypto/rand" "encoding/base64" "io" - "math/big" "time" "code.gitea.io/gitea/modules/util" @@ -79,12 +78,3 @@ func NewMasterKey() ([]byte, error) { return secretBytes, nil } - -func randomInt(max *big.Int) (int, error) { - rand, err := rand.Int(rand.Reader, max) - if err != nil { - return 0, err - } - - return int(rand.Int64()), nil -} diff --git a/modules/setting/setting.go b/modules/setting/setting.go index 8b472b42b4..3e4ec0e488 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -215,8 +215,8 @@ var ( HMACKey string `ini:"HMAC_KEY"` Allways bool }{} - MasterKeyProvider string - MasterKey []byte + MasterKeyProvider string + MasterKey []byte // UI settings UI = struct { diff --git a/services/secrets/encryption_aes.go b/services/secrets/encryption_aes.go index d34636c7aa..7a3141de77 100644 --- a/services/secrets/encryption_aes.go +++ b/services/secrets/encryption_aes.go @@ -13,8 +13,7 @@ import ( "io" ) -type aesEncryptionProvider struct { -} +type aesEncryptionProvider struct{} func NewAesEncryptionProvider() EncryptionProvider { return &aesEncryptionProvider{} diff --git a/services/secrets/masterkey_nop.go b/services/secrets/masterkey_nop.go index 83d85ab276..db0d11471a 100644 --- a/services/secrets/masterkey_nop.go +++ b/services/secrets/masterkey_nop.go @@ -4,8 +4,7 @@ package secrets -type nopMasterKeyProvider struct { -} +type nopMasterKeyProvider struct{} // NewNopMasterKeyProvider returns master key provider that holds no master key and is always unsealed func NewNopMasterKeyProvider() MasterKeyProvider { diff --git a/services/secrets/secrets.go b/services/secrets/secrets.go index 4f113958d4..4d32a82b0d 100644 --- a/services/secrets/secrets.go +++ b/services/secrets/secrets.go @@ -103,16 +103,16 @@ func DecryptString(enc string) (string, error) { } func InsertRepoSecret(ctx context.Context, repoID int64, key, data string, pullRequest bool) error { - v, err := EncryptString( data) + v, err := EncryptString(data) if err != nil { return err } -return db.Insert(ctx, &auth_model.Secret{ - RepoID: repoID, - Name: key, - Data: v, - PullRequest: pullRequest, -}) + return db.Insert(ctx, &auth_model.Secret{ + RepoID: repoID, + Name: key, + Data: v, + PullRequest: pullRequest, + }) } func InsertOrgSecret(ctx context.Context, userID int64, key, data string, pullRequest bool) error { @@ -120,26 +120,25 @@ func InsertOrgSecret(ctx context.Context, userID int64, key, data string, pullRe if err != nil { return err } -return db.Insert(ctx, &auth_model.Secret{ - UserID: userID, - Name: key, - Data: v, - PullRequest: pullRequest, -}) + return db.Insert(ctx, &auth_model.Secret{ + UserID: userID, + Name: key, + Data: v, + PullRequest: pullRequest, + }) } func DeleteSecretByID(ctx context.Context, id int64) error { -_, err := db.DeleteByBean(ctx, &auth_model.Secret{ID: id}) -return err + _, err := db.DeleteByBean(ctx, &auth_model.Secret{ID: id}) + return err } - -func FindRepoSecrets(ctx context.Context,repoID int64) ([]*auth_model.Secret, error) { +func FindRepoSecrets(ctx context.Context, repoID int64) ([]*auth_model.Secret, error) { var res []*auth_model.Secret - return res, db.FindObjects(ctx, builder.Eq{"repo_id": repoID}, nil,&res) + return res, db.FindObjects(ctx, builder.Eq{"repo_id": repoID}, nil, &res) } func FindUserSecrets(ctx context.Context, userID int64) ([]*auth_model.Secret, error) { var res []*auth_model.Secret - return res, db.FindObjects(ctx, builder.Eq{"user_id": userID}, nil,&res) + return res, db.FindObjects(ctx, builder.Eq{"user_id": userID}, nil, &res) }