Default Assignee
This tutorial explains how to specify default assignee of issues via some example setups.
Auto-assign Issues to Project Owners
Define a groovy script to return project owners
Content of the script is as below:
import io.onedev.server.model.*
def project = Project.get()
def owners = project.userAuthorizations.findAll {it->it.role.owner}*.user.name
owners += project.groupAuthorizations.findAll {it->it.role.owner}*.group.members.flatten()*.name
return owners.unique()Modify custom issue field Assignee to use groovy script defined above as default value:
Auto-assign Issues to Module Leader
Add custom issue field Module from issue setting of administration menu:
Define a groovy script to return corresponding module leader based on module name
Script content is as below:
import io.onedev.server.util.EditContext
def moduleLeaders = ["Front End":"tommy", "Back End":"jerry"]
def editContext = EditContext.get()
def defaultAssignee
if (editContext != null)
defaultAssignee = moduleLeaders[editContext.getInputValue("Module")]
if (defaultAssignee != null)
return [defaultAssignee]
else
return []Modify custom issue field Assignee to use groovy script defined above as default value: