aptible-api 1.2.12 → 1.2.16

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: cd4de766f468b353f1832390ef3a198c38ab58d7e89ce5ca5eae20f29cdad866
4
- data.tar.gz: 17a39ba6a14e52acf66be88431cabcae78160f7c13581386e02759c85cb70099
3
+ metadata.gz: 972fa72d58bc957979098aa0be318f100b67e8ef4a9c6a64aab620540f69bbad
4
+ data.tar.gz: 9df970a4905457b523266111afd69cc41386abf2ef02cc49173ede8db0b0794b
5
5
  SHA512:
6
- metadata.gz: c6ece0d1f34d21f8976df897d9f40935366038c7d65540e1de1df0fa46ef49180cd976b922f248eb9f549c394e6c64f2d1513a7dc84d61c564e4aeec873f64e6
7
- data.tar.gz: 789b6d60b712f5632ef737132ae68b2f9c4a0ae858da271abc62e7fabf76903f55ab03f92320727753b94b1f5c103ca180c044c5ca88f68669d0fe56a68c40c2
6
+ metadata.gz: bc299fd6d6269caab0dc9854cdf7a2e79f9e5e6f3638b7888e7e8f8f9aca1123b90d3352c606ec051c8f7ccf9d0ee345cb0c02463de84f5a13b16cb72aabb273
7
+ data.tar.gz: '079fc24e88babc5cf776d20bd4e19972327589849664b53dd2637aad814b0bfe55d3583a95ffb3df14acef7c26b2e4d2d7d448308f27486fd8fa30f960808c10'
@@ -4,17 +4,36 @@ module Aptible
4
4
  belongs_to :stack
5
5
  belongs_to :ami
6
6
  has_many :operations
7
- embeds_many :databases
7
+ has_many :instance_layer_memberships
8
+ has_many :databases
8
9
 
9
10
  field :id
10
11
  field :instance_id
11
12
  field :instance_type
12
13
  field :availability_zone
13
14
  field :name
14
- field :layers
15
15
  field :status
16
+ field :kernel_version
17
+ field :os_version
18
+ field :docker_version
19
+ field :runtime_data
20
+ field :deprovisionable, type: Aptible::Resource::Boolean
16
21
  field :created_at, type: Time
17
22
  field :updated_at, type: Time
23
+ field :retain_until, type: Time
24
+ field :runtime_published_at, type: Time
25
+
26
+ def stack_layers
27
+ instance_layer_memberships.map(&:links)
28
+ .map(&:stack_layer)
29
+ .uniq(&:href)
30
+ .map(&:get)
31
+ end
32
+
33
+ # Layers as an array of strings
34
+ def layers
35
+ stack_layers.map(&:name)
36
+ end
18
37
  end
19
38
  end
20
39
  end
@@ -0,0 +1,10 @@
1
+ module Aptible
2
+ module Api
3
+ class InstanceLayerMembership < Resource
4
+ belongs_to :stack_layer
5
+ belongs_to :aws_instance
6
+
7
+ field :drained, type: Aptible::Resource::Boolean
8
+ end
9
+ end
10
+ end
@@ -6,9 +6,13 @@ module Aptible
6
6
  has_many :operations
7
7
  has_many :containers
8
8
 
9
+ # Temporary until deploy-api renames this field
10
+ embeds_one :new_backend
11
+ # Necessary to avoid downtime when new_backend becomes backend
12
+ embeds_one :backend
13
+
9
14
  field :id
10
15
  field :handle
11
- field :backend
12
16
  field :drain_type
13
17
  field :drain_host
14
18
  field :drain_port
@@ -0,0 +1,17 @@
1
+ module Aptible
2
+ module Api
3
+ class LogDrainBackend < Resource
4
+ has_many :log_drains
5
+
6
+ field :id
7
+ field :current, type: Aptible::Resource::Boolean
8
+ field :channel
9
+ field :gentlemanjerry_image
10
+ field :gentlemanjerry_tag
11
+ field :joecool_image
12
+ field :joecool_tag
13
+ field :created_at, type: Time
14
+ field :updated_at, type: Time
15
+ end
16
+ end
17
+ end
@@ -29,6 +29,7 @@ module Aptible
29
29
  field :user_name
30
30
  field :user_email
31
31
  field :immediate
32
+ field :stack_settings
32
33
  field :created_at, type: Time
