ionoscloud 5.1.1 → 5.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -3
- data/README.md +1 -1
- data/docs/models/KubernetesClusterProperties.md +0 -2
- data/docs/models/KubernetesClusterPropertiesForPost.md +0 -2
- data/docs/models/KubernetesNodePoolProperties.md +0 -3
- data/docs/models/KubernetesNodePoolPropertiesForPost.md +0 -3
- data/lib/ionoscloud/api_client.rb +2 -2
- data/lib/ionoscloud/models/attached_volumes.rb +65 -11
- data/lib/ionoscloud/models/backup_unit.rb +45 -5
- data/lib/ionoscloud/models/backup_unit_properties.rb +27 -3
- data/lib/ionoscloud/models/backup_unit_sso.rb +9 -1
- data/lib/ionoscloud/models/backup_units.rb +38 -8
- data/lib/ionoscloud/models/balanced_nics.rb +65 -11
- data/lib/ionoscloud/models/cdroms.rb +65 -11
- data/lib/ionoscloud/models/connectable_datacenter.rb +27 -3
- data/lib/ionoscloud/models/contract.rb +18 -2
- data/lib/ionoscloud/models/contract_properties.rb +45 -5
- data/lib/ionoscloud/models/data_center_entities.rb +36 -4
- data/lib/ionoscloud/models/datacenter.rb +54 -6
- data/lib/ionoscloud/models/datacenter_element_metadata.rb +72 -8
- data/lib/ionoscloud/models/datacenter_properties.rb +56 -10
- data/lib/ionoscloud/models/datacenters.rb +65 -11
- data/lib/ionoscloud/models/error.rb +20 -6
- data/lib/ionoscloud/models/error_message.rb +18 -2
- data/lib/ionoscloud/models/firewall_rule.rb +45 -5
- data/lib/ionoscloud/models/firewall_rules.rb +65 -11
- data/lib/ionoscloud/models/firewallrule_properties.rb +81 -9
- data/lib/ionoscloud/models/group.rb +45 -5
- data/lib/ionoscloud/models/group_entities.rb +18 -2
- data/lib/ionoscloud/models/group_members.rb +38 -8
- data/lib/ionoscloud/models/group_properties.rb +90 -10
- data/lib/ionoscloud/models/group_share.rb +36 -4
- data/lib/ionoscloud/models/group_share_properties.rb +18 -2
- data/lib/ionoscloud/models/group_shares.rb +38 -8
- data/lib/ionoscloud/models/group_users.rb +38 -8
- data/lib/ionoscloud/models/groups.rb +38 -8
- data/lib/ionoscloud/models/image.rb +45 -5
- data/lib/ionoscloud/models/image_properties.rb +173 -23
- data/lib/ionoscloud/models/images.rb +38 -8
- data/lib/ionoscloud/models/info.rb +27 -3
- data/lib/ionoscloud/models/ip_block.rb +45 -5
- data/lib/ionoscloud/models/ip_block_properties.rb +49 -13
- data/lib/ionoscloud/models/ip_blocks.rb +65 -11
- data/lib/ionoscloud/models/ip_consumer.rb +81 -9
- data/lib/ionoscloud/models/ip_failover.rb +18 -2
- data/lib/ionoscloud/models/kubernetes_auto_scaling.rb +18 -2
- data/lib/ionoscloud/models/kubernetes_cluster.rb +54 -6
- data/lib/ionoscloud/models/kubernetes_cluster_entities.rb +9 -1
- data/lib/ionoscloud/models/kubernetes_cluster_for_post.rb +54 -6
- data/lib/ionoscloud/models/kubernetes_cluster_for_put.rb +54 -6
- data/lib/ionoscloud/models/kubernetes_cluster_properties.rb +70 -34
- data/lib/ionoscloud/models/kubernetes_cluster_properties_for_post.rb +48 -24
- data/lib/ionoscloud/models/kubernetes_cluster_properties_for_put.rb +49 -13
- data/lib/ionoscloud/models/kubernetes_clusters.rb +38 -8
- data/lib/ionoscloud/models/kubernetes_config.rb +36 -4
- data/lib/ionoscloud/models/kubernetes_config_properties.rb +9 -1
- data/lib/ionoscloud/models/kubernetes_maintenance_window.rb +18 -2
- data/lib/ionoscloud/models/kubernetes_node.rb +45 -5
- data/lib/ionoscloud/models/kubernetes_node_metadata.rb +45 -5
- data/lib/ionoscloud/models/kubernetes_node_pool.rb +45 -5
- data/lib/ionoscloud/models/kubernetes_node_pool_for_post.rb +45 -5
- data/lib/ionoscloud/models/kubernetes_node_pool_for_put.rb +45 -5
- data/lib/ionoscloud/models/kubernetes_node_pool_lan.rb +9 -1
- data/lib/ionoscloud/models/kubernetes_node_pool_properties.rb +163 -47
- data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_post.rb +152 -42
- data/lib/ionoscloud/models/kubernetes_node_pool_properties_for_put.rb +89 -25
- data/lib/ionoscloud/models/kubernetes_node_pools.rb +38 -8
- data/lib/ionoscloud/models/kubernetes_node_properties.rb +36 -4
- data/lib/ionoscloud/models/kubernetes_nodes.rb +38 -8
- data/lib/ionoscloud/models/label.rb +45 -5
- data/lib/ionoscloud/models/label_properties.rb +45 -5
- data/lib/ionoscloud/models/label_resource.rb +45 -5
- data/lib/ionoscloud/models/label_resource_properties.rb +18 -2
- data/lib/ionoscloud/models/label_resources.rb +65 -11
- data/lib/ionoscloud/models/labels.rb +38 -8
- data/lib/ionoscloud/models/lan.rb +54 -6
- data/lib/ionoscloud/models/lan_entities.rb +9 -1
- data/lib/ionoscloud/models/lan_nics.rb +65 -11
- data/lib/ionoscloud/models/lan_post.rb +54 -6
- data/lib/ionoscloud/models/lan_properties.rb +38 -8
- data/lib/ionoscloud/models/lan_properties_post.rb +38 -8
- data/lib/ionoscloud/models/lans.rb +65 -11
- data/lib/ionoscloud/models/loadbalancer.rb +54 -6
- data/lib/ionoscloud/models/loadbalancer_entities.rb +9 -1
- data/lib/ionoscloud/models/loadbalancer_properties.rb +27 -3
- data/lib/ionoscloud/models/loadbalancers.rb +65 -11
- data/lib/ionoscloud/models/location.rb +45 -5
- data/lib/ionoscloud/models/location_properties.rb +31 -11
- data/lib/ionoscloud/models/locations.rb +38 -8
- data/lib/ionoscloud/models/nic.rb +54 -6
- data/lib/ionoscloud/models/nic_entities.rb +9 -1
- data/lib/ionoscloud/models/nic_properties.rb +65 -11
- data/lib/ionoscloud/models/nics.rb +65 -11
- data/lib/ionoscloud/models/no_state_meta_data.rb +63 -7
- data/lib/ionoscloud/models/pagination_links.rb +27 -3
- data/lib/ionoscloud/models/peer.rb +45 -5
- data/lib/ionoscloud/models/private_cross_connect.rb +45 -5
- data/lib/ionoscloud/models/private_cross_connect_properties.rb +40 -12
- data/lib/ionoscloud/models/private_cross_connects.rb +38 -8
- data/lib/ionoscloud/models/request.rb +45 -5
- data/lib/ionoscloud/models/request_metadata.rb +36 -4
- data/lib/ionoscloud/models/request_properties.rb +38 -8
- data/lib/ionoscloud/models/request_status.rb +36 -4
- data/lib/ionoscloud/models/request_status_metadata.rb +38 -8
- data/lib/ionoscloud/models/request_target.rb +18 -2
- data/lib/ionoscloud/models/requests.rb +65 -11
- data/lib/ionoscloud/models/resource.rb +54 -6
- data/lib/ionoscloud/models/resource_entities.rb +9 -1
- data/lib/ionoscloud/models/resource_groups.rb +38 -8
- data/lib/ionoscloud/models/resource_limits.rb +153 -17
- data/lib/ionoscloud/models/resource_properties.rb +18 -2
- data/lib/ionoscloud/models/resource_reference.rb +27 -3
- data/lib/ionoscloud/models/resources.rb +38 -8
- data/lib/ionoscloud/models/resources_users.rb +38 -8
- data/lib/ionoscloud/models/s3_bucket.rb +9 -1
- data/lib/ionoscloud/models/s3_key.rb +45 -5
- data/lib/ionoscloud/models/s3_key_metadata.rb +18 -2
- data/lib/ionoscloud/models/s3_key_properties.rb +18 -2
- data/lib/ionoscloud/models/s3_keys.rb +38 -8
- data/lib/ionoscloud/models/s3_object_storage_sso.rb +9 -1
- data/lib/ionoscloud/models/server.rb +54 -6
- data/lib/ionoscloud/models/server_entities.rb +27 -3
- data/lib/ionoscloud/models/server_properties.rb +72 -8
- data/lib/ionoscloud/models/servers.rb +65 -11
- data/lib/ionoscloud/models/snapshot.rb +45 -5
- data/lib/ionoscloud/models/snapshot_properties.rb +144 -16
- data/lib/ionoscloud/models/snapshots.rb +38 -8
- data/lib/ionoscloud/models/user.rb +54 -6
- data/lib/ionoscloud/models/user_metadata.rb +27 -3
- data/lib/ionoscloud/models/user_post.rb +9 -1
- data/lib/ionoscloud/models/user_properties.rb +72 -8
- data/lib/ionoscloud/models/user_properties_post.rb +72 -8
- data/lib/ionoscloud/models/user_properties_put.rb +63 -7
- data/lib/ionoscloud/models/user_put.rb +18 -2
- data/lib/ionoscloud/models/users.rb +65 -11
- data/lib/ionoscloud/models/users_entities.rb +18 -2
- data/lib/ionoscloud/models/volume.rb +45 -5
- data/lib/ionoscloud/models/volume_properties.rb +173 -23
- data/lib/ionoscloud/models/volumes.rb +65 -11
- data/lib/ionoscloud/version.rb +1 -1
- metadata +2 -304
- data/spec/api/_api_spec.rb +0 -49
- data/spec/api/backup_unit_api_spec.rb +0 -140
- data/spec/api/contract_api_spec.rb +0 -49
- data/spec/api/data_center_api_spec.rb +0 -128
- data/spec/api/image_api_spec.rb +0 -111
- data/spec/api/ip_blocks_api_spec.rb +0 -128
- data/spec/api/kubernetes_api_spec.rb +0 -306
- data/spec/api/label_api_spec.rb +0 -480
- data/spec/api/lan_api_spec.rb +0 -186
- data/spec/api/load_balancer_api_spec.rb +0 -203
- data/spec/api/location_api_spec.rb +0 -80
- data/spec/api/nic_api_spec.rb +0 -251
- data/spec/api/private_cross_connect_api_spec.rb +0 -110
- data/spec/api/request_api_spec.rb +0 -92
- data/spec/api/server_api_spec.rb +0 -337
- data/spec/api/snapshot_api_spec.rb +0 -111
- data/spec/api/user_management_api_spec.rb +0 -497
- data/spec/api/volume_api_spec.rb +0 -171
- data/spec/models/attached_volumes_spec.rb +0 -70
- data/spec/models/backup_unit_properties_spec.rb +0 -46
- data/spec/models/backup_unit_spec.rb +0 -62
- data/spec/models/backup_unit_sso_spec.rb +0 -34
- data/spec/models/backup_units_spec.rb +0 -56
- data/spec/models/balanced_nics_spec.rb +0 -70
- data/spec/models/cdroms_spec.rb +0 -70
- data/spec/models/connectable_datacenter_spec.rb +0 -46
- data/spec/models/contract_properties_spec.rb +0 -58
- data/spec/models/contract_spec.rb +0 -40
- data/spec/models/data_center_entities_spec.rb +0 -52
- data/spec/models/datacenter_element_metadata_spec.rb +0 -80
- data/spec/models/datacenter_properties_spec.rb +0 -64
- data/spec/models/datacenter_spec.rb +0 -64
- data/spec/models/datacenters_spec.rb +0 -70
- data/spec/models/error_message_spec.rb +0 -40
- data/spec/models/error_spec.rb +0 -40
- data/spec/models/firewall_rule_spec.rb +0 -58
- data/spec/models/firewall_rules_spec.rb +0 -70
- data/spec/models/firewallrule_properties_spec.rb +0 -86
- data/spec/models/group_entities_spec.rb +0 -40
- data/spec/models/group_members_spec.rb +0 -52
- data/spec/models/group_properties_spec.rb +0 -88
- data/spec/models/group_share_properties_spec.rb +0 -40
- data/spec/models/group_share_spec.rb +0 -52
- data/spec/models/group_shares_spec.rb +0 -52
- data/spec/models/group_spec.rb +0 -58
- data/spec/models/group_users_spec.rb +0 -52
- data/spec/models/groups_spec.rb +0 -52
- data/spec/models/image_properties_spec.rb +0 -154
- data/spec/models/image_spec.rb +0 -58
- data/spec/models/images_spec.rb +0 -52
- data/spec/models/info_spec.rb +0 -46
- data/spec/models/ip_block_properties_spec.rb +0 -58
- data/spec/models/ip_block_spec.rb +0 -58
- data/spec/models/ip_blocks_spec.rb +0 -70
- data/spec/models/ip_consumer_spec.rb +0 -82
- data/spec/models/ip_failover_spec.rb +0 -40
- data/spec/models/kubernetes_auto_scaling_spec.rb +0 -40
- data/spec/models/kubernetes_cluster_entities_spec.rb +0 -34
- data/spec/models/kubernetes_cluster_for_post_spec.rb +0 -68
- data/spec/models/kubernetes_cluster_for_put_spec.rb +0 -68
- data/spec/models/kubernetes_cluster_properties_for_post_spec.rb +0 -64
- data/spec/models/kubernetes_cluster_properties_for_put_spec.rb +0 -58
- data/spec/models/kubernetes_cluster_properties_spec.rb +0 -76
- data/spec/models/kubernetes_cluster_spec.rb +0 -68
- data/spec/models/kubernetes_clusters_spec.rb +0 -56
- data/spec/models/kubernetes_config_properties_spec.rb +0 -34
- data/spec/models/kubernetes_config_spec.rb +0 -56
- data/spec/models/kubernetes_maintenance_window_spec.rb +0 -44
- data/spec/models/kubernetes_node_metadata_spec.rb +0 -62
- data/spec/models/kubernetes_node_pool_for_post_spec.rb +0 -62
- data/spec/models/kubernetes_node_pool_for_put_spec.rb +0 -62
- data/spec/models/kubernetes_node_pool_lan_spec.rb +0 -34
- data/spec/models/kubernetes_node_pool_properties_for_post_spec.rb +0 -138
- data/spec/models/kubernetes_node_pool_properties_for_put_spec.rb +0 -82
- data/spec/models/kubernetes_node_pool_properties_spec.rb +0 -144
- data/spec/models/kubernetes_node_pool_spec.rb +0 -62
- data/spec/models/kubernetes_node_pools_spec.rb +0 -56
- data/spec/models/kubernetes_node_properties_spec.rb +0 -52
- data/spec/models/kubernetes_node_spec.rb +0 -62
- data/spec/models/kubernetes_nodes_spec.rb +0 -56
- data/spec/models/label_properties_spec.rb +0 -58
- data/spec/models/label_resource_properties_spec.rb +0 -40
- data/spec/models/label_resource_spec.rb +0 -62
- data/spec/models/label_resources_spec.rb +0 -74
- data/spec/models/label_spec.rb +0 -62
- data/spec/models/labels_spec.rb +0 -56
- data/spec/models/lan_entities_spec.rb +0 -34
- data/spec/models/lan_nics_spec.rb +0 -70
- data/spec/models/lan_post_spec.rb +0 -64
- data/spec/models/lan_properties_post_spec.rb +0 -52
- data/spec/models/lan_properties_spec.rb +0 -52
- data/spec/models/lan_spec.rb +0 -64
- data/spec/models/lans_spec.rb +0 -70
- data/spec/models/loadbalancer_entities_spec.rb +0 -34
- data/spec/models/loadbalancer_properties_spec.rb +0 -46
- data/spec/models/loadbalancer_spec.rb +0 -64
- data/spec/models/loadbalancers_spec.rb +0 -70
- data/spec/models/location_properties_spec.rb +0 -46
- data/spec/models/location_spec.rb +0 -58
- data/spec/models/locations_spec.rb +0 -52
- data/spec/models/nic_entities_spec.rb +0 -34
- data/spec/models/nic_properties_spec.rb +0 -70
- data/spec/models/nic_spec.rb +0 -64
- data/spec/models/nics_spec.rb +0 -70
- data/spec/models/no_state_meta_data_spec.rb +0 -70
- data/spec/models/pagination_links_spec.rb +0 -46
- data/spec/models/peer_spec.rb +0 -58
- data/spec/models/private_cross_connect_properties_spec.rb +0 -52
- data/spec/models/private_cross_connect_spec.rb +0 -58
- data/spec/models/private_cross_connects_spec.rb +0 -52
- data/spec/models/request_metadata_spec.rb +0 -52
- data/spec/models/request_properties_spec.rb +0 -52
- data/spec/models/request_spec.rb +0 -58
- data/spec/models/request_status_metadata_spec.rb +0 -56
- data/spec/models/request_status_spec.rb +0 -52
- data/spec/models/request_target_spec.rb +0 -44
- data/spec/models/requests_spec.rb +0 -70
- data/spec/models/resource_entities_spec.rb +0 -34
- data/spec/models/resource_groups_spec.rb +0 -52
- data/spec/models/resource_limits_spec.rb +0 -130
- data/spec/models/resource_properties_spec.rb +0 -40
- data/spec/models/resource_reference_spec.rb +0 -46
- data/spec/models/resource_spec.rb +0 -64
- data/spec/models/resources_spec.rb +0 -52
- data/spec/models/resources_users_spec.rb +0 -52
- data/spec/models/s3_bucket_spec.rb +0 -34
- data/spec/models/s3_key_metadata_spec.rb +0 -40
- data/spec/models/s3_key_properties_spec.rb +0 -40
- data/spec/models/s3_key_spec.rb +0 -58
- data/spec/models/s3_keys_spec.rb +0 -52
- data/spec/models/s3_object_storage_sso_spec.rb +0 -34
- data/spec/models/server_entities_spec.rb +0 -46
- data/spec/models/server_properties_spec.rb +0 -84
- data/spec/models/server_spec.rb +0 -64
- data/spec/models/servers_spec.rb +0 -70
- data/spec/models/snapshot_properties_spec.rb +0 -128
- data/spec/models/snapshot_spec.rb +0 -58
- data/spec/models/snapshots_spec.rb +0 -52
- data/spec/models/type_spec.rb +0 -28
- data/spec/models/user_metadata_spec.rb +0 -46
- data/spec/models/user_post_spec.rb +0 -34
- data/spec/models/user_properties_post_spec.rb +0 -76
- data/spec/models/user_properties_put_spec.rb +0 -70
- data/spec/models/user_properties_spec.rb +0 -76
- data/spec/models/user_put_spec.rb +0 -40
- data/spec/models/user_spec.rb +0 -64
- data/spec/models/users_entities_spec.rb +0 -40
- data/spec/models/users_spec.rb +0 -70
- data/spec/models/volume_properties_spec.rb +0 -158
- data/spec/models/volume_spec.rb +0 -58
- data/spec/models/volumes_spec.rb +0 -70
@@ -15,35 +15,49 @@ require 'time'
|
|
15
15
|
|
16
16
|
module Ionoscloud
|
17
17
|
class FirewallRules
|
18
|
+
|
18
19
|
# The resource's unique identifier
|
19
20
|
attr_accessor :id
|
20
21
|
|
22
|
+
|
21
23
|
# The type of object that has been created
|
22
24
|
attr_accessor :type
|
23
25
|
|
26
|
+
|
24
27
|
# URL to the object representation (absolute path)
|
25
28
|
attr_accessor :href
|
26
29
|
|
30
|
+
|
27
31
|
# Array of items in that collection
|
28
32
|
attr_accessor :items
|
29
33
|
|
34
|
+
|
30
35
|
# the offset (if specified in the request)
|
31
36
|
attr_accessor :offset
|
32
37
|
|
38
|
+
|
33
39
|
# the limit (if specified in the request)
|
34
40
|
attr_accessor :limit
|
35
41
|
|
42
|
+
|
36
43
|
attr_accessor :_links
|
37
44
|
|
38
45
|
# Attribute mapping from ruby-style variable name to JSON key.
|
39
46
|
def self.attribute_map
|
40
47
|
{
|
48
|
+
|
41
49
|
:'id' => :'id',
|
50
|
+
|
42
51
|
:'type' => :'type',
|
52
|
+
|
43
53
|
:'href' => :'href',
|
54
|
+
|
44
55
|
:'items' => :'items',
|
56
|
+
|
45
57
|
:'offset' => :'offset',
|
58
|
+
|
46
59
|
:'limit' => :'limit',
|
60
|
+
|
47
61
|
:'_links' => :'_links'
|
48
62
|
}
|
49
63
|
end
|
@@ -56,12 +70,19 @@ module Ionoscloud
|
|
56
70
|
# Attribute type mapping.
|
57
71
|
def self.openapi_types
|
58
72
|
{
|
73
|
+
|
59
74
|
:'id' => :'String',
|
75
|
+
|
60
76
|
:'type' => :'Type',
|
77
|
+
|
61
78
|
:'href' => :'String',
|
79
|
+
|
62
80
|
:'items' => :'Array<FirewallRule>',
|
81
|
+
|
63
82
|
:'offset' => :'Float',
|
83
|
+
|
64
84
|
:'limit' => :'Float',
|
85
|
+
|
65
86
|
:'_links' => :'PaginationLinks'
|
66
87
|
}
|
67
88
|
end
|
@@ -69,6 +90,13 @@ module Ionoscloud
|
|
69
90
|
# List of attributes with nullable: true
|
70
91
|
def self.openapi_nullable
|
71
92
|
Set.new([
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
|
72
100
|
])
|
73
101
|
end
|
74
102
|
|
@@ -86,33 +114,38 @@ module Ionoscloud
|
|
86
114
|
end
|
87
115
|
h[k.to_sym] = v
|
88
116
|
}
|
117
|
+
|
89
118
|
|
90
119
|
if attributes.key?(:'id')
|
91
120
|
self.id = attributes[:'id']
|
92
121
|
end
|
93
122
|
|
123
|
+
|
94
124
|
if attributes.key?(:'type')
|
95
125
|
self.type = attributes[:'type']
|
96
126
|
end
|
97
127
|
|
128
|
+
|
98
129
|
if attributes.key?(:'href')
|
99
130
|
self.href = attributes[:'href']
|
100
131
|
end
|
101
132
|
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
end
|
133
|
+
|
134
|
+
if attributes.key?(:'items') && (value = attributes[:'items']).is_a?(Array)
|
135
|
+
self.items = value
|
106
136
|
end
|
107
137
|
|
138
|
+
|
108
139
|
if attributes.key?(:'offset')
|
109
140
|
self.offset = attributes[:'offset']
|
110
141
|
end
|
111
142
|
|
143
|
+
|
112
144
|
if attributes.key?(:'limit')
|
113
145
|
self.limit = attributes[:'limit']
|
114
146
|
end
|
115
147
|
|
148
|
+
|
116
149
|
if attributes.key?(:'_links')
|
117
150
|
self._links = attributes[:'_links']
|
118
151
|
end
|
@@ -122,27 +155,48 @@ module Ionoscloud
|
|
122
155
|
# @return Array for valid properties with the reasons
|
123
156
|
def list_invalid_properties
|
124
157
|
invalid_properties = Array.new
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
125
165
|
invalid_properties
|
126
166
|
end
|
127
167
|
|
128
168
|
# Check to see if the all the properties in the model are valid
|
129
169
|
# @return true if the model is valid
|
130
170
|
def valid?
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
|
131
178
|
true
|
132
179
|
end
|
133
180
|
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
|
134
188
|
# Checks equality by comparing each attribute.
|
135
189
|
# @param [Object] Object to be compared
|
136
190
|
def ==(o)
|
137
191
|
return true if self.equal?(o)
|
138
192
|
self.class == o.class &&
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
193
|
+
id == o.id &&
|
194
|
+
type == o.type &&
|
195
|
+
href == o.href &&
|
196
|
+
items == o.items &&
|
197
|
+
offset == o.offset &&
|
198
|
+
limit == o.limit &&
|
199
|
+
_links == o._links
|
146
200
|
end
|
147
201
|
|
148
202
|
# @see the `==` method
|
@@ -15,30 +15,39 @@ require 'time'
|
|
15
15
|
|
16
16
|
module Ionoscloud
|
17
17
|
class FirewallruleProperties
|
18
|
+
|
18
19
|
# A name of that resource
|
19
20
|
attr_accessor :name
|
20
21
|
|
22
|
+
|
21
23
|
# The protocol for the rule. Property cannot be modified after creation (disallowed in update requests)
|
22
24
|
attr_accessor :protocol
|
23
25
|
|
26
|
+
|
24
27
|
# Only traffic originating from the respective MAC address is allowed. Valid format: aa:bb:cc:dd:ee:ff. Value null allows all source MAC address
|
25
28
|
attr_accessor :source_mac
|
26
29
|
|
30
|
+
|
27
31
|
# Only traffic originating from the respective IPv4 address is allowed. Value null allows all source IPs
|
28
32
|
attr_accessor :source_ip
|
29
33
|
|
34
|
+
|
30
35
|
# In case the target NIC has multiple IP addresses, only traffic directed to the respective IP address of the NIC is allowed. Value null allows all target IPs
|
31
36
|
attr_accessor :target_ip
|
32
37
|
|
38
|
+
|
33
39
|
# Defines the allowed code (from 0 to 254) if protocol ICMP is chosen. Value null allows all codes
|
34
40
|
attr_accessor :icmp_code
|
35
41
|
|
42
|
+
|
36
43
|
# Defines the allowed type (from 0 to 254) if the protocol ICMP is chosen. Value null allows all types
|
37
44
|
attr_accessor :icmp_type
|
38
45
|
|
46
|
+
|
39
47
|
# Defines the start range of the allowed port (from 1 to 65534) if protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd value null to allow all ports
|
40
48
|
attr_accessor :port_range_start
|
41
49
|
|
50
|
+
|
42
51
|
# Defines the end range of the allowed port (from 1 to 65534) if the protocol TCP or UDP is chosen. Leave portRangeStart and portRangeEnd null to allow all ports
|
43
52
|
attr_accessor :port_range_end
|
44
53
|
|
@@ -67,14 +76,23 @@ module Ionoscloud
|
|
67
76
|
# Attribute mapping from ruby-style variable name to JSON key.
|
68
77
|
def self.attribute_map
|
69
78
|
{
|
79
|
+
|
70
80
|
:'name' => :'name',
|
81
|
+
|
71
82
|
:'protocol' => :'protocol',
|
83
|
+
|
72
84
|
:'source_mac' => :'sourceMac',
|
85
|
+
|
73
86
|
:'source_ip' => :'sourceIp',
|
87
|
+
|
74
88
|
:'target_ip' => :'targetIp',
|
89
|
+
|
75
90
|
:'icmp_code' => :'icmpCode',
|
91
|
+
|
76
92
|
:'icmp_type' => :'icmpType',
|
93
|
+
|
77
94
|
:'port_range_start' => :'portRangeStart',
|
95
|
+
|
78
96
|
:'port_range_end' => :'portRangeEnd'
|
79
97
|
}
|
80
98
|
end
|
@@ -87,14 +105,23 @@ module Ionoscloud
|
|
87
105
|
# Attribute type mapping.
|
88
106
|
def self.openapi_types
|
89
107
|
{
|
108
|
+
|
90
109
|
:'name' => :'String',
|
110
|
+
|
91
111
|
:'protocol' => :'String',
|
112
|
+
|
92
113
|
:'source_mac' => :'String',
|
114
|
+
|
93
115
|
:'source_ip' => :'String',
|
116
|
+
|
94
117
|
:'target_ip' => :'String',
|
118
|
+
|
95
119
|
:'icmp_code' => :'Integer',
|
120
|
+
|
96
121
|
:'icmp_type' => :'Integer',
|
122
|
+
|
97
123
|
:'port_range_start' => :'Integer',
|
124
|
+
|
98
125
|
:'port_range_end' => :'Integer'
|
99
126
|
}
|
100
127
|
end
|
@@ -102,6 +129,15 @@ module Ionoscloud
|
|
102
129
|
# List of attributes with nullable: true
|
103
130
|
def self.openapi_nullable
|
104
131
|
Set.new([
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
|
105
141
|
])
|
106
142
|
end
|
107
143
|
|
@@ -119,39 +155,48 @@ module Ionoscloud
|
|
119
155
|
end
|
120
156
|
h[k.to_sym] = v
|
121
157
|
}
|
158
|
+
|
122
159
|
|
123
160
|
if attributes.key?(:'name')
|
124
161
|
self.name = attributes[:'name']
|
125
162
|
end
|
126
163
|
|
164
|
+
|
127
165
|
if attributes.key?(:'protocol')
|
128
166
|
self.protocol = attributes[:'protocol']
|
129
167
|
end
|
130
168
|
|
169
|
+
|
131
170
|
if attributes.key?(:'source_mac')
|
132
171
|
self.source_mac = attributes[:'source_mac']
|
133
172
|
end
|
134
173
|
|
174
|
+
|
135
175
|
if attributes.key?(:'source_ip')
|
136
176
|
self.source_ip = attributes[:'source_ip']
|
137
177
|
end
|
138
178
|
|
179
|
+
|
139
180
|
if attributes.key?(:'target_ip')
|
140
181
|
self.target_ip = attributes[:'target_ip']
|
141
182
|
end
|
142
183
|
|
184
|
+
|
143
185
|
if attributes.key?(:'icmp_code')
|
144
186
|
self.icmp_code = attributes[:'icmp_code']
|
145
187
|
end
|
146
188
|
|
189
|
+
|
147
190
|
if attributes.key?(:'icmp_type')
|
148
191
|
self.icmp_type = attributes[:'icmp_type']
|
149
192
|
end
|
150
193
|
|
194
|
+
|
151
195
|
if attributes.key?(:'port_range_start')
|
152
196
|
self.port_range_start = attributes[:'port_range_start']
|
153
197
|
end
|
154
198
|
|
199
|
+
|
155
200
|
if attributes.key?(:'port_range_end')
|
156
201
|
self.port_range_end = attributes[:'port_range_end']
|
157
202
|
end
|
@@ -161,25 +206,31 @@ module Ionoscloud
|
|
161
206
|
# @return Array for valid properties with the reasons
|
162
207
|
def list_invalid_properties
|
163
208
|
invalid_properties = Array.new
|
209
|
+
|
210
|
+
|
164
211
|
if @protocol.nil?
|
165
212
|
invalid_properties.push('invalid value for "protocol", protocol cannot be nil.')
|
166
213
|
end
|
167
214
|
|
215
|
+
|
168
216
|
pattern = Regexp.new(/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/)
|
169
217
|
if !@source_mac.nil? && @source_mac !~ pattern
|
170
218
|
invalid_properties.push("invalid value for \"source_mac\", must conform to the pattern #{pattern}.")
|
171
219
|
end
|
172
220
|
|
221
|
+
|
173
222
|
pattern = Regexp.new(/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/)
|
174
223
|
if !@source_ip.nil? && @source_ip !~ pattern
|
175
224
|
invalid_properties.push("invalid value for \"source_ip\", must conform to the pattern #{pattern}.")
|
176
225
|
end
|
177
226
|
|
227
|
+
|
178
228
|
pattern = Regexp.new(/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/)
|
179
229
|
if !@target_ip.nil? && @target_ip !~ pattern
|
180
230
|
invalid_properties.push("invalid value for \"target_ip\", must conform to the pattern #{pattern}.")
|
181
231
|
end
|
182
232
|
|
233
|
+
|
183
234
|
if !@icmp_code.nil? && @icmp_code > 254
|
184
235
|
invalid_properties.push('invalid value for "icmp_code", must be smaller than or equal to 254.')
|
185
236
|
end
|
@@ -188,6 +239,7 @@ module Ionoscloud
|
|
188
239
|
invalid_properties.push('invalid value for "icmp_code", must be greater than or equal to 0.')
|
189
240
|
end
|
190
241
|
|
242
|
+
|
191
243
|
if !@icmp_type.nil? && @icmp_type > 254
|
192
244
|
invalid_properties.push('invalid value for "icmp_type", must be smaller than or equal to 254.')
|
193
245
|
end
|
@@ -196,6 +248,7 @@ module Ionoscloud
|
|
196
248
|
invalid_properties.push('invalid value for "icmp_type", must be greater than or equal to 0.')
|
197
249
|
end
|
198
250
|
|
251
|
+
|
199
252
|
if !@port_range_start.nil? && @port_range_start > 65534
|
200
253
|
invalid_properties.push('invalid value for "port_range_start", must be smaller than or equal to 65534.')
|
201
254
|
end
|
@@ -204,6 +257,7 @@ module Ionoscloud
|
|
204
257
|
invalid_properties.push('invalid value for "port_range_start", must be greater than or equal to 1.')
|
205
258
|
end
|
206
259
|
|
260
|
+
|
207
261
|
if !@port_range_end.nil? && @port_range_end > 65534
|
208
262
|
invalid_properties.push('invalid value for "port_range_end", must be smaller than or equal to 65534.')
|
209
263
|
end
|
@@ -218,23 +272,34 @@ module Ionoscloud
|
|
218
272
|
# Check to see if the all the properties in the model are valid
|
219
273
|
# @return true if the model is valid
|
220
274
|
def valid?
|
275
|
+
|
276
|
+
|
221
277
|
return false if @protocol.nil?
|
222
278
|
protocol_validator = EnumAttributeValidator.new('String', ["TCP", "UDP", "ICMP", "ANY"])
|
223
279
|
return false unless protocol_validator.valid?(@protocol)
|
280
|
+
|
224
281
|
return false if !@source_mac.nil? && @source_mac !~ Regexp.new(/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/)
|
282
|
+
|
225
283
|
return false if !@source_ip.nil? && @source_ip !~ Regexp.new(/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/)
|
284
|
+
|
226
285
|
return false if !@target_ip.nil? && @target_ip !~ Regexp.new(/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/)
|
286
|
+
|
227
287
|
return false if !@icmp_code.nil? && @icmp_code > 254
|
228
288
|
return false if !@icmp_code.nil? && @icmp_code < 0
|
289
|
+
|
229
290
|
return false if !@icmp_type.nil? && @icmp_type > 254
|
230
291
|
return false if !@icmp_type.nil? && @icmp_type < 0
|
292
|
+
|
231
293
|
return false if !@port_range_start.nil? && @port_range_start > 65534
|
232
294
|
return false if !@port_range_start.nil? && @port_range_start < 1
|
295
|
+
|
233
296
|
return false if !@port_range_end.nil? && @port_range_end > 65534
|
234
297
|
return false if !@port_range_end.nil? && @port_range_end < 1
|
235
298
|
true
|
236
299
|
end
|
237
300
|
|
301
|
+
|
302
|
+
|
238
303
|
# Custom attribute writer method checking allowed values (enum).
|
239
304
|
# @param [Object] protocol Object to be assigned
|
240
305
|
def protocol=(protocol)
|
@@ -245,6 +310,7 @@ module Ionoscloud
|
|
245
310
|
@protocol = protocol
|
246
311
|
end
|
247
312
|
|
313
|
+
|
248
314
|
# Custom attribute writer method with validation
|
249
315
|
# @param [Object] source_mac Value to be assigned
|
250
316
|
def source_mac=(source_mac)
|
@@ -256,6 +322,7 @@ module Ionoscloud
|
|
256
322
|
@source_mac = source_mac
|
257
323
|
end
|
258
324
|
|
325
|
+
|
259
326
|
# Custom attribute writer method with validation
|
260
327
|
# @param [Object] source_ip Value to be assigned
|
261
328
|
def source_ip=(source_ip)
|
@@ -267,6 +334,7 @@ module Ionoscloud
|
|
267
334
|
@source_ip = source_ip
|
268
335
|
end
|
269
336
|
|
337
|
+
|
270
338
|
# Custom attribute writer method with validation
|
271
339
|
# @param [Object] target_ip Value to be assigned
|
272
340
|
def target_ip=(target_ip)
|
@@ -278,6 +346,7 @@ module Ionoscloud
|
|
278
346
|
@target_ip = target_ip
|
279
347
|
end
|
280
348
|
|
349
|
+
|
281
350
|
# Custom attribute writer method with validation
|
282
351
|
# @param [Object] icmp_code Value to be assigned
|
283
352
|
def icmp_code=(icmp_code)
|
@@ -292,6 +361,7 @@ module Ionoscloud
|
|
292
361
|
@icmp_code = icmp_code
|
293
362
|
end
|
294
363
|
|
364
|
+
|
295
365
|
# Custom attribute writer method with validation
|
296
366
|
# @param [Object] icmp_type Value to be assigned
|
297
367
|
def icmp_type=(icmp_type)
|
@@ -306,6 +376,7 @@ module Ionoscloud
|
|
306
376
|
@icmp_type = icmp_type
|
307
377
|
end
|
308
378
|
|
379
|
+
|
309
380
|
# Custom attribute writer method with validation
|
310
381
|
# @param [Object] port_range_start Value to be assigned
|
311
382
|
def port_range_start=(port_range_start)
|
@@ -320,6 +391,7 @@ module Ionoscloud
|
|
320
391
|
@port_range_start = port_range_start
|
321
392
|
end
|
322
393
|
|
394
|
+
|
323
395
|
# Custom attribute writer method with validation
|
324
396
|
# @param [Object] port_range_end Value to be assigned
|
325
397
|
def port_range_end=(port_range_end)
|
@@ -339,15 +411,15 @@ module Ionoscloud
|
|
339
411
|
def ==(o)
|
340
412
|
return true if self.equal?(o)
|
341
413
|
self.class == o.class &&
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
414
|
+
name == o.name &&
|
415
|
+
protocol == o.protocol &&
|
416
|
+
source_mac == o.source_mac &&
|
417
|
+
source_ip == o.source_ip &&
|
418
|
+
target_ip == o.target_ip &&
|
419
|
+
icmp_code == o.icmp_code &&
|
420
|
+
icmp_type == o.icmp_type &&
|
421
|
+
port_range_start == o.port_range_start &&
|
422
|
+
port_range_end == o.port_range_end
|
351
423
|
end
|
352
424
|
|
353
425
|
# @see the `==` method
|
@@ -15,26 +15,36 @@ require 'time'
|
|
15
15
|
|
16
16
|
module Ionoscloud
|
17
17
|
class Group
|
18
|
+
|
18
19
|
# The resource's unique identifier
|
19
20
|
attr_accessor :id
|
20
21
|
|
22
|
+
|
21
23
|
# The type of the resource
|
22
24
|
attr_accessor :type
|
23
25
|
|
26
|
+
|
24
27
|
# URL to the object representation (absolute path)
|
25
28
|
attr_accessor :href
|
26
29
|
|
30
|
+
|
27
31
|
attr_accessor :properties
|
28
32
|
|
33
|
+
|
29
34
|
attr_accessor :entities
|
30
35
|
|
31
36
|
# Attribute mapping from ruby-style variable name to JSON key.
|
32
37
|
def self.attribute_map
|
33
38
|
{
|
39
|
+
|
34
40
|
:'id' => :'id',
|
41
|
+
|
35
42
|
:'type' => :'type',
|
43
|
+
|
36
44
|
:'href' => :'href',
|
45
|
+
|
37
46
|
:'properties' => :'properties',
|
47
|
+
|
38
48
|
:'entities' => :'entities'
|
39
49
|
}
|
40
50
|
end
|
@@ -47,10 +57,15 @@ module Ionoscloud
|
|
47
57
|
# Attribute type mapping.
|
48
58
|
def self.openapi_types
|
49
59
|
{
|
60
|
+
|
50
61
|
:'id' => :'String',
|
62
|
+
|
51
63
|
:'type' => :'Type',
|
64
|
+
|
52
65
|
:'href' => :'String',
|
66
|
+
|
53
67
|
:'properties' => :'GroupProperties',
|
68
|
+
|
54
69
|
:'entities' => :'GroupEntities'
|
55
70
|
}
|
56
71
|
end
|
@@ -58,6 +73,11 @@ module Ionoscloud
|
|
58
73
|
# List of attributes with nullable: true
|
59
74
|
def self.openapi_nullable
|
60
75
|
Set.new([
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
61
81
|
])
|
62
82
|
end
|
63
83
|
|
@@ -75,23 +95,28 @@ module Ionoscloud
|
|
75
95
|
end
|
76
96
|
h[k.to_sym] = v
|
77
97
|
}
|
98
|
+
|
78
99
|
|
79
100
|
if attributes.key?(:'id')
|
80
101
|
self.id = attributes[:'id']
|
81
102
|
end
|
82
103
|
|
104
|
+
|
83
105
|
if attributes.key?(:'type')
|
84
106
|
self.type = attributes[:'type']
|
85
107
|
end
|
86
108
|
|
109
|
+
|
87
110
|
if attributes.key?(:'href')
|
88
111
|
self.href = attributes[:'href']
|
89
112
|
end
|
90
113
|
|
114
|
+
|
91
115
|
if attributes.key?(:'properties')
|
92
116
|
self.properties = attributes[:'properties']
|
93
117
|
end
|
94
118
|
|
119
|
+
|
95
120
|
if attributes.key?(:'entities')
|
96
121
|
self.entities = attributes[:'entities']
|
97
122
|
end
|
@@ -101,30 +126,45 @@ module Ionoscloud
|
|
101
126
|
# @return Array for valid properties with the reasons
|
102
127
|
def list_invalid_properties
|
103
128
|
invalid_properties = Array.new
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
|
104
133
|
if @properties.nil?
|
105
134
|
invalid_properties.push('invalid value for "properties", properties cannot be nil.')
|
106
135
|
end
|
107
136
|
|
137
|
+
|
108
138
|
invalid_properties
|
109
139
|
end
|
110
140
|
|
111
141
|
# Check to see if the all the properties in the model are valid
|
112
142
|
# @return true if the model is valid
|
113
143
|
def valid?
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
|
114
148
|
return false if @properties.nil?
|
149
|
+
|
115
150
|
true
|
116
151
|
end
|
117
152
|
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
|
118
158
|
# Checks equality by comparing each attribute.
|
119
159
|
# @param [Object] Object to be compared
|
120
160
|
def ==(o)
|
121
161
|
return true if self.equal?(o)
|
122
162
|
self.class == o.class &&
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
163
|
+
id == o.id &&
|
164
|
+
type == o.type &&
|
165
|
+
href == o.href &&
|
166
|
+
properties == o.properties &&
|
167
|
+
entities == o.entities
|
128
168
|
end
|
129
169
|
|
130
170
|
# @see the `==` method
|