netbox-client-ruby 0.10.1 → 0.10.3

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 (127) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rspec.yml +4 -4
  3. data/.gitignore +6 -1
  4. data/Appraisals +17 -0
  5. data/Gemfile +15 -3
  6. data/Rakefile +2 -0
  7. data/bin/setup +1 -4
  8. data/gemfiles/faraday0.gemfile +12 -2
  9. data/gemfiles/faraday1.gemfile +11 -1
  10. data/gemfiles/faraday2.gemfile +11 -1
  11. data/lib/netbox-client-ruby.rb +2 -0
  12. data/lib/netbox_client_ruby/api/circuits/circuit.rb +2 -5
  13. data/lib/netbox_client_ruby/api/circuits/circuit_termination.rb +2 -5
  14. data/lib/netbox_client_ruby/api/circuits/circuit_terminations.rb +1 -2
  15. data/lib/netbox_client_ruby/api/circuits/circuit_type.rb +2 -2
  16. data/lib/netbox_client_ruby/api/circuits/circuit_types.rb +1 -2
  17. data/lib/netbox_client_ruby/api/circuits/circuits.rb +1 -2
  18. data/lib/netbox_client_ruby/api/circuits/provider.rb +2 -2
  19. data/lib/netbox_client_ruby/api/circuits/providers.rb +1 -2
  20. data/lib/netbox_client_ruby/api/circuits.rb +1 -9
  21. data/lib/netbox_client_ruby/api/dcim/console_connection.rb +2 -4
  22. data/lib/netbox_client_ruby/api/dcim/console_connections.rb +1 -2
  23. data/lib/netbox_client_ruby/api/dcim/console_port.rb +2 -4
  24. data/lib/netbox_client_ruby/api/dcim/console_ports.rb +1 -2
  25. data/lib/netbox_client_ruby/api/dcim/console_server_port.rb +2 -4
  26. data/lib/netbox_client_ruby/api/dcim/console_server_ports.rb +1 -2
  27. data/lib/netbox_client_ruby/api/dcim/device.rb +2 -10
  28. data/lib/netbox_client_ruby/api/dcim/device_role.rb +2 -2
  29. data/lib/netbox_client_ruby/api/dcim/device_roles.rb +1 -2
  30. data/lib/netbox_client_ruby/api/dcim/device_type.rb +2 -3
  31. data/lib/netbox_client_ruby/api/dcim/device_types.rb +1 -2
  32. data/lib/netbox_client_ruby/api/dcim/devices.rb +1 -2
  33. data/lib/netbox_client_ruby/api/dcim/interface.rb +2 -3
  34. data/lib/netbox_client_ruby/api/dcim/interface_connection.rb +2 -3
  35. data/lib/netbox_client_ruby/api/dcim/interface_connections.rb +1 -2
  36. data/lib/netbox_client_ruby/api/dcim/interfaces.rb +1 -2
  37. data/lib/netbox_client_ruby/api/dcim/inventory_item.rb +2 -3
  38. data/lib/netbox_client_ruby/api/dcim/inventory_items.rb +1 -2
  39. data/lib/netbox_client_ruby/api/dcim/manufacturer.rb +2 -2
  40. data/lib/netbox_client_ruby/api/dcim/manufacturers.rb +1 -2
  41. data/lib/netbox_client_ruby/api/dcim/platform.rb +2 -3
  42. data/lib/netbox_client_ruby/api/dcim/platforms.rb +1 -2
  43. data/lib/netbox_client_ruby/api/dcim/power_connection.rb +2 -4
  44. data/lib/netbox_client_ruby/api/dcim/power_connections.rb +1 -2
  45. data/lib/netbox_client_ruby/api/dcim/power_outlet.rb +2 -4
  46. data/lib/netbox_client_ruby/api/dcim/power_outlets.rb +1 -2
  47. data/lib/netbox_client_ruby/api/dcim/power_port.rb +2 -4
  48. data/lib/netbox_client_ruby/api/dcim/power_ports.rb +1 -2
  49. data/lib/netbox_client_ruby/api/dcim/rack.rb +2 -2
  50. data/lib/netbox_client_ruby/api/dcim/rack_group.rb +2 -4
  51. data/lib/netbox_client_ruby/api/dcim/rack_groups.rb +1 -2
  52. data/lib/netbox_client_ruby/api/dcim/rack_reservation.rb +2 -4
  53. data/lib/netbox_client_ruby/api/dcim/rack_reservations.rb +1 -2
  54. data/lib/netbox_client_ruby/api/dcim/rack_role.rb +2 -2
  55. data/lib/netbox_client_ruby/api/dcim/rack_roles.rb +1 -2
  56. data/lib/netbox_client_ruby/api/dcim/racks.rb +1 -2
  57. data/lib/netbox_client_ruby/api/dcim/region.rb +2 -2
  58. data/lib/netbox_client_ruby/api/dcim/regions.rb +1 -2
  59. data/lib/netbox_client_ruby/api/dcim/site.rb +2 -3
  60. data/lib/netbox_client_ruby/api/dcim/sites.rb +1 -2
  61. data/lib/netbox_client_ruby/api/dcim/virtual_chassis.rb +2 -3
  62. data/lib/netbox_client_ruby/api/dcim/virtual_chassis_list.rb +1 -2
  63. data/lib/netbox_client_ruby/api/dcim.rb +1 -43
  64. data/lib/netbox_client_ruby/api/extras/config_context.rb +2 -2
  65. data/lib/netbox_client_ruby/api/extras/config_contexts.rb +1 -2
  66. data/lib/netbox_client_ruby/api/extras/journal_entries.rb +1 -2
  67. data/lib/netbox_client_ruby/api/extras/journal_entry.rb +2 -2
  68. data/lib/netbox_client_ruby/api/extras/tag.rb +2 -2
  69. data/lib/netbox_client_ruby/api/extras/tags.rb +1 -2
  70. data/lib/netbox_client_ruby/api/extras.rb +1 -6
  71. data/lib/netbox_client_ruby/api/ipam/aggregate.rb +2 -3
  72. data/lib/netbox_client_ruby/api/ipam/aggregates.rb +1 -2
  73. data/lib/netbox_client_ruby/api/ipam/ip_address.rb +4 -12
  74. data/lib/netbox_client_ruby/api/ipam/ip_addresses.rb +1 -2
  75. data/lib/netbox_client_ruby/api/ipam/ip_range.rb +2 -6
  76. data/lib/netbox_client_ruby/api/ipam/ip_ranges.rb +1 -2
  77. data/lib/netbox_client_ruby/api/ipam/prefix.rb +2 -9
  78. data/lib/netbox_client_ruby/api/ipam/prefixes.rb +1 -2
  79. data/lib/netbox_client_ruby/api/ipam/rir.rb +2 -2
  80. data/lib/netbox_client_ruby/api/ipam/rirs.rb +1 -2
  81. data/lib/netbox_client_ruby/api/ipam/role.rb +2 -2
  82. data/lib/netbox_client_ruby/api/ipam/roles.rb +1 -2
  83. data/lib/netbox_client_ruby/api/ipam/service.rb +2 -3
  84. data/lib/netbox_client_ruby/api/ipam/services.rb +1 -2
  85. data/lib/netbox_client_ruby/api/ipam/vlan.rb +2 -6
  86. data/lib/netbox_client_ruby/api/ipam/vlan_group.rb +2 -3
  87. data/lib/netbox_client_ruby/api/ipam/vlan_groups.rb +1 -2
  88. data/lib/netbox_client_ruby/api/ipam/vlans.rb +1 -2
  89. data/lib/netbox_client_ruby/api/ipam/vrf.rb +2 -3
  90. data/lib/netbox_client_ruby/api/ipam/vrfs.rb +1 -2
  91. data/lib/netbox_client_ruby/api/ipam.rb +1 -21
  92. data/lib/netbox_client_ruby/api/secrets/rsa_key_pair.rb +1 -3
  93. data/lib/netbox_client_ruby/api/secrets/secret.rb +2 -4
  94. data/lib/netbox_client_ruby/api/secrets/secret_role.rb +2 -4
  95. data/lib/netbox_client_ruby/api/secrets/secret_roles.rb +1 -2
  96. data/lib/netbox_client_ruby/api/secrets/secrets.rb +1 -2
  97. data/lib/netbox_client_ruby/api/secrets/session_key.rb +1 -4
  98. data/lib/netbox_client_ruby/api/secrets.rb +1 -5
  99. data/lib/netbox_client_ruby/api/tenancy/tenant.rb +2 -3
  100. data/lib/netbox_client_ruby/api/tenancy/tenant_group.rb +2 -2
  101. data/lib/netbox_client_ruby/api/tenancy/tenant_groups.rb +1 -2
  102. data/lib/netbox_client_ruby/api/tenancy/tenants.rb +1 -2
  103. data/lib/netbox_client_ruby/api/tenancy.rb +1 -5
  104. data/lib/netbox_client_ruby/api/virtualization/cluster.rb +2 -5
  105. data/lib/netbox_client_ruby/api/virtualization/cluster_group.rb +2 -2
  106. data/lib/netbox_client_ruby/api/virtualization/cluster_groups.rb +1 -2
  107. data/lib/netbox_client_ruby/api/virtualization/cluster_type.rb +2 -2
  108. data/lib/netbox_client_ruby/api/virtualization/cluster_types.rb +1 -2
  109. data/lib/netbox_client_ruby/api/virtualization/clusters.rb +1 -2
  110. data/lib/netbox_client_ruby/api/virtualization/interface.rb +2 -3
  111. data/lib/netbox_client_ruby/api/virtualization/interfaces.rb +1 -2
  112. data/lib/netbox_client_ruby/api/virtualization/virtual_machine.rb +2 -7
  113. data/lib/netbox_client_ruby/api/virtualization/virtual_machines.rb +1 -2
  114. data/lib/netbox_client_ruby/api/virtualization.rb +1 -11
  115. data/lib/netbox_client_ruby/communication.rb +1 -2
  116. data/lib/netbox_client_ruby/connection.rb +1 -19
  117. data/lib/netbox_client_ruby/entities.rb +1 -2
  118. data/lib/netbox_client_ruby/entity.rb +2 -3
  119. data/lib/netbox_client_ruby/error.rb +2 -0
  120. data/lib/netbox_client_ruby.rb +67 -2
  121. data/netbox-client-ruby.gemspec +4 -14
  122. metadata +10 -84
  123. data/Gemfile.lock +0 -117
  124. data/gemfiles/faraday0.gemfile.lock +0 -94
  125. data/gemfiles/faraday1.gemfile.lock +0 -93
  126. data/gemfiles/faraday2.gemfile.lock +0 -101
  127. data/lib/netbox_client_ruby/api.rb +0 -38