33
34
  field :updated_at, type: Time
34
35
 
@@ -27,7 +27,9 @@ require 'aptible/api/database'
27
27
  require 'aptible/api/database_image'
28
28
  require 'aptible/api/disk'
29
29
  require 'aptible/api/image'
30
+ require 'aptible/api/instance_layer_membership'
30
31
  require 'aptible/api/log_drain'
32
+ require 'aptible/api/log_drain_backend'
31
33
  require 'aptible/api/operation'
32
34
  require 'aptible/api/permission'
33
35
  require 'aptible/api/release'
@@ -35,6 +37,7 @@ require 'aptible/api/service'
35
37
  require 'aptible/api/vhost'
36
38
  require 'aptible/api/ssh_portal_connection'
37
39
  require 'aptible/api/stack'
40
+ require 'aptible/api/stack_layer'
38
41
  require 'aptible/api/database_credential'
39
42
  require 'aptible/api/ephemeral_session'
40
43
  require 'aptible/api/ephemeral_container'
@@ -2,6 +2,8 @@ module Aptible
2
2
  module Api
3
3
  class Stack < Resource
4
4
  has_many :aws_instances
5
+ has_many :stack_layers
6
+ has_many :operations
5
7
 
6
8
  field :id
7
9
  field :type
@@ -16,6 +18,10 @@ module Aptible
16
18
  field :ssh_portal_port
17
19
  field :created_at, type: Time
18
20
  field :updated_at, type: Time
21
+
22
+ def dns_layers
23
+ stack_layers.reject! { |l| l.dns_name.blank? }
24
+ end
19
25
  end
20
26
  end
21
27
  end
@@ -0,0 +1,27 @@
1
+ module Aptible
2
+ module Api
3
+ class StackLayer < Resource
4
+ belongs_to :stack
5
+ belongs_to :lead_instance
6
+ has_many :instance_layer_memberships
7
+
8
+ field :id
9
+ field :name
10
+ field :opsworks_layer_id
11
+ field :lead_instance_hostname
12
+ field :dns, type: Aptible::Resource::Boolean
13
+ field :internal_only_dns, type: Aptible::Resource::Boolean
14
+ field :dns_name
15
+ field :dns_provisioned_instance_id
16
+ field :outbound, type: Aptible::Resource::Boolean
17
+ field :created_at, type: Time
18
+ field :updated_at, type: Time
19
+
20
+ def dns_provisioned?
21
+ !dns_provisioned_instance_id.nil? &&
22
+ !lead_instance.nil? &&
23
+ lead_instance.id == dns_provisioned_instance_id
24
+ end
25
+ end
26
+ end
27
+ end
@@ -1,5 +1,5 @@
1
1
  module Aptible
2
2
  module Api
3
- VERSION = '1.2.12'.freeze
3
+ VERSION = '1.2.16'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aptible-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.12
4
+ version: 1.2.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Frank Macreery
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-27 00:00:00.000000000 Z
11
+ date: 2021-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aptible-auth
@@ -200,7 +200,9 @@ files:
200
200
  - lib/aptible/api/ephemeral_container.rb
201
201
  - lib/aptible/api/ephemeral_session.rb
202
202
  - lib/aptible/api/image.rb
203
+ - lib/aptible/api/instance_layer_membership.rb
203
204
  - lib/aptible/api/log_drain.rb
205
+ - lib/aptible/api/log_drain_backend.rb
204
206
  - lib/aptible/api/metric_drain.rb
205
207
  - lib/aptible/api/operation.rb
206
208
  - lib/aptible/api/permission.rb
@@ -209,6 +211,7 @@ files:
209
211
  - lib/aptible/api/service.rb
210
212
  - lib/aptible/api/ssh_portal_connection.rb
211
213
  - lib/aptible/api/stack.rb
214
+ - lib/aptible/api/stack_layer.rb
212
215
  - lib/aptible/api/version.rb
213
216
  - lib/aptible/api/vhost.rb
214
217
  - spec/aptible/api/agent_spec.rb
@@ -236,7 +239,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
236
239
  - !ruby/object:Gem::Version
237
240
  version: '0'
238
241
  requirements: []
239
- rubygems_version: 3.0.3
242
+ rubygems_version: 3.0.9
240
243
  signing_key:
241
244
  specification_version: 4
242
245
  summary: Ruby client for api.aptible.com