ibm-cloud-sdk 0.1.3 → 0.1.4

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.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/ibm-cloud-sdk.gemspec +1 -0
  4. data/lib/ibm/cloud/sdk.rb +2 -0
  5. data/lib/ibm/cloud/sdk/version.rb +1 -1
  6. data/lib/ibm/cloud/sdk/vpc.rb +128 -0
  7. data/lib/ibm/cloud/sdk/vpc/base_collection.rb +68 -0
  8. data/lib/ibm/cloud/sdk/vpc/base_instance.rb +23 -0
  9. data/lib/ibm/cloud/sdk/vpc/base_vpc.rb +61 -0
  10. data/lib/ibm/cloud/sdk/vpc/cloud_sdk.rb +33 -0
  11. data/lib/ibm/cloud/sdk/vpc/floatingips.rb +20 -0
  12. data/lib/ibm/cloud/sdk/vpc/flowlogcollectors.rb +20 -0
  13. data/lib/ibm/cloud/sdk/vpc/helpers/connection.rb +66 -0
  14. data/lib/ibm/cloud/sdk/vpc/helpers/response.rb +90 -0
  15. data/lib/ibm/cloud/sdk/vpc/ike_policies.rb +24 -0
  16. data/lib/ibm/cloud/sdk/vpc/images.rb +21 -0
  17. data/lib/ibm/cloud/sdk/vpc/instance.rb +36 -0
  18. data/lib/ibm/cloud/sdk/vpc/instance/actions.rb +19 -0
  19. data/lib/ibm/cloud/sdk/vpc/instance/floating_ips.rb +23 -0
  20. data/lib/ibm/cloud/sdk/vpc/instance/network_interfaces.rb +53 -0
  21. data/lib/ibm/cloud/sdk/vpc/instance/profiles.rb +34 -0
  22. data/lib/ibm/cloud/sdk/vpc/instance/volume_attachments.rb +46 -0
  23. data/lib/ibm/cloud/sdk/vpc/instances.rb +20 -0
  24. data/lib/ibm/cloud/sdk/vpc/ipsec_policies.rb +24 -0
  25. data/lib/ibm/cloud/sdk/vpc/keys.rb +43 -0
  26. data/lib/ibm/cloud/sdk/vpc/load_balancer.rb +23 -0
  27. data/lib/ibm/cloud/sdk/vpc/load_balancer/listeners.rb +30 -0
  28. data/lib/ibm/cloud/sdk/vpc/load_balancer/members.rb +23 -0
  29. data/lib/ibm/cloud/sdk/vpc/load_balancer/policies.rb +30 -0
  30. data/lib/ibm/cloud/sdk/vpc/load_balancer/pools.rb +28 -0
  31. data/lib/ibm/cloud/sdk/vpc/load_balancer/rules.rb +25 -0
  32. data/lib/ibm/cloud/sdk/vpc/load_balancers.rb +19 -0
  33. data/lib/ibm/cloud/sdk/vpc/network_acls.rb +39 -0
  34. data/lib/ibm/cloud/sdk/vpc/operating_systems.rb +21 -0
  35. data/lib/ibm/cloud/sdk/vpc/public_gateways.rb +21 -0
  36. data/lib/ibm/cloud/sdk/vpc/regions.rb +35 -0
  37. data/lib/ibm/cloud/sdk/vpc/security_groups.rb +48 -0
  38. data/lib/ibm/cloud/sdk/vpc/subnets.rb +21 -0
  39. data/lib/ibm/cloud/sdk/vpc/volume_profiles.rb +21 -0
  40. data/lib/ibm/cloud/sdk/vpc/volumes.rb +21 -0
  41. data/lib/ibm/cloud/sdk/vpc/vpcs.rb +60 -0
  42. data/lib/ibm/cloud/sdk/vpc/vpn_gateway/connections.rb +35 -0
  43. data/lib/ibm/cloud/sdk/vpc/vpn_gateway/local_cidrs.rb +32 -0
  44. data/lib/ibm/cloud/sdk/vpc/vpn_gateway/peer_cidrs.rb +32 -0
  45. data/lib/ibm/cloud/sdk/vpc/vpn_gateways.rb +25 -0
  46. metadata +57 -3
@@ -0,0 +1,35 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ require_relative('local_cidrs')
5
+ require_relative('peer_cidrs')
6
+
7
+ module IBM
8
+ module Cloud
9
+ module SDK
10
+ module VPC
11
+ module VPNGATEWAY
12
+ # A list of Connection
13
+ class Connections < BaseCollection
14
+ def initialize(parent)
15
+ @array_key = 'connections'
16
+ @instance = Connection
17
+ super(parent, @array_key)
18
+ end
19
+ end
20
+
21
+ # A single Connection
22
+ class Connection < BaseInstance
23
+ def local_cidrs
24
+ LocalCIDRs.new(self)
25
+ end
26
+
27
+ def peer_cidrs
28
+ PeerCIDRs.new(self)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,32 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module IBM
5
+ module Cloud
6
+ module SDK
7
+ module VPC
8
+ module VPNGATEWAY
9
+ # A list of Connection
10
+ class LocalCIDRs < BaseCollection
11
+ def initialize(parent)
12
+ @array_key = 'local_cidrs'
13
+ @instance = Connection
14
+ super(parent, @array_key)
15
+ end
16
+
17
+ def instance(cidr_prefix, prefix_length)
18
+ super(self, "#{cidr_prefix}/#{prefix_length}")
19
+ end
20
+ end
21
+
22
+ # A single Connection
23
+ class LocalCIDR < BaseInstance
24
+ def update(payload)
25
+ put(payload)
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module IBM
5
+ module Cloud
6
+ module SDK
7
+ module VPC
8
+ module VPNGATEWAY
9
+ # A list of Connection
10
+ class PeerCIDRs < BaseCollection
11
+ def initialize(parent)
12
+ @array_key = 'peer_cidrs'
13
+ @instance = Connection
14
+ super(parent, @array_key)
15
+ end
16
+
17
+ def instance(cidr_prefix, prefix_length)
18
+ super(self, "#{cidr_prefix}/#{prefix_length}")
19
+ end
20
+ end
21
+
22
+ # A single Connection
23
+ class PeerCIDR < BaseInstance
24
+ def update(payload)
25
+ put(payload)
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module IBM
5
+ module Cloud
6
+ module SDK
7
+ module VPC
8
+ # A list of VPNGateway
9
+ class VPNGateways < BaseCollection
10
+ def initialize(parent)
11
+ super(parent, 'vpn_gateways', child_class: VPNGateway)
12
+ end
13
+ end
14
+
15
+ # A single VPNGateway
16
+ class VPNGateway < BaseInstance
17
+ # Get a lisst of connections asssociated with this gateway.
18
+ def connections
19
+ VPNGATEWAY::Connections.new(self)
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ibm-cloud-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - IBM Cloud Developers
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-09-15 00:00:00.000000000 Z
11
+ date: 2020-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: http
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  description: A Ruby gem for interacting with the various IBM Cloud services.
28
42
  email:
