in packages/repocop/src/evaluation/repository.ts [443:472]
export function evaluateRepositories(
repositories: Repository[],
branches: github_repository_branches[],
owners: view_repo_ownership[],
repoLanguages: github_languages[],
dependabotVulnerabilities: RepocopVulnerability[],
productionWorkflowUsages: guardian_github_actions_usage[],
): Promise<EvaluationResult[]> {
const evaluatedRepos = repositories.map((r) => {
const vulnsForRepo = dependabotVulnerabilities.filter(
(v) => v.full_name === r.full_name,
);
const teamsForRepo = owners.filter((o) => o.full_repo_name === r.full_name);
const branchesForRepo = branches.filter((b) => b.repository_id === r.id);
const workflowsForRepo = productionWorkflowUsages.filter(
(repo) => repo.full_name === r.full_name,
);
return evaluateOneRepo(
vulnsForRepo,
r,
branchesForRepo,
teamsForRepo,
repoLanguages,
workflowsForRepo,
);
});
return Promise.all(evaluatedRepos);
}