1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-22 18:28:37 +00:00

Decouple context from repository related structs (#33823)

Calls that required context implicitly are made to pass it as argument
This commit is contained in:
TheFox0x7
2025-03-08 22:12:46 +01:00
committed by GitHub
parent 4ed71eb754
commit 4c4c56c7cd
11 changed files with 118 additions and 122 deletions

View File

@@ -78,7 +78,7 @@ func RebuildIndex(ctx context.Context, doer, owner *user_model.User) error {
"Rebuild Cargo Index",
func(t *files_service.TemporaryUploadRepository) error {
// Remove all existing content but the Cargo config
files, err := t.LsFiles()
files, err := t.LsFiles(ctx)
if err != nil {
return err
}
@@ -89,7 +89,7 @@ func RebuildIndex(ctx context.Context, doer, owner *user_model.User) error {
break
}
}
if err := t.RemoveFilesFromIndex(files...); err != nil {
if err := t.RemoveFilesFromIndex(ctx, files...); err != nil {
return err
}
@@ -204,7 +204,7 @@ func addOrUpdatePackageIndex(ctx context.Context, t *files_service.TemporaryUplo
return nil
}
return writeObjectToIndex(t, BuildPackagePath(p.LowerName), b)
return writeObjectToIndex(ctx, t, BuildPackagePath(p.LowerName), b)
}
func getOrCreateIndexRepository(ctx context.Context, doer, owner *user_model.User) (*repo_model.Repository, error) {
@@ -252,29 +252,29 @@ func createOrUpdateConfigFile(ctx context.Context, repo *repo_model.Repository,
return err
}
return writeObjectToIndex(t, ConfigFileName, &b)
return writeObjectToIndex(ctx, t, ConfigFileName, &b)
},
)
}
// This is a shorter version of CreateOrUpdateRepoFile which allows to perform multiple actions on a git repository
func alterRepositoryContent(ctx context.Context, doer *user_model.User, repo *repo_model.Repository, commitMessage string, fn func(*files_service.TemporaryUploadRepository) error) error {
t, err := files_service.NewTemporaryUploadRepository(ctx, repo)
t, err := files_service.NewTemporaryUploadRepository(repo)
if err != nil {
return err
}
defer t.Close()
var lastCommitID string
if err := t.Clone(repo.DefaultBranch, true); err != nil {
if err := t.Clone(ctx, repo.DefaultBranch, true); err != nil {
if !git.IsErrBranchNotExist(err) || !repo.IsEmpty {
return err
}
if err := t.Init(repo.ObjectFormatName); err != nil {
if err := t.Init(ctx, repo.ObjectFormatName); err != nil {
return err
}
} else {
if err := t.SetDefaultIndex(); err != nil {
if err := t.SetDefaultIndex(ctx); err != nil {
return err
}
@@ -290,7 +290,7 @@ func alterRepositoryContent(ctx context.Context, doer *user_model.User, repo *re
return err
}
treeHash, err := t.WriteTree()
treeHash, err := t.WriteTree(ctx)
if err != nil {
return err
}
@@ -301,19 +301,19 @@ func alterRepositoryContent(ctx context.Context, doer *user_model.User, repo *re
CommitMessage: commitMessage,
DoerUser: doer,
}
commitHash, err := t.CommitTree(commitOpts)
commitHash, err := t.CommitTree(ctx, commitOpts)
if err != nil {
return err
}
return t.Push(doer, commitHash, repo.DefaultBranch)
return t.Push(ctx, doer, commitHash, repo.DefaultBranch)
}
func writeObjectToIndex(t *files_service.TemporaryUploadRepository, path string, r io.Reader) error {
hash, err := t.HashObject(r)
func writeObjectToIndex(ctx context.Context, t *files_service.TemporaryUploadRepository, path string, r io.Reader) error {
hash, err := t.HashObject(ctx, r)
if err != nil {
return err
}
return t.AddObjectToIndex("100644", hash, path)
return t.AddObjectToIndex(ctx, "100644", hash, path)
}