Ansible を使用して SonarQube サーバーのインストールを自動化しました。この手順の一環として、Ansible は URLsonar/api/server/index
をポーリングして、サーバーが稼働しているかどうかを確認します。HTTP 200 が返され、サーバーのステータスが次のようになるとすぐにSETUP
...
<server>
<id>20170131094026</id>
<version>5.6.2</version>
<status>SETUP</status>
</server>
POST
...スクリプトは、にを送信して返されるsonar/api/server/setup
のを待つことにより、データベースのアップグレードをトリガーします。MIGRATION_SUCCEEDED
これは、SonarQube をバージョン 5.6.2 から 5.6.5 にアップグレードしようとするまではうまく機能していました。何らかの理由で、(GUI はまだメンテナンス中であることを明確に示しているにもかかわらず)sonar/api/server/index
常にステータスを返し、toはデータベースが最新で移行の必要がないことを示します ( )。UP
POST
sonar/api/server/setup
NO_MIGRATION
ただし、サーバーはまだメンテナンス モードであり、nexus.log は同じ行を繰り返し続けます。
09:41:05 INFO ce[o.s.c.a.WebServerWatcherImpl] Still waiting for WebServer...
09:41:39 INFO ce[o.s.c.a.WebServerWatcherImpl] Still waiting for WebServer...
09:43:13 INFO ce[o.s.c.a.WebServerWatcherImpl] Still waiting for WebServer...
09:47:28 INFO ce[o.s.c.a.WebServerWatcherImpl] Still waiting for WebServer...
手動でsonar/setup
[更新] ボタンに移動してクリックすると、データベースの移行が開始されます... API に変更はありますか? 間違った REST エンドポイントを呼び出していますか?