droplet_kit 3.8.1 → 3.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +21 -0
- data/lib/droplet_kit.rb +6 -0
- data/lib/droplet_kit/client.rb +2 -0
- data/lib/droplet_kit/mappings/balance_mapping.rb +14 -0
- data/lib/droplet_kit/mappings/database_user_mapping.rb +1 -1
- data/lib/droplet_kit/mappings/invoice_mapping.rb +32 -0
- data/lib/droplet_kit/mappings/load_balancer_mapping.rb +2 -0
- data/lib/droplet_kit/mappings/vpc_mapping.rb +2 -1
- data/lib/droplet_kit/models/balance.rb +8 -0
- data/lib/droplet_kit/models/invoice.rb +18 -0
- data/lib/droplet_kit/models/load_balancer.rb +1 -0
- data/lib/droplet_kit/resources/balance_resource.rb +10 -0
- data/lib/droplet_kit/resources/domain_record_resource.rb +1 -1
- data/lib/droplet_kit/resources/invoice_resource.rb +15 -0
- data/lib/droplet_kit/version.rb +1 -1
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5e98513325962e09a5405e6665aec934202e9540de33e84e59504749f8b6082
|
4
|
+
data.tar.gz: 1a251b9b9479752e21c63cc77769d19da93a12989d79356d40065aa500a0c3d2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5a5ab31c45ee715dd6df0ddac05d99f0cb3380fa1f1e22b5c3823a69e0ad3316edc4e42aaef8e51782a30da4d2722066fefb87c9825f6549d34a9ce945b9a600
|
7
|
+
data.tar.gz: e0c65e9609f12e72d2eaed500cc35cbc1935aab24ec5eacd99c2df6d1b9d93e3889c4dd693e3fd0c40f82750f5d0c45f62367e7b4280b8f6982acd818d675937
|
data/README.md
CHANGED
@@ -354,6 +354,17 @@ Image Actions Supported:
|
|
354
354
|
* `client.image_actions.find(image_id: 123, id: 123455)`
|
355
355
|
* `client.image_actions.transfer(image_id: 123, region: 'nyc3')`
|
356
356
|
|
357
|
+
## Invoice resource
|
358
|
+
|
359
|
+
```ruby
|
360
|
+
client = DropletKit::Client.new(access_token: 'TOKEN')
|
361
|
+
client.invoices #=> DropletKit::InvoiceResource
|
362
|
+
```
|
363
|
+
|
364
|
+
Actions supported:
|
365
|
+
|
366
|
+
* `client.invoices.list()`
|
367
|
+
* `client.invoices.find(id:123)`
|
357
368
|
|
358
369
|
## Kubernetes Resource
|
359
370
|
|
@@ -502,6 +513,16 @@ Actions supported:
|
|
502
513
|
|
503
514
|
* `client.account.info()`
|
504
515
|
|
516
|
+
## Balance resource
|
517
|
+
|
518
|
+
```ruby
|
519
|
+
client = DropletKit::Client.new(access_token: 'TOKEN')
|
520
|
+
client.balance #=> DropletKit::BalanceResource
|
521
|
+
```
|
522
|
+
|
523
|
+
Actions supported:
|
524
|
+
|
525
|
+
* `client.balance.info()`
|
505
526
|
|
506
527
|
## Floating IP resource
|
507
528
|
|
data/lib/droplet_kit.rb
CHANGED
@@ -13,6 +13,7 @@ module DropletKit
|
|
13
13
|
autoload :Droplet, 'droplet_kit/models/droplet'
|
14
14
|
autoload :Region, 'droplet_kit/models/region'
|
15
15
|
autoload :Image, 'droplet_kit/models/image'
|
16
|
+
autoload :Invoice, 'droplet_kit/models/invoice'
|
16
17
|
autoload :Size, 'droplet_kit/models/size'
|
17
18
|
autoload :NetworkHash, 'droplet_kit/models/network_hash'
|
18
19
|
autoload :Network, 'droplet_kit/models/network'
|
@@ -24,6 +25,7 @@ module DropletKit
|
|
24
25
|
autoload :SSHKey, 'droplet_kit/models/ssh_key'
|
25
26
|
autoload :MetaInformation, 'droplet_kit/models/meta_information'
|
26
27
|
autoload :Account, 'droplet_kit/models/account'
|
28
|
+
autoload :Balance, 'droplet_kit/models/balance'
|
27
29
|
autoload :DropletUpgrade, 'droplet_kit/models/droplet_upgrade'
|
28
30
|
autoload :FloatingIp, 'droplet_kit/models/floating_ip'
|
29
31
|
autoload :Project, 'droplet_kit/models/project'
|
@@ -74,11 +76,13 @@ module DropletKit
|
|
74
76
|
autoload :DomainRecordResource, 'droplet_kit/resources/domain_record_resource'
|
75
77
|
autoload :DropletActionResource, 'droplet_kit/resources/droplet_action_resource'
|
76
78
|
autoload :ImageResource, 'droplet_kit/resources/image_resource'
|
79
|
+
autoload :InvoiceResource, 'droplet_kit/resources/invoice_resource'
|
77
80
|
autoload :ImageActionResource, 'droplet_kit/resources/image_action_resource'
|
78
81
|
autoload :SSHKeyResource, 'droplet_kit/resources/ssh_key_resource'
|
79
82
|
autoload :RegionResource, 'droplet_kit/resources/region_resource'
|
80
83
|
autoload :SizeResource, 'droplet_kit/resources/size_resource'
|
81
84
|
autoload :AccountResource, 'droplet_kit/resources/account_resource'
|
85
|
+
autoload :BalanceResource, 'droplet_kit/resources/balance_resource'
|
82
86
|
autoload :DropletUpgradeResource, 'droplet_kit/resources/droplet_upgrade_resource'
|
83
87
|
autoload :FloatingIpResource, 'droplet_kit/resources/floating_ip_resource'
|
84
88
|
autoload :FloatingIpActionResource, 'droplet_kit/resources/floating_ip_action_resource'
|
@@ -113,8 +117,10 @@ module DropletKit
|
|
113
117
|
autoload :DomainRecordMapping, 'droplet_kit/mappings/domain_record_mapping'
|
114
118
|
autoload :DropletActionMapping, 'droplet_kit/mappings/droplet_action_mapping'
|
115
119
|
autoload :ImageActionMapping, 'droplet_kit/mappings/image_action_mapping'
|
120
|
+
autoload :InvoiceMapping, 'droplet_kit/mappings/invoice_mapping'
|
116
121
|
autoload :SSHKeyMapping, 'droplet_kit/mappings/ssh_key_mapping'
|
117
122
|
autoload :AccountMapping, 'droplet_kit/mappings/account_mapping'
|
123
|
+
autoload :BalanceMapping, 'droplet_kit/mappings/balance_mapping'
|
118
124
|
autoload :DropletUpgradeMapping, 'droplet_kit/mappings/droplet_upgrade_mapping'
|
119
125
|
autoload :FloatingIpMapping, 'droplet_kit/mappings/floating_ip_mapping'
|
120
126
|
autoload :ProjectMapping, 'droplet_kit/mappings/project_mapping'
|
data/lib/droplet_kit/client.rb
CHANGED
@@ -43,12 +43,14 @@ module DropletKit
|
|
43
43
|
firewalls: FirewallResource,
|
44
44
|
images: ImageResource,
|
45
45
|
image_actions: ImageActionResource,
|
46
|
+
invoices: InvoiceResource,
|
46
47
|
load_balancers: LoadBalancerResource,
|
47
48
|
regions: RegionResource,
|
48
49
|
sizes: SizeResource,
|
49
50
|
ssh_keys: SSHKeyResource,
|
50
51
|
snapshots: SnapshotResource,
|
51
52
|
account: AccountResource,
|
53
|
+
balance: BalanceResource,
|
52
54
|
floating_ips: FloatingIpResource,
|
53
55
|
floating_ip_actions: FloatingIpActionResource,
|
54
56
|
tags: TagResource,
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module DropletKit
|
2
|
+
class BalanceMapping
|
3
|
+
include Kartograph::DSL
|
4
|
+
|
5
|
+
kartograph do
|
6
|
+
mapping Balance
|
7
|
+
property :month_to_date_balance, scopes: [:read]
|
8
|
+
property :account_balance, scopes: [:read]
|
9
|
+
property :month_to_date_usage, scopes: [:read]
|
10
|
+
property :generated_at, scopes: [:read]
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -6,7 +6,7 @@ module DropletKit
|
|
6
6
|
mapping DatabaseUser
|
7
7
|
root_key singular: 'user', plural: 'users', scopes: [:read]
|
8
8
|
|
9
|
-
property :name, scopes: [:read]
|
9
|
+
property :name, scopes: [:read, :create]
|
10
10
|
property :role, scopes: [:read, :create]
|
11
11
|
property :password, scopes: [:read, :create]
|
12
12
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module DropletKit
|
2
|
+
class InvoiceMapping
|
3
|
+
include Kartograph::DSL
|
4
|
+
|
5
|
+
kartograph do
|
6
|
+
mapping Invoice
|
7
|
+
root_key plural: 'invoices', scopes: [:read]
|
8
|
+
root_key plural: 'invoice_items', scopes: [:find]
|
9
|
+
|
10
|
+
scoped :read do
|
11
|
+
property :invoice_uuid
|
12
|
+
property :amount
|
13
|
+
property :invoice_period
|
14
|
+
end
|
15
|
+
|
16
|
+
scoped :find do
|
17
|
+
property :product
|
18
|
+
property :amount
|
19
|
+
property :resource_uuid
|
20
|
+
property :group_description
|
21
|
+
property :description
|
22
|
+
property :duration
|
23
|
+
property :duration_unit
|
24
|
+
property :start_time
|
25
|
+
property :end_time
|
26
|
+
property :project_name
|
27
|
+
property :category
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
@@ -12,6 +12,7 @@ module DropletKit
|
|
12
12
|
property :status
|
13
13
|
property :created_at
|
14
14
|
property :region, include: RegionMapping
|
15
|
+
property :size
|
15
16
|
property :vpc_uuid
|
16
17
|
end
|
17
18
|
|
@@ -30,6 +31,7 @@ module DropletKit
|
|
30
31
|
|
31
32
|
scoped :update, :create do
|
32
33
|
property :region
|
34
|
+
property :size
|
33
35
|
end
|
34
36
|
|
35
37
|
scoped :create do
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module DropletKit
|
2
|
+
class Invoice < BaseModel
|
3
|
+
attribute :invoice_uuid
|
4
|
+
attribute :amount
|
5
|
+
attribute :invoice_period
|
6
|
+
attribute :product
|
7
|
+
attribute :resource_uuid
|
8
|
+
attribute :group_description
|
9
|
+
attribute :description
|
10
|
+
attribute :duration
|
11
|
+
attribute :duration_unit
|
12
|
+
attribute :start_time
|
13
|
+
attribute :end_time
|
14
|
+
attribute :project_name
|
15
|
+
attribute :category
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
@@ -8,6 +8,7 @@ module DropletKit
|
|
8
8
|
attribute :created_at
|
9
9
|
attribute :tag
|
10
10
|
attribute :region
|
11
|
+
attribute :size
|
11
12
|
attribute :redirect_http_to_https, Boolean, :default => false
|
12
13
|
attribute :enable_proxy_protocol, Boolean, :default => false
|
13
14
|
attribute :enable_backend_keepalive, Boolean, :default => false
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module DropletKit
|
2
|
+
class InvoiceResource < ResourceKit::Resource
|
3
|
+
include ErrorHandlingResourcable
|
4
|
+
|
5
|
+
resources do
|
6
|
+
action :list, 'GET /v2/customers/my/invoices' do
|
7
|
+
handler(200) { |response| InvoiceMapping.extract_collection(response.body, :read) }
|
8
|
+
end
|
9
|
+
|
10
|
+
action :find, 'GET v2/customers/my/invoices/:id' do
|
11
|
+
handler(200) { |response| InvoiceMapping.extract_collection(response.body, :find) }
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/lib/droplet_kit/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: droplet_kit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- DigitalOcean API Engineering team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: virtus
|
@@ -150,6 +150,7 @@ files:
|
|
150
150
|
- lib/droplet_kit/error_handling_resourcable.rb
|
151
151
|
- lib/droplet_kit/mappings/account_mapping.rb
|
152
152
|
- lib/droplet_kit/mappings/action_mapping.rb
|
153
|
+
- lib/droplet_kit/mappings/balance_mapping.rb
|
153
154
|
- lib/droplet_kit/mappings/cdn_mapping.rb
|
154
155
|
- lib/droplet_kit/mappings/certificate_mapping.rb
|
155
156
|
- lib/droplet_kit/mappings/container_registry_mapping.rb
|
@@ -182,6 +183,7 @@ files:
|
|
182
183
|
- lib/droplet_kit/mappings/forwarding_rule_mapping.rb
|
183
184
|
- lib/droplet_kit/mappings/health_check_mapping.rb
|
184
185
|
- lib/droplet_kit/mappings/image_mapping.rb
|
186
|
+
- lib/droplet_kit/mappings/invoice_mapping.rb
|
185
187
|
- lib/droplet_kit/mappings/kernel_mapping.rb
|
186
188
|
- lib/droplet_kit/mappings/kubernetes_cluster_mapping.rb
|
187
189
|
- lib/droplet_kit/mappings/kubernetes_maintenance_policy_mapping.rb
|
@@ -208,6 +210,7 @@ files:
|
|
208
210
|
- lib/droplet_kit/mappings/vpc_member_mapping.rb
|
209
211
|
- lib/droplet_kit/models/account.rb
|
210
212
|
- lib/droplet_kit/models/action.rb
|
213
|
+
- lib/droplet_kit/models/balance.rb
|
211
214
|
- lib/droplet_kit/models/base_model.rb
|
212
215
|
- lib/droplet_kit/models/cdn.rb
|
213
216
|
- lib/droplet_kit/models/certificate.rb
|
@@ -240,6 +243,7 @@ files:
|
|
240
243
|
- lib/droplet_kit/models/forwarding_rule.rb
|
241
244
|
- lib/droplet_kit/models/health_check.rb
|
242
245
|
- lib/droplet_kit/models/image.rb
|
246
|
+
- lib/droplet_kit/models/invoice.rb
|
243
247
|
- lib/droplet_kit/models/kernel.rb
|
244
248
|
- lib/droplet_kit/models/kubernetes_cluster.rb
|
245
249
|
- lib/droplet_kit/models/kubernetes_maintenance_policy.rb
|
@@ -269,6 +273,7 @@ files:
|
|
269
273
|
- lib/droplet_kit/paginated_resource.rb
|
270
274
|
- lib/droplet_kit/resources/account_resource.rb
|
271
275
|
- lib/droplet_kit/resources/action_resource.rb
|
276
|
+
- lib/droplet_kit/resources/balance_resource.rb
|
272
277
|
- lib/droplet_kit/resources/cdn_resource.rb
|
273
278
|
- lib/droplet_kit/resources/certificate_resource.rb
|
274
279
|
- lib/droplet_kit/resources/container_registry_repository_resource.rb
|
@@ -284,6 +289,7 @@ files:
|
|
284
289
|
- lib/droplet_kit/resources/floating_ip_resource.rb
|
285
290
|
- lib/droplet_kit/resources/image_action_resource.rb
|
286
291
|
- lib/droplet_kit/resources/image_resource.rb
|
292
|
+
- lib/droplet_kit/resources/invoice_resource.rb
|
287
293
|
- lib/droplet_kit/resources/kubernetes_cluster_resource.rb
|
288
294
|
- lib/droplet_kit/resources/kubernetes_options_resource.rb
|
289
295
|
- lib/droplet_kit/resources/load_balancer_resource.rb
|