in internal/processor/processor.go [337:351]
func processRoleDefinition(res *Result, unmar unmarshaler) error {
rd := new(armauthorization.RoleDefinition)
if err := unmar.unmarshal(rd); err != nil {
return fmt.Errorf("processRoleDefinition: error unmarshalling: %w", err)
}
if rd.Properties == nil || rd.Properties.RoleName == nil || *rd.Properties.RoleName == "" {
return fmt.Errorf("processRoleDefinition: role definition role name is empty or not present")
}
if _, exists := res.PolicySetDefinitions[*rd.Properties.RoleName]; exists {
return fmt.Errorf("processRoleDefinition: role definition with role name `%s` already exists", *rd.Properties.RoleName)
}
// Use roleName here not the name, which is a GUID
res.RoleDefinitions[*rd.Properties.RoleName] = rd
return nil
}