diff options
author | Shinya Maeda <shinya@gitlab.com> | 2017-10-23 11:36:35 +0300 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2017-10-23 11:36:35 +0300 |
commit | d0cff7f5855f91b5479f9fdaa39d8d95ec691a9e (patch) | |
tree | 892e9ce3d95fdc19d3b258bac2a0cbb4705cf35f /app/services/clusters/gcp/verify_provision_status_service.rb | |
parent | e1d12ba9b988e61afb9317f3a132d6e2caa93923 (diff) |
This works
Diffstat (limited to 'app/services/clusters/gcp/verify_provision_status_service.rb')
-rw-r--r-- | app/services/clusters/gcp/verify_provision_status_service.rb | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/app/services/clusters/gcp/verify_provision_status_service.rb b/app/services/clusters/gcp/verify_provision_status_service.rb index 466ea986516..bc33756f27c 100644 --- a/app/services/clusters/gcp/verify_provision_status_service.rb +++ b/app/services/clusters/gcp/verify_provision_status_service.rb @@ -12,7 +12,7 @@ module Clusters request_operation do |operation| case operation.status - when 'RUNNING' + when 'PENDING', 'RUNNING' continue_creation(operation) when 'DONE' finalize_creation @@ -25,11 +25,15 @@ module Clusters private def continue_creation(operation) - if TIMEOUT < Time.now.utc - operation.start_time.to_time.utc - return provider.make_errored!("Cluster creation time exceeds timeout; #{TIMEOUT}") + if elapsed_time_from_creation(operation) < TIMEOUT + WaitForClusterCreationWorker.perform_in(EAGER_INTERVAL, provider.cluster_id) + else + provider.make_errored!("Cluster creation time exceeds timeout; #{TIMEOUT}") end + end - WaitForClusterCreationWorker.perform_in(EAGER_INTERVAL, provider.cluster_id) + def elapsed_time_from_creation(operation) + Time.now.utc - operation.start_time.to_time.utc end def finalize_creation @@ -37,7 +41,7 @@ module Clusters end def request_operation(&blk) - Clusters::FetchGcpOperationService.new.execute(provider, &blk) + Clusters::Gcp::FetchOperationService.new.execute(provider, &blk) end end end |