@@ -1,6 +1,4 @@
1
- require 'netbox_client_ruby/entity'
2
- require 'netbox_client_ruby/api/dcim/device'
3
- require 'netbox_client_ruby/api/secrets/secret_role'
1
+ # frozen_string_literal: true
4
2
 
5
3
  module NetboxClientRuby
6
4
  module Secrets
@@ -9,7 +7,7 @@ module NetboxClientRuby
9
7
 
10
8
  id id: :id
11
9
  deletable true
12
- path 'secrets/secret-roles/:id.json'
10
+ path 'secrets/secret-roles/:id/'
13
11
  creation_path 'secrets/secret-roles/'
14
12
  end
15
13
  end
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/secrets/secret_role'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Secrets
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/secrets/secret'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Secrets
@@ -1,7 +1,4 @@
1
- require 'openssl'
2
- require 'netbox_client_ruby/entity'
3
- require 'netbox_client_ruby/api/dcim/device'
4
- require 'netbox_client_ruby/api/secrets/secret_role'
1
+ # frozen_string_literal: true
5
2
 
6
3
  module NetboxClientRuby
7
4
  module Secrets
@@ -1,8 +1,4 @@
1
- require 'netbox_client_ruby/api/secrets/rsa_key_pair'
2
- require 'netbox_client_ruby/api/secrets/secret_roles'
3
- require 'netbox_client_ruby/api/secrets/secrets'
4
- require 'netbox_client_ruby/api/secrets/session_key'
5
- require 'netbox_client_ruby/communication'
1
+ # frozen_string_literal: true
6
2
 
