mirror of https://github.com/go-gitea/gitea.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
749 B
28 lines
749 B
// Copyright 2019 The Gitea Authors. All rights reserved. |
|
// SPDX-License-Identifier: MIT |
|
|
|
package repository |
|
|
|
import ( |
|
"context" |
|
"fmt" |
|
|
|
git_model "code.gitea.io/gitea/models/git" |
|
repo_model "code.gitea.io/gitea/models/repo" |
|
"code.gitea.io/gitea/modules/gitrepo" |
|
) |
|
|
|
// UpdateRepoSize updates the repository size, calculating it using getDirectorySize |
|
func UpdateRepoSize(ctx context.Context, repo *repo_model.Repository) error { |
|
size, err := gitrepo.CalcRepositorySize(repo) |
|
if err != nil { |
|
return fmt.Errorf("updateSize: %w", err) |
|
} |
|
|
|
lfsSize, err := git_model.GetRepoLFSSize(ctx, repo.ID) |
|
if err != nil { |
|
return fmt.Errorf("updateSize: GetLFSMetaObjects: %w", err) |
|
} |
|
|
|
return repo_model.UpdateRepoSize(ctx, repo.ID, size, lfsSize) |
|
}
|
|
|