29
43
  executables: []
@@ -50,12 +64,52 @@ files:
50
64
  - lib/ibm/cloud/sdk/resource_controller.rb
51
65
  - lib/ibm/cloud/sdk/resource_controller/resource.rb
52
66
  - lib/ibm/cloud/sdk/version.rb
67
+ - lib/ibm/cloud/sdk/vpc.rb
68
+ - lib/ibm/cloud/sdk/vpc/base_collection.rb
69
+ - lib/ibm/cloud/sdk/vpc/base_instance.rb
70
+ - lib/ibm/cloud/sdk/vpc/base_vpc.rb
71
+ - lib/ibm/cloud/sdk/vpc/cloud_sdk.rb
72
+ - lib/ibm/cloud/sdk/vpc/floatingips.rb
73
+ - lib/ibm/cloud/sdk/vpc/flowlogcollectors.rb
74
+ - lib/ibm/cloud/sdk/vpc/helpers/connection.rb
75
+ - lib/ibm/cloud/sdk/vpc/helpers/response.rb
76
+ - lib/ibm/cloud/sdk/vpc/ike_policies.rb
77
+ - lib/ibm/cloud/sdk/vpc/images.rb
78
+ - lib/ibm/cloud/sdk/vpc/instance.rb
79
+ - lib/ibm/cloud/sdk/vpc/instance/actions.rb
80
+ - lib/ibm/cloud/sdk/vpc/instance/floating_ips.rb
81
+ - lib/ibm/cloud/sdk/vpc/instance/network_interfaces.rb
82
+ - lib/ibm/cloud/sdk/vpc/instance/profiles.rb
83
+ - lib/ibm/cloud/sdk/vpc/instance/volume_attachments.rb
84
+ - lib/ibm/cloud/sdk/vpc/instances.rb
85
+ - lib/ibm/cloud/sdk/vpc/ipsec_policies.rb
86
+ - lib/ibm/cloud/sdk/vpc/keys.rb
87
+ - lib/ibm/cloud/sdk/vpc/load_balancer.rb
88
+ - lib/ibm/cloud/sdk/vpc/load_balancer/listeners.rb
89
+ - lib/ibm/cloud/sdk/vpc/load_balancer/members.rb
90
+ - lib/ibm/cloud/sdk/vpc/load_balancer/policies.rb
91
+ - lib/ibm/cloud/sdk/vpc/load_balancer/pools.rb
92
+ - lib/ibm/cloud/sdk/vpc/load_balancer/rules.rb
93
+ - lib/ibm/cloud/sdk/vpc/load_balancers.rb
94
+ - lib/ibm/cloud/sdk/vpc/network_acls.rb
95
+ - lib/ibm/cloud/sdk/vpc/operating_systems.rb
96
+ - lib/ibm/cloud/sdk/vpc/public_gateways.rb
97
+ - lib/ibm/cloud/sdk/vpc/regions.rb
98
+ - lib/ibm/cloud/sdk/vpc/security_groups.rb
99
+ - lib/ibm/cloud/sdk/vpc/subnets.rb
100
+ - lib/ibm/cloud/sdk/vpc/volume_profiles.rb
101
+ - lib/ibm/cloud/sdk/vpc/volumes.rb
102
+ - lib/ibm/cloud/sdk/vpc/vpcs.rb
103
+ - lib/ibm/cloud/sdk/vpc/vpn_gateway/connections.rb
104
+ - lib/ibm/cloud/sdk/vpc/vpn_gateway/local_cidrs.rb
105
+ - lib/ibm/cloud/sdk/vpc/vpn_gateway/peer_cidrs.rb
106
+ - lib/ibm/cloud/sdk/vpc/vpn_gateways.rb
53
107
  homepage: https://github.com/IBM-Cloud/ibm-cloud-sdk-ruby
54
108
  licenses:
55
109
  - '"Apache-2.0"'
56
110
  metadata:
57
111
  homepage_uri: https://github.com/IBM-Cloud/ibm-cloud-sdk-ruby
58
- changelog_uri: https://github.com/IBM-Cloud/ibm-cloud-sdk-ruby/blob/v0.1.3/CHANGELOG.md
112
+ changelog_uri: https://github.com/IBM-Cloud/ibm-cloud-sdk-ruby/blob/v0.1.4/CHANGELOG.md
59
113
  post_install_message:
60
114
  rdoc_options: []
61
115
  require_paths: