Assignee is not be correlated automatically if users are not activated before the creation of project

  • versions used

    • SonarQube: v7.9.5.38598
    • SCM Provider: GitHub
    • Github Enterprise: 2.20.12
    • SonarScanner in Jenkins: 4.2.0.1873
    • Plugin:
      • GitHub Authentication for SonarQube 1.5(build 870)
      • Git 1.1(build 11)
    • Login: Using GitHub Authentication (SCM accounts: github ID)
  • error observed (wrap logs/code around triple quote ``` for proper formatting)

    • Once the project is created, it is useless to activate the user afterwards.
      The users are not automatically mapped to the assignee(issues are at ‘not assigned’ status forever)
      Only activated users before the creation of projects can be mapped automatically to assignee.
      I think users who are activated after the creation of projects can be mapped to assignee automatically
  • steps to reproduce

    1. set up a build job in jenkins

      • use PR request builder to trigger build when github PR is created
      • add ‘Execute SonarScanner’ to ‘Post Build’ Action
    2. Integrate the SonarQube with GitHub

    3. Create a PR in github repo and set an assignee

    4. Make sure that the assignee is not activated in the SonarQube

    5. Execute the build job in jenkins and check the project is created successfully in sonarqube

    6. Check the assignee of issues in SonarQube

      • I think it is okay that all issues are at ‘not assigned’ status because the user who should be mapped to assignee is not activated yet in SonarQube
    7. Activate the user in SonarQube

      • first log-in to SonarQube via GitHub authentication
    8. Build the jenkins job again to analyze the project and check the result in SonarQube

      • I expected that i can check the assignee now since i activated the user, but it’s still ‘not assigned’.

Is there any way to solve this problem? or should I modify configuration in SonarQube?

Hello

Automatic issue assignment is triggered only once when an issue is created – as we document here. That is why what you see is expected - to have an issue assigned a user has to exist in SonarQube when a new issue is created. If a user has not yet logged into SonarQube what might help is pre-provisioning his account using api/users/create Web API.

Best,
Michal

Thank you for your quick feedback.
Is it possible to use the Web API(api/users/create) even when using github provider?
Furthermore, i wonder is there any way to create multiple users at once from github.

Hello

Not yet, starting from SonarQube 8.7 you will be able to change authentication provider of a user via Web API. So it will allow provision also GitHub users (SONAR-13930)

I hope that helps
Michal