Bluemix DevOps Services では、常に新しいサービス インスタンスを作成するデプロイ スクリプトが必要です (たとえば、QA スタックにデプロイしています)。
私の展開スクリプトは次のようになります。
echo "Deleting app ${CF_APP}"
cf delete "${CF_APP}" -f -r
if cf services | grep "Insights for Twitter-test" -q
then
echo "Twitter Service found, deleting in order to create a new one."
cf delete-service "Insights for Twitter-test" -f
else
echo "Twitter Service doesn't exist yet, will create new one."
fi
echo "Creating new service instance for Twitter"
cf create-service twitterinsights Free "Insights for Twitter-test"
echo "Pushing app ${CF_APP}"
cf push "${CF_APP}"
実行するたびに、サービス作成部分がタイムアウトします。
Server error, status code: 504, error code: 10001, message: Service instance Insights for Twitter-test: The request to the service broker timed out: https://provision-broker.ng.bluemix.net/bmx/provisioning/brokers/832dfb83-50e9-42b5-9516-ac54ab1eeaf4/v2/service_instances/c3a42482-398c-4148-bacb-297c1f6670ef?accepts_incomplete=true&plan_id=a888c333-41b6-4384-97d1-f89d11d48be9&service_id=4176989f-0bf7-4cf2-987a-6a57320744d1
このスクリプトを CF CLI で手動で実行すると、問題なく動作します。DevOps Services でのみ、サービスの作成がタイムアウトします。
現時点では、Twitter サービスに状態がないという事実には関心がなく、そのままにしておくこともできます。代わりに、新しく作成されたことを確認したいデータベース サービスを想像してみてください。
ありとあらゆる助けをいただければ幸いです。