Qiitaの記事をもとに、Azure DevOps(ADO)のPull RequestをSonarQube Server(SQS)で自動解析する流れをまとめます。目的は、PR作成時にSASTを実行し、解析結果をPRへ反映することです。
SonarQubeとAzure DevOpsの接続
連携にはADOのURLとPersonal Access Token(PAT)が必要です。SonarQubeでADOのリポジトリをもとにプロジェクトを作成し、SonarQube側でADO連携を登録します。



Azure DevOpsの設定
ADOにSonarQubeアプリをインストールし、SonarQubeへのService Connectionを作成します。その接続を使ってPipelineを設定します。記事の例では、PRと master ブランチを対象にし、SonarQubeタスクで解析します。





| |

SonarQube には作成したService Connection名、cliProjectKey にはSQSプロジェクトのキーを指定します。実際の接続名とプロジェクトキーに置き換えてください。
Branch PolicyとPRの確認
ADOのBranch Policyで対象Pipelineを必須チェックとして設定します。サンプルコードを変更してPRを作成し、Pipelineの解析結果がSonarQubeに送信されること、Quality GateとIssueの詳細がPRに表示されることを確認します。





これにより、PRごとの自動解析と結果確認を行えるようになります。