Bitbucket Cloud サービスのトラブルシューティング
There are several things that can go wrong when configuring your Bitbucket Cloud service to send commit data to a service such as Jenkins, your own server via a POST service, or any of our other services. We've collected a few common cases here for testing and verifying what may be going on. If you come across any other things to be aware of or suggestions on improving this doc, comment below!
データ受信をトリガーとするサービスについて
サービス ブローカーは、Bitbucket がデータを正常に受け取ったあとにのみ、プッシュされたデータを受け取ります。プッシュには複数のチェンジセットが含まれる場合があるため、サービスも複数のチェンジセットを受け取る可能性があります。サービスの中には、チェンジセットの数を考慮するものがあります。たとえば、メール ブローカーは、チェンジセットの数に基づいて異なるメール メッセージを作成します。
サービスを手動でテストする方法
現在、サービスを手動でテストする機能の追加を進めていますが、サービスの手動テストはコマンド ラインから行うことができます。手動テストには、新しいファイルの作成またはファイルへの変更のコミットと、変更のサーバへのプッシュが含まれます。次の例では新しいファイルを作成しています。
Git リポジトリの場合、ローカル リポジトリから次の操作を行います。
ディレクトリをリポジトリのルートに切り替えます。
$ cd mybb101-repo
servicetest.txt
という名前の新しいファイルを作成します。$ cat /dev/null > servicetest.txt $ cat "this is a test" >> servicetest.txt
ファイルをステージングに追加します。
git add servicetest.txt
新しいファイルをコミットします。
git commit -m "Testing the services"
変更を Bitbucket にプッシュします。
git push
- コミットが Bitbucket の [コミット] タブに表示されることを確認します。
- サービスがコミット データを受け取っていることを確認します。
Mercurial リポジトリの場合、ローカル リポジトリから次の操作を行います。
ディレクトリをリポジトリのルートに切り替えます。
$ cd myquotefork
servicetest.txt
という名前の新しいファイルを作成します。$ cat /dev/null > servicetest.txt $ cat "this is a test" >> servicetest.txt
ファイルを Mercurial に追加します (
add
は新しいファイルの追加時にのみ必要で、更新のみの場合は不要です)。hg add servicetest.txt
新しいファイルをコミットします。
hg commit -m "Testing the services"
変更を Bitbucket にプッシュします。
hg push
- コミットが Bitbucket の [コミット] タブに表示されることを確認します。
サービスがコミット データを受け取っていることを確認します。
手動テストが失敗する場合
コミットが対象のサービスに到達しない場合、次の点を確認します。
- HTTP ステータス コードが 200 と 399 の間に含まれないリクエスト応答は却下されます。また、20 秒のタイムアウトが設定されています。ご利用のアプリケーションがこの時間内に応答できていることを確認します。
- Jira DVCS Connector がファイアウォールの内側にある Jira Software バージョンで使用されているかどうかを確認します。この場合、POST サービスが対象の Jira Software インスタンスに到達できることを確認します。
http://localhost:8080/
やhttp://office-pc/
などの URL は利用できません。 - ログを確認します。HTTP トラフィックの許可やルーティングに関するほとんどすべての情報が記録されています。ログで、Bitbucket の IP アドレスからのトラフィックが到達しているかどうかを確認します。Bitbucket の現在の IP アドレスについては、「会社ファイアウォールを構成する際に、どの Bitbucket Cloud IP アドレスを使用する必要がありますか」をご参照ください。
- サーバとサービスに何も到達していない場合、POST サービスで http://posttestserver.com/post.php への送信を構成してテストを再び実行します。Bitbucket により、すべてのサービスが同時にトリガーされます。テスト サーバに POST が到達している場合、サービスにも到達していることが考えられます。サービスの構成を再確認します。
- If all else fails, please check for reports of similar issues in the Atlassian Community or open a Support request.