Separate validation commands from tree checks
This commit is contained in:
@@ -71,7 +71,7 @@ func (request Request) ReadCandidateTree(ctx context.Context) (*CandidateTree, e
|
||||
}
|
||||
|
||||
// Run executes shared validation for the captured candidate.
|
||||
func Run(ctx context.Context, request Request) (result error) {
|
||||
func Run(ctx context.Context, request Request) error {
|
||||
if request.Settings.FileSize != nil && request.Settings.FileSize.LimitBytes != nil && *request.Settings.FileSize.LimitBytes < 0 {
|
||||
return &Failure{
|
||||
Check: FileSize,
|
||||
@@ -89,6 +89,13 @@ func Run(ctx context.Context, request Request) (result error) {
|
||||
}
|
||||
}
|
||||
}
|
||||
if err := runGoChecks(ctx, request); err != nil {
|
||||
return err
|
||||
}
|
||||
return runTreeChecks(ctx, request)
|
||||
}
|
||||
|
||||
func runGoChecks(ctx context.Context, request Request) error {
|
||||
goDirectory := request.ModuleDir
|
||||
if goDirectory == "" {
|
||||
goDirectory = request.RepositoryDir
|
||||
@@ -134,6 +141,10 @@ func Run(ctx context.Context, request Request) (result error) {
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func runTreeChecks(ctx context.Context, request Request) (result error) {
|
||||
needsSharedSelection := len(request.Settings.SharedFiles) != 0
|
||||
if request.Settings.GoFormat || request.Settings.ModuleDistribution.WorkspaceFiles || request.Settings.ModuleDistribution.LocalReplacements || request.Settings.FileSize != nil || request.Settings.Markdown != nil || needsSharedSelection || len(request.Settings.ForbiddenFiles) != 0 {
|
||||
tree, err := request.ReadCandidateTree(ctx)
|
||||
|
||||
Reference in New Issue
Block a user