hetznercloud 1.5.4 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c731cef3b6836c9ca0cd8c84020a0af9feb301b583fd6cc52cd764407b13be8b
4
- data.tar.gz: a3be57a22b54d2d2bc5cb51c82a0051918b305ddbb1864511c4e32bc73d835c0
3
+ metadata.gz: cc1e6087fa61d27ee8763b0f9f128bc26d9e162f5355a965d462136ee5a2e244
4
+ data.tar.gz: 7750141e35af391668ac9d94de7958060fc00ebdea4e0a668f89d05dec484ece
5
5
  SHA512:
6
- metadata.gz: 7416bc30b965d8e88e02fdb4244755957fb773c67ef7fa11c5bd7162777ea347344fcca4e531c349fd43ba77233211ade1064ebd354ae19875e968e508f7524a
7
- data.tar.gz: b4eeece8a36968d6bff1d37d320591428488293bad47a4b4a1ee6fdc9202a959f4c2840d5b89972fbc0f677045b921f70d9e06e9e53c5f2b864168a0e6e9a9b4
6
+ metadata.gz: b99b994d194dda71ed3957786348bbe4bf0afb83872373fbb313c2ba10535fcfa7055a2ceb3f492b4f3dd7100e506175a787d11a68049b1d3cd0d4c0204daac4
7
+ data.tar.gz: fa5c8eb4c9c7c6998653a2387b3e935f1f5148e02de29bc9d1b1338b589e8d7e9403d966302f882ede4e1e3548b6350d282ba69950873b87a6ecb2bbc892423c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## HCloud v1.6.0 (2023-06-07)
4
+
5
+ - Add `deprecation` attribute to `ServerType`
6
+ - Parse `private_net` attribute on `Server` as array
7
+ - Parse `public_net.firewalls` attribute on `Server` as array of objects with status (not array of `Firewall`s)
8
+
3
9
  ## HCloud v1.5.4 (2023-05-17)
4
10
 
5
11
  - Allow defining attributes on the fly
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module HCloud
4
+ class Deprecation < Entity
5
+ attribute :announced, :datetime
6
+ attribute :unavailable_after, :datetime
7
+ end
8
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module HCloud
4
4
  class PublicNet < Entity
5
- attribute :firewalls, :firewall, array: true, default: -> { [] }
5
+ attribute :firewalls, :public_net_firewall, array: true, default: -> { [] }
6
6
  attribute :floating_ips, :floating_ip, array: true, default: -> { [] }
7
7
  attribute :ipv4, :ipv4
8
8
  attribute :ipv6, :ipv6
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module HCloud
4
+ class PublicNetFirewall < Entity
5
+ attribute :id, :integer
6
+ attribute :status
7
+
8
+ def applied?
9
+ status == "applied"
10
+ end
11
+
12
+ def pending?
13
+ status == "pending"
14
+ end
15
+ end
16
+ end
@@ -90,6 +90,7 @@ ActiveModel::Type.register(:certificate, HCloud::ResourceType.Type("HCloud::Cert
90
90
  ActiveModel::Type.register(:certificate_status, HCloud::ResourceType.Type("HCloud::CertificateStatus"))
91
91
  ActiveModel::Type.register(:datacenter, HCloud::ResourceType.Type("HCloud::Datacenter"))
92
92
  ActiveModel::Type.register(:datacenter_server_type, HCloud::ResourceType.Type("HCloud::DatacenterServerType"))
93
+ ActiveModel::Type.register(:deprecation, HCloud::ResourceType.Type("HCloud::Deprecation"))
93
94
  ActiveModel::Type.register(:dns_pointer, HCloud::ResourceType.Type("HCloud::DNSPointer"))
94
95
  ActiveModel::Type.register(:error, HCloud::ResourceType.Type("HCloud::Error"))
95
96
  ActiveModel::Type.register(:firewall, HCloud::ResourceType.Type("HCloud::Firewall"))
@@ -122,6 +123,7 @@ ActiveModel::Type.register(:private_net, HCloud::ResourceType.Type("HCloud::Priv
122
123
  ActiveModel::Type.register(:private_network, HCloud::ResourceType.Type("HCloud::PrivateNetwork"))
123
124
  ActiveModel::Type.register(:protection, HCloud::ResourceType.Type("HCloud::Protection"))
124
125
  ActiveModel::Type.register(:public_net, HCloud::ResourceType.Type("HCloud::PublicNet"))
126
+ ActiveModel::Type.register(:public_net_firewall, HCloud::ResourceType.Type("HCloud::PublicNetFirewall"))
125
127
  ActiveModel::Type.register(:resource, HCloud::ResourceType::GenericType)
126
128
  ActiveModel::Type.register(:route, HCloud::ResourceType.Type("HCloud::Route"))
127
129
  ActiveModel::Type.register(:rule, HCloud::ResourceType.Type("HCloud::Rule"))
@@ -116,7 +116,7 @@ module HCloud
116
116
  attribute :image, :image
117
117
 
118
118
  attribute :public_net, :public_net
119
- attribute :private_net, :private_net
119
+ attribute :private_net, :private_net, array: true, default: -> { [] }
120
120
 
121
121
  attribute :placement_group, :placement_group
122
122
 
@@ -38,6 +38,7 @@ module HCloud
38
38
  attribute :prices, :price, array: true, default: -> { [] }
39
39
 
40
40
  attribute :deprecated, :boolean
41
+ attribute :deprecation, :deprecation
41
42
 
42
43
  alias deprecated? deprecated
43
44
  end
@@ -3,8 +3,8 @@
3
3
  module HCloud
4
4
  module Version
5
5
  MAJOR = 1
6
- MINOR = 5
7
- PATCH = 4
6
+ MINOR = 6
7
+ PATCH = 0
8
8
  PRE = nil
9
9
 
10
10
  VERSION = [MAJOR, MINOR, PATCH].compact.join(".")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hetznercloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.4
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Dejonckheere
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-17 00:00:00.000000000 Z
11
+ date: 2023-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -100,6 +100,7 @@ files:
100
100
  - lib/hcloud/entities/apply_to.rb
101
101
  - lib/hcloud/entities/certificate_status.rb
102
102
  - lib/hcloud/entities/datacenter_server_type.rb
103
+ - lib/hcloud/entities/deprecation.rb
103
104
  - lib/hcloud/entities/dns_pointer.rb
104
105
  - lib/hcloud/entities/error.rb
105
106
  - lib/hcloud/entities/floating_ip_price.rb
@@ -121,6 +122,7 @@ files:
121
122
  - lib/hcloud/entities/private_network.rb
122
123
  - lib/hcloud/entities/protection.rb
123
124
  - lib/hcloud/entities/public_net.rb
125
+ - lib/hcloud/entities/public_net_firewall.rb
124
126
  - lib/hcloud/entities/route.rb
125
127
  - lib/hcloud/entities/rule.rb
126
128
  - lib/hcloud/entities/server_backup_price.rb