SonarQube 架構上可分資料庫、網頁伺服器與分析器三大塊,資料庫支援幾種常見的,除了 Oracle 其他都是透過 JDBC,所以原則上大同小異;網頁伺服器就是個 Java 程式,所以也沒什麼難度;比較特別的是在分析器這塊,官網上列出五種:
- SonarQube Runner
- Maven
- SonarQube Ant Task
- Gradle
- CI Engine
這些分析器的對象都是軟體專案,所以要餵原始碼進去;也要給一個資料庫放分析結果,用來與下一次分析做比較。稍微讓我卡住一下的是:預設分析器(SonarQube Runner)與網頁伺服器都有資料庫設定,我只先注意到後者,單獨改設到 PostgreSQL 沒效,反而會讓網頁伺服器開不起來。後來想想,應該是先改分析器的資料連線,拿一個範例專案餵,讓分析器丟資料到 PostgreSQL,然後網頁伺服器也連同一個位置才對。
沒有留言:
張貼留言