7
3
  module NetboxClientRuby
8
4
  module Secrets
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entity'
2
- require 'netbox_client_ruby/api/tenancy/tenant_group'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Tenancy
@@ -8,7 +7,7 @@ module NetboxClientRuby
8
7
 
9
8
  id id: :id
10
9
  deletable true
11
- path 'tenancy/tenants/:id.json'
10
+ path 'tenancy/tenants/:id/'
12
11
  creation_path 'tenancy/tenants/'
13
12
  object_fields group: proc { |raw_data| TenantGroup.new raw_data['id'] }
14
13
  end
@@ -1,4 +1,4 @@
1
- require 'netbox_client_ruby/entity'
1
+ # frozen_string_literal: true
2
2
 
3
3
  module NetboxClientRuby
4
4
  module Tenancy
@@ -7,7 +7,7 @@ module NetboxClientRuby
7
7
 
8
8
  id id: :id
9
9
  deletable true
10
- path 'tenancy/tenant-groups/:id.json'
10
+ path 'tenancy/tenant-groups/:id/'
11
11
  creation_path 'tenancy/tenant-groups/'
12
12
  end
13
13
  end
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/tenancy/tenant_group'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Tenancy
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/tenancy/tenant'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Tenancy
@@ -1,8 +1,4 @@
1
- require 'netbox_client_ruby/api/tenancy/tenant'
2
- require 'netbox_client_ruby/api/tenancy/tenants'
3
- require 'netbox_client_ruby/api/tenancy/tenant_group'
4
- require 'netbox_client_ruby/api/tenancy/tenant_groups'
5
- require 'netbox_client_ruby/communication'
1
+ # frozen_string_literal: true
6
2
 
