diff --git a/cmd/repo-health-checker/main.go b/cmd/repo-health-checker/main.go index 160b587..65b90dd 100644 --- a/cmd/repo-health-checker/main.go +++ b/cmd/repo-health-checker/main.go @@ -44,6 +44,7 @@ func main() { checkRelease := flag.Bool("checkRelease", true, "trigger release check") rootDir := flag.String("root", "", "") repo := flag.String("repo", "", "") + size := flag.Float64("reposize", 2, "size of the repo") localList := flag.String("localList", "", "") droneBranch := flag.String("droneBranch", "", "") checkFileNameList := flag.String("checkFileNameList", "", "Comma-separated list of files to check.") @@ -57,7 +58,7 @@ func main() { } setupSlog() var err error - err = healthcheck.RepoSize() + err = healthcheck.RepoSize(*size) if err != nil { fmt.Printf("### Repo Size Check Failed:\n%s\n", err.Error()) } diff --git a/pkg/healthcheck/reposize.go b/pkg/healthcheck/reposize.go index dd17d06..939adb8 100644 --- a/pkg/healthcheck/reposize.go +++ b/pkg/healthcheck/reposize.go @@ -10,7 +10,7 @@ import ( // RepoSize checks the size of the repository to determine if it is oversized. // It executes the 'git count-objects -v' command to obtain the size information, -func RepoSize() error { +func RepoSize(confSize float64) error { // TODO: reimplement here when go-git is available // https://github.com/go-git/go-git/blob/master/COMPATIBILITY.md cmd := exec.Command("git", "count-objects", "-v") @@ -33,8 +33,8 @@ func RepoSize() error { sum += size } } - if sum > 2048 { - return fmt.Errorf("Repository larger than 2MB. Please clean up or contact the teaching team.") + if sum > int(confSize*1024) { + return fmt.Errorf("Repository larger than %.1f MiB. Please clean up or contact the teaching team.", confSize) } return nil }