fix(plugins/followup): fallback to owner if collaborators are not accessible (relates #859)
This commit is contained in:
@@ -77,6 +77,8 @@ The `plugin_followup_indepth` option collects additional stats to differentiate
|
|||||||
|
|
||||||
It helps knowing whether repositories are also maintained by other users and give an overall health status of repositories.
|
It helps knowing whether repositories are also maintained by other users and give an overall health status of repositories.
|
||||||
|
|
||||||
|
> ⚠️ This mode will try to list users with push access to know who are the maintainers in order to place issues in the correct category, which requires a `repo` scope. If not available, it will consider that only the owner is a maintainer.
|
||||||
|
|
||||||
## ℹ️ Examples workflows
|
## ℹ️ Examples workflows
|
||||||
|
|
||||||
<!--examples-->
|
<!--examples-->
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ export default async function({login, data, computed, imports, q, graphql, queri
|
|||||||
console.debug(`metrics/compute/${login}/plugins > followup > processing ${owner}/${repo}`)
|
console.debug(`metrics/compute/${login}/plugins > followup > processing ${owner}/${repo}`)
|
||||||
followup.indepth.repositories[`${owner}/${repo}`] = {stats:{}}
|
followup.indepth.repositories[`${owner}/${repo}`] = {stats:{}}
|
||||||
//Fetch users with push access
|
//Fetch users with push access
|
||||||
let {repository:{collaborators:{nodes:collaborators}}} = await graphql(queries.followup["repository.collaborators"]({repo, owner}))
|
let {repository:{collaborators:{nodes:collaborators}}} = await graphql(queries.followup["repository.collaborators"]({repo, owner})).catch(() => ({repository:{collaborators:{nodes:[{login:owner}]}}}))
|
||||||
console.debug(`metrics/compute/${login}/plugins > followup > found ${collaborators.length} collaborators`)
|
console.debug(`metrics/compute/${login}/plugins > followup > found ${collaborators.length} collaborators`)
|
||||||
followup.indepth.repositories[`${owner}/${repo}`].collaborators = collaborators.map(({login}) => login)
|
followup.indepth.repositories[`${owner}/${repo}`].collaborators = collaborators.map(({login}) => login)
|
||||||
//Fetch issues and pull requests created by collaborators
|
//Fetch issues and pull requests created by collaborators
|
||||||
|
|||||||
Reference in New Issue
Block a user