7
3
  module NetboxClientRuby
8
4
  module Tenancy
@@ -1,7 +1,4 @@
1
- require 'netbox_client_ruby/entity'
2
- require 'netbox_client_ruby/api/virtualization/cluster_group'
3
- require 'netbox_client_ruby/api/virtualization/cluster_type'
4
- require 'netbox_client_ruby/api/dcim/site'
1
+ # frozen_string_literal: true
5
2
 
6
3
  module NetboxClientRuby
7
4
  module Virtualization
@@ -10,7 +7,7 @@ module NetboxClientRuby
10
7
 
11
8
  id id: :id
12
9
  deletable true
13
- path 'virtualization/clusters/:id.json'
10
+ path 'virtualization/clusters/:id/'
14
11
  creation_path 'virtualization/clusters/'
15
12
  object_fields(
16
13
  group: proc { |raw_data| ClusterGroup.new raw_data['id'] },
@@ -1,4 +1,4 @@
1
- require 'netbox_client_ruby/entity'
1
+ # frozen_string_literal: true
2
2
 
3
3
  module NetboxClientRuby
4
4
  module Virtualization
@@ -7,7 +7,7 @@ module NetboxClientRuby
7
7
 
8
8
  id id: :id
9
9
  deletable true
10
- path 'virtualization/cluster-groups/:id.json'
10
+ path 'virtualization/cluster-groups/:id/'
11
11
  creation_path 'virtualization/cluster-groups/'
12
12
  end
13
13
  end
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/virtualization/cluster_group'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Virtualization
@@ -1,4 +1,4 @@
1
- require 'netbox_client_ruby/entity'
1
+ # frozen_string_literal: true
2
2
 
3
3
  module NetboxClientRuby
4
4
  module Virtualization
@@ -7,7 +7,7 @@ module NetboxClientRuby
7
7
 
8
8
  id id: :id
9
9
  deletable true
10
- path 'virtualization/cluster-types/:id.json'
10
+ path 'virtualization/cluster-types/:id/'
11
11
  creation_path 'virtualization/cluster-types/'
12
12
  end
13
13
  end
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/virtualization/cluster_type'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Virtualization
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/virtualization/cluster'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Virtualization
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entity'
2
- require 'netbox_client_ruby/api/virtualization/virtual_machine'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Virtualization
@@ -8,7 +7,7 @@ module NetboxClientRuby
8
7
 
9
8
  id id: :id
10
9
  deletable true
11
- path 'virtualization/interfaces/:id.json'
10
+ path 'virtualization/interfaces/:id/'
12
11
  creation_path 'virtualization/interfaces/'
13
12
  object_fields virtual_machine: proc { |raw_data|
14
13
  VirtualMachine.new raw_data['id']
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/virtualization/interface'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Virtualization
@@ -1,9 +1,4 @@
1
- require 'netbox_client_ruby/entity'
2
- require 'netbox_client_ruby/api/dcim/device_role'
3
- require 'netbox_client_ruby/api/dcim/platform'
4
- require 'netbox_client_ruby/api/ipam/ip_address'
5
- require 'netbox_client_ruby/api/tenancy/tenant'
6
- require 'netbox_client_ruby/api/virtualization/cluster'
1
+ # frozen_string_literal: true
7
2
 
8
3
  module NetboxClientRuby
9
4
  module Virtualization
@@ -12,7 +7,7 @@ module NetboxClientRuby
12
7
 
13
8
  id id: :id
14
9
  deletable true
15
- path 'virtualization/virtual-machines/:id.json'
10
+ path 'virtualization/virtual-machines/:id/'
16
11
  creation_path 'virtualization/virtual-machines/'
17
12
  object_fields(
18
13
  cluster: proc { |raw_data| Cluster.new raw_data['id'] },
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entities'
2
- require 'netbox_client_ruby/api/virtualization/virtual_machine'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Virtualization
@@ -1,14 +1,4 @@
1
- require 'netbox_client_ruby/api/virtualization/cluster_group'
2
- require 'netbox_client_ruby/api/virtualization/cluster_groups'
3
- require 'netbox_client_ruby/api/virtualization/cluster_type'
4
- require 'netbox_client_ruby/api/virtualization/cluster_types'
5
- require 'netbox_client_ruby/api/virtualization/cluster'
6
- require 'netbox_client_ruby/api/virtualization/clusters'
7
- require 'netbox_client_ruby/api/virtualization/interface'
8
- require 'netbox_client_ruby/api/virtualization/interfaces'
9
- require 'netbox_client_ruby/api/virtualization/virtual_machine'
10
- require 'netbox_client_ruby/api/virtualization/virtual_machines'
11
- require 'netbox_client_ruby/communication'
1
+ # frozen_string_literal: true
12
2
 
13
3
  module NetboxClientRuby
14
4
  module Virtualization
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/error'
2
- require 'netbox_client_ruby/connection'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Communication
@@ -1,22 +1,4 @@
1
- require 'faraday'
2
- require 'faraday/detailed_logger'
3
- require 'netbox_client_ruby/error'
4
-
5
- if Faraday::VERSION < '2'
6
- begin
7
- require 'faraday_middleware'
8
- rescue LoadError => e
9
- message = <<~MSG
10
- For the current version of Faraday (#{Faraday::VERSION}), "faraday_middleware"
11
- is a required peer dependency of "netbox-client-ruby". Please install
12
- "faraday_middleware" separately OR upgrade to Faraday 2, in which case,
13
- "faraday_middleware" is not needed to work with "netbox-client-ruby".
14
-
15
- #{e.message}
16
- MSG
17
- raise NetboxClientRuby::Error, message
18
- end
19
- end
1
+ # frozen_string_literal: true
20
2
 
21
3
  module NetboxClientRuby
22
4
  class Connection
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/entity'
2
- require 'netbox_client_ruby/error'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Entities
@@ -1,5 +1,4 @@
1
- require 'netbox_client_ruby/communication'
2
- require 'netbox_client_ruby/error'
1
+ # frozen_string_literal: true
3
2
 
4
3
  module NetboxClientRuby
5
4
  module Entity
@@ -305,7 +304,7 @@ module NetboxClientRuby
305
304
  end
306
305
 
307
306
  def replace_path_variables_in(path)
308
- interpreted_path = path.clone
307
+ interpreted_path = path.dup
309
308
  path.scan(/:([a-zA-Z_][a-zA-Z0-9_]+[!?=]?)/) do |match, *|
310
309
  path_variable_value = send(match)
311
310
  return interpreted_path.gsub! ":#{match}", path_variable_value.to_s unless path_variable_value.nil?
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module NetboxClientRuby
2
4
  class Error < StandardError; end
3
5
  class ClientError < Error; end
@@ -1,6 +1,43 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'dry-configurable'
2
- require 'netbox_client_ruby/error'
3
- require 'netbox_client_ruby/api'
4
+ require 'ipaddress'
5
+ require 'openssl'
6
+
7
+ require 'faraday'
8
+ require 'faraday/detailed_logger'
9
+
10
+ if Faraday::VERSION < '2'
11
+ begin
12
+ require 'faraday_middleware'
13
+ rescue LoadError => e
14
+ message = <<~MSG
15
+ For the current version of Faraday (#{Faraday::VERSION}), "faraday_middleware"
16
+ is a required peer dependency of "netbox-client-ruby". Please install
17
+ "faraday_middleware" separately OR upgrade to Faraday 2, in which case,
18
+ "faraday_middleware" is not needed to work with "netbox-client-ruby".
19
+
20
+ #{e.message}
21
+ MSG
22
+ raise NetboxClientRuby::Error, message
23
+ end
24
+ end
25
+
26
+ require 'zeitwerk'
27
+
28
+ # load zeitwerk
29
+ Zeitwerk::Loader.for_gem.tap do |loader|
30
+ loader.ignore("#{__dir__}/netbox-client-ruby.rb")
31
+ loader.collapse("#{__dir__}/netbox_client_ruby/api")
32
+ loader.inflector.inflect('dcim' => 'DCIM')
33
+ loader.inflector.inflect('ipam' => 'IPAM')
34
+ loader.inflector.inflect('rsa_key_pair' => 'RSAKeyPair')
35
+ # loader.log!
36
+ loader.setup
37
+ end
38
+
39
+ # load gem errors
40
+ require_relative 'netbox_client_ruby/error'
4
41
 
5
42
  module NetboxClientRuby
6
43
  extend Dry::Configurable
@@ -29,4 +66,32 @@ module NetboxClientRuby
29
66
  setting :logger
30
67
  setting :request_options, default: { open_timeout: 1, timeout: 5 }
31
68
  end
69
+
70
+ def self.circuits
71
+ NetboxClientRuby::Circuits
72
+ end
73
+
74
+ def self.dcim
75
+ NetboxClientRuby::DCIM
76
+ end
77
+
78
+ def self.extras
79
+ NetboxClientRuby::Extras
80
+ end
81
+
82
+ def self.ipam
83
+ NetboxClientRuby::IPAM
84
+ end
85
+
86
+ def self.secrets
87
+ NetboxClientRuby::Secrets
88
+ end
89
+
90
+ def self.tenancy
91
+ NetboxClientRuby::Tenancy
92
+ end
93
+
94
+ def self.virtualization
95
+ NetboxClientRuby::Virtualization
96
+ end
32
97
  end
@@ -1,5 +1,4 @@
1
- lib = File.expand_path('lib', __dir__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
1
+ # frozen_string_literal: true
3
2
 
4
3
  Gem::Specification.new do |spec|
5
4
  spec.name = 'netbox-client-ruby'
@@ -9,8 +8,8 @@ Gem::Specification.new do |spec|
9
8
  spec.homepage = 'https://github.com/ninech/netbox-client-ruby'
10
9
  spec.license = 'MIT'
11
10
 
12
- spec.authors = ['Christian Mäder']
13
- spec.email = ['christian.maeder@nine.ch']
11
+ spec.authors = ['Nine Internet Solutions AG']
12
+ spec.email = ['support@nine.ch']
14
13
 
15
14
  if spec.respond_to?(:metadata)
16
15
  spec.metadata['allowed_push_host'] = 'https://rubygems.org'
@@ -19,9 +18,6 @@ Gem::Specification.new do |spec|
19
18
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
20
19
  f.match(%r{^(test|spec|features)/})
21
20
  end
22
- spec.bindir = 'exe'
23
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
24
- spec.require_paths = ['lib']
25
21
 
26
22
  spec.required_ruby_version = '>= 2.7.0'
27
23
 
@@ -30,11 +26,5 @@ Gem::Specification.new do |spec|
30
26
  spec.add_runtime_dependency 'faraday-detailed_logger', '~> 2.1'
31
27
  spec.add_runtime_dependency 'ipaddress', '~> 0.8', '>= 0.8.3'
32
28
  spec.add_runtime_dependency 'openssl', '>= 2.0.5'
33
-
34
- spec.add_development_dependency 'bundler', '~> 2.1'
35
- spec.add_development_dependency 'pry', '~> 0.10'
36
- spec.add_development_dependency 'rake', '~> 13'
37
- spec.add_development_dependency 'rspec', '~> 3.5'
38
- spec.add_development_dependency 'rubocop', '~> 0.48'
39
- spec.add_development_dependency 'rubocop-rspec', '~> 1.15'
29
+ spec.add_runtime_dependency 'zeitwerk', '~> 2.6.0'
40
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netbox-client-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.10.3
5
5
  platform: ruby
6
6
  authors:
7
- - Christian Mäder
7
+ - Nine Internet Solutions AG
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-22 00:00:00.000000000 Z
11
+ date: 2024-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-configurable
@@ -93,92 +93,22 @@ dependencies:
93
93
  - !ruby/object:Gem::Version
94
94
  version: 2.0.5
95
95
  - !ruby/object:Gem::Dependency
96
- name: bundler
96
+ name: zeitwerk
97
97
  requirement: !ruby/object:Gem::Requirement
98
98
  requirements:
99
99
  - - "~>"
100
100
  - !ruby/object:Gem::Version
101
- version: '2.1'
102
- type: :development
103
- prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- requirements:
106
- - - "~>"
107
- - !ruby/object:Gem::Version
108
- version: '2.1'
109
- - !ruby/object:Gem::Dependency
110
- name: pry
111
- requirement: !ruby/object:Gem::Requirement
112
- requirements:
113
- - - "~>"
114
- - !ruby/object:Gem::Version
115
- version: '0.10'
116
- type: :development
117
- prerelease: false
118
- version_requirements: !ruby/object:Gem::Requirement
119
- requirements:
120
- - - "~>"
121
- - !ruby/object:Gem::Version
122
- version: '0.10'
123
- - !ruby/object:Gem::Dependency
124
- name: rake
125
- requirement: !ruby/object:Gem::Requirement
126
- requirements:
127
- - - "~>"
128
- - !ruby/object:Gem::Version
129
- version: '13'
130
- type: :development
131
- prerelease: false
132
- version_requirements: !ruby/object:Gem::Requirement
133
- requirements:
134
- - - "~>"
135
- - !ruby/object:Gem::Version
136
- version: '13'
137
- - !ruby/object:Gem::Dependency
138
- name: rspec
139
- requirement: !ruby/object:Gem::Requirement
140
- requirements:
141
- - - "~>"
142
- - !ruby/object:Gem::Version
143
- version: '3.5'
144
- type: :development
145
- prerelease: false
146
- version_requirements: !ruby/object:Gem::Requirement
147
- requirements:
148
- - - "~>"
149
- - !ruby/object:Gem::Version
150
- version: '3.5'
151
- - !ruby/object:Gem::Dependency
152
- name: rubocop
153
- requirement: !ruby/object:Gem::Requirement
154
- requirements:
155
- - - "~>"
156
- - !ruby/object:Gem::Version
157
- version: '0.48'
158
- type: :development
159
- prerelease: false
160
- version_requirements: !ruby/object:Gem::Requirement
161
- requirements:
162
- - - "~>"
163
- - !ruby/object:Gem::Version
164
- version: '0.48'
165
- - !ruby/object:Gem::Dependency
166
- name: rubocop-rspec
167
- requirement: !ruby/object:Gem::Requirement
168
- requirements:
169
- - - "~>"
170
- - !ruby/object:Gem::Version
171
- version: '1.15'
172
- type: :development
101
+ version: 2.6.0
102
+ type: :runtime
173
103
  prerelease: false
174
104
  version_requirements: !ruby/object:Gem::Requirement
175
105
  requirements:
176
106
  - - "~>"
177
107
  - !ruby/object:Gem::Version
178
- version: '1.15'
108
+ version: 2.6.0
179
109
  description:
180
110
  email:
181
- - christian.maeder@nine.ch
111
+ - support@nine.ch
182
112
  executables: []
183
113
  extensions: []
184
114
  extra_rdoc_files: []
@@ -189,9 +119,9 @@ files:
189
119
  - ".github/workflows/rspec.yml"
190
120
  - ".gitignore"
191
121
  - ".rspec"
122
+ - Appraisals
192
123
  - Dockerfile
193
124
  - Gemfile
194
- - Gemfile.lock
195
125
  - LICENSE.txt
196
126
  - README.md
197
127
  - Rakefile
@@ -203,14 +133,10 @@ files:
203
133
  - docker/start.test.sh
204
134
  - dump.sql
205
135
  - gemfiles/faraday0.gemfile
206
- - gemfiles/faraday0.gemfile.lock
207
136
  - gemfiles/faraday1.gemfile
208
- - gemfiles/faraday1.gemfile.lock
209
137
  - gemfiles/faraday2.gemfile
210
- - gemfiles/faraday2.gemfile.lock
211
138
  - lib/netbox-client-ruby.rb
212
139
  - lib/netbox_client_ruby.rb
213
- - lib/netbox_client_ruby/api.rb
214
140
  - lib/netbox_client_ruby/api/circuits.rb
215
141
  - lib/netbox_client_ruby/api/circuits/circuit.rb
216
142
  - lib/netbox_client_ruby/api/circuits/circuit_termination.rb