capistrano-gcp-autoscaling 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6b5c4394b5eb9f38b2fd71ce873b7abb55c0710cf98ccfa23aba145230e22bfd
4
- data.tar.gz: 5f320b6e0d46b9cf6aa8c4427140fea14e95885207471004120acb0e6466bf08
3
+ metadata.gz: 8d84efb4df187f1159587a70929bef7e35ecd93dc481291c1a72418d8ea89932
4
+ data.tar.gz: 199de302d9a3e3a9425adfbfd7246a33c4318f61d683d64783f71860c121f1cc
5
5
  SHA512:
6
- metadata.gz: c44a4eadbc38484136344fe4dc43e010105ad4a217736669a964cac482364ebe98f18adbcc24a8622c07a61146eba49d5c446f143124ec5cb2a565d8c1cdef12
7
- data.tar.gz: '048cdfcd4192037e755697c81e215134c9a7bb42c04df1a6251617d3ea8b2f931497258eea62c549b0425fec05accc8273b256c2db6f2bc1a6431413af262cab'
6
+ metadata.gz: 54c1c29655a11238ea8e180147683914d0f05b1212ff29d36dbb2af3706d1eb28e6b7822bbe35b94d081d40dae84daefdb46181680836e3374a5fe7b00892ad2
7
+ data.tar.gz: 05551e7c97efd866147c0489ec1f0adc849954c4614d3ea71ad67a48d841d444840a3de8bce0b5bbeeb4065ecc7cb48acfa8838975248e83cb497f191863fd9a
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- capistrano-gcp-autoscaling (0.1.1)
4
+ capistrano-gcp-autoscaling (0.1.2)
5
5
  capistrano (~> 3.0)
6
6
  google-api-client (~> 0.8)
7
7
  googleauth (>= 0.6)
@@ -48,7 +48,7 @@ GEM
48
48
  memoist (0.16.0)
49
49
  mime-types (3.2.2)
50
50
  mime-types-data (~> 3.2015)
51
- mime-types-data (3.2018.0812)
51
+ mime-types-data (3.2019.0331)
52
52
  multi_json (1.13.1)
53
53
  multipart-post (2.0.0)
54
54
  net-scp (2.0.0)
@@ -9,6 +9,7 @@ module Capistrano
9
9
  ZONE_PATTERN = %r{/zones/[\w-]+}.freeze
10
10
  SEPARATOR = '/'.freeze
11
11
  RUNNING_STATUS = 'RUNNING'.freeze
12
+ NONE_ACTION = 'NONE'.freeze
12
13
 
13
14
  def initialize(compute_service, managed_instance, options = {})
14
15
  @compute_service = compute_service
@@ -24,14 +25,22 @@ module Capistrano
24
25
  Time.parse(instance.creation_timestamp)
25
26
  end
26
27
 
27
- def running?
28
- instance.status == RUNNING_STATUS
28
+ def available?
29
+ running? && do_nothing?
29
30
  end
30
31
 
31
32
  private
32
33
 
33
34
  attr_reader :compute_service, :managed_instance, :options
34
35
 
36
+ def running?
37
+ managed_instance.instance_status == RUNNING_STATUS
38
+ end
39
+
40
+ def do_nothing?
41
+ managed_instance.current_action == NONE_ACTION
42
+ end
43
+
35
44
  def instance
36
45
  @instance ||= compute_service.get_instance(options.fetch(:gcp_project_id), instance_zone, instance_name)
37
46
  end
@@ -11,7 +11,7 @@ module Capistrano
11
11
  end
12
12
 
13
13
  def instances
14
- group_manager.managed_instances.map(&method(:instance_for)).select(&:running?).sort_by(&:created_at)
14
+ group_manager.managed_instances.map(&method(:instance_for)).select(&:available?).sort_by(&:created_at)
15
15
  end
16
16
 
17
17
  private
@@ -3,7 +3,7 @@
3
3
  module Capistrano
4
4
  module Gcp
5
5
  module Autoscaling
6
- VERSION = '0.1.1'.freeze
6
+ VERSION = '0.1.2'.freeze
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-gcp-autoscaling
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksei Vorobyov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-27 00:00:00.000000000 Z
11
+ date: 2019-04-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -168,7 +168,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
168
  version: '0'
169
169
  requirements: []
170
170
  rubyforge_project:
171
- rubygems_version: 2.7.8
171
+ rubygems_version: 2.7.9
172
172
  signing_key:
173
173
  specification_version: 4
174
174
  summary: Capistrano plugin for deploying to GCP instance groups