netbox-client-ruby 0.5.3 → 0.5.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 48958aa3e4cf9397ae5e5a3cafa9f86231222e034d36c63cf474d2ab5d2d45a9
4
- data.tar.gz: f07d74e40655d6af3ec1d716ec84b51c4da22ea6d5fc7327bd6bd93b4e72c401
3
+ metadata.gz: dfc4b8770c7433a268f229c7056fa6e8e551c46e61df9d779842a16781d10608
4
+ data.tar.gz: a767490176d8a2246622ebb357bcf85a2a6d7f5a86890578c711f86980f6321c
5
5
  SHA512:
6
- metadata.gz: 0130beda3ec3ccac755a61c96cad85b5f3371c8ce1bd1e2f7bb4c66e36b97495cec08f109a137ea74f1536a593aea250489e5f6ac5073381c8a0675154220bbc
7
- data.tar.gz: 6f571689fecc43e4517c126365b15e7c1bdab19f29152a834abfdb6f2bcda42eafc92ceb43512641542aa041976804a4af906cc85810a4bbe15fd850678f0af3
6
+ metadata.gz: bc57418ec2f35aa192dc004f26edb64588a67b89672bcf0ed8804ea9cfe26c74d410516c2af524d5b165a02b079d050e29be01690a85d778d75d822d4012d97c
7
+ data.tar.gz: afbd55c916453c52231fad8ed1e6f30747c0aa60a4f3ddd267fd1f8e3e457f4b31e808b33d1b52ffad4b629ffcd8e58bd77774724a9b74bfbb8d4ac4094afb9f
@@ -14,7 +14,7 @@ jobs:
14
14
  fail-fast: false
15
15
  matrix:
16
16
  os: [ubuntu-latest]
17
- ruby: [2.5, 2.6, 2.7]
17
+ ruby: [2.6, 2.7, 3.0]
18
18
  runs-on: ${{ matrix.os }}
19
19
  steps:
20
20
  - uses: actions/checkout@v2
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.3
1
+ 0.5.7
@@ -29,6 +29,7 @@ module NetboxClientRuby
29
29
  primary_ip4: proc { |raw_data| IPAM::IpAddress.new raw_data['id'] },
30
30
  primary_ip6: proc { |raw_data| IPAM::IpAddress.new raw_data['id'] },
31
31
  virtual_chassis: proc { |raw_data| DCIM::VirtualChassis.new raw_data['id'] },
32
+ tags: proc { |raw_data| Extras::Tag.new raw_data['id'] },
32
33
  )
33
34
  end
34
35
  end
@@ -0,0 +1,21 @@
1
+ require 'netbox_client_ruby/entities'
2
+ require 'netbox_client_ruby/api/extras/journal_entry'
3
+
4
+ module NetboxClientRuby
5
+ module Extras
6
+ class JournalEntries
7
+ include Entities
8
+
9
+ path 'extras/journal-entries.json'
10
+ data_key 'results'
11
+ count_key 'count'
12
+ entity_creator :entity_creator
13
+
14
+ private
15
+
16
+ def entity_creator(raw_entity)
17
+ JournalEntry.new raw_entity['id']
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,14 @@
1
+ require 'netbox_client_ruby/entity'
2
+
3
+ module NetboxClientRuby
4
+ module Extras
5
+ class JournalEntry
6
+ include Entity
7
+
8
+ id id: :id
9
+ deletable true
10
+ path 'extras/journal-entries/:id.json'
11
+ creation_path 'extras/journal-entries/'
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ require 'netbox_client_ruby/entity'
2
+
3
+ module NetboxClientRuby
4
+ module Extras
5
+ class Tag
6
+ include Entity
7
+
8
+ id id: :id
9
+ deletable true
10
+ path 'extras/tags/:id.json'
11
+ creation_path 'extras/tags/'
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,21 @@
1
+ require 'netbox_client_ruby/entities'
2
+ require 'netbox_client_ruby/api/extras/tag'
3
+
4
+ module NetboxClientRuby
5
+ module Extras
6
+ class Tags
7
+ include Entities
8
+
9
+ path 'extras/tags.json'
10
+ data_key 'results'
11
+ count_key 'count'
12
+ entity_creator :entity_creator
13
+
14
+ private
15
+
16
+ def entity_creator(raw_entity)
17
+ Tag.new raw_entity['id']
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,24 @@
1
+ require 'netbox_client_ruby/api/extras/journal_entry'
2
+ require 'netbox_client_ruby/api/extras/journal_entries'
3
+ require 'netbox_client_ruby/api/extras/tag'
4
+ require 'netbox_client_ruby/api/extras/tags'
5
+
6
+ module NetboxClientRuby
7
+ module Extras
8
+ {
9
+ journal_entries: JournalEntries,
10
+ tags: Tags
11
+ }.each_pair do |method_name, class_name|
12
+ define_method(method_name) { class_name.new }
13
+ module_function(method_name)
14
+ end
15
+
16
+ {
17
+ journal_entry: JournalEntry,
18
+ tag: Tag
19
+ }.each_pair do |method_name, class_name|
20
+ define_method(method_name) { |id| class_name.new id }
21
+ module_function(method_name)
22
+ end
23
+ end
24
+ end
@@ -1,5 +1,6 @@
1
1
  require 'netbox_client_ruby/api/circuits'
2
2
  require 'netbox_client_ruby/api/dcim'
3
+ require 'netbox_client_ruby/api/extras'
3
4
  require 'netbox_client_ruby/api/ipam'
4
5
  require 'netbox_client_ruby/api/secrets'
5
6
  require 'netbox_client_ruby/api/tenancy'
@@ -15,6 +16,10 @@ module NetboxClientRuby
15
16
  NetboxClientRuby::DCIM
16
17
  end
17
18
 
19
+ def self.extras
20
+ NetboxClientRuby::Extras
21
+ end
22
+
18
23
  def self.ipam
19
24
  NetboxClientRuby::IPAM
20
25
  end
@@ -10,7 +10,7 @@ module NetboxClientRuby
10
10
  }.freeze
11
11
 
12
12
  def self.new(options = {})
13
- build_faraday(DEFAULT_OPTIONS.merge(options))
13
+ build_faraday(**DEFAULT_OPTIONS.merge(options))
14
14
  end
15
15
 
16
16
  def self.headers
@@ -13,19 +13,19 @@ module NetboxClientRuby
13
13
  setting :rsa_private_key do
14
14
  # the default is intentionally not `~/.ssh/id_rsa`,
15
15
  # to not accidentally leak someone's main rsa private key
16
- setting :path, '~/.ssh/netbox_rsa'
16
+ setting :path, default: '~/.ssh/netbox_rsa'
17
17
  setting :password
18
18
  end
19
19
  end
20
20
  setting :pagination do
21
- setting :default_limit, 50
22
- setting :max_limit, MAX_SIGNED_64BIT_INT
21
+ setting :default_limit, default: 50
22
+ setting :max_limit, default: MAX_SIGNED_64BIT_INT
23
23
  end
24
24
  end
25
25
 
26
26
  setting :faraday do
27
- setting :adapter, :net_http
27
+ setting :adapter, default: :net_http
28
28
  setting :logger
29
- setting :request_options, open_timeout: 1, timeout: 5
29
+ setting :request_options, default: { open_timeout: 1, timeout: 5 }
30
30
  end
31
31
  end
@@ -23,7 +23,9 @@ Gem::Specification.new do |spec|
23
23
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
24
24
  spec.require_paths = ['lib']
25
25
 
26
- spec.add_runtime_dependency 'dry-configurable', '~> 0.1'
26
+ spec.required_ruby_version = '>= 2.6.0'
27
+
28
+ spec.add_runtime_dependency 'dry-configurable', '~> 0.13.0'
27
29
  spec.add_runtime_dependency 'faraday', '~> 0.11', '>= 0.11.0'
28
30
  spec.add_runtime_dependency 'faraday-detailed_logger', '~> 2.1'
29
31
  spec.add_runtime_dependency 'faraday_middleware', '~> 0.11'
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.5.3
4
+ version: 0.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Mäder
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-02-22 00:00:00.000000000 Z
11
+ date: 2021-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-configurable
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.1'
19
+ version: 0.13.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.1'
26
+ version: 0.13.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: faraday
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -276,6 +276,11 @@ files:
276
276
  - lib/netbox_client_ruby/api/dcim/sites.rb
277
277
  - lib/netbox_client_ruby/api/dcim/virtual_chassis.rb
278
278
  - lib/netbox_client_ruby/api/dcim/virtual_chassis_list.rb
279
+ - lib/netbox_client_ruby/api/extras.rb
280
+ - lib/netbox_client_ruby/api/extras/journal_entries.rb
281
+ - lib/netbox_client_ruby/api/extras/journal_entry.rb
282
+ - lib/netbox_client_ruby/api/extras/tag.rb
283
+ - lib/netbox_client_ruby/api/extras/tags.rb
279
284
  - lib/netbox_client_ruby/api/ipam.rb
280
285
  - lib/netbox_client_ruby/api/ipam/aggregate.rb
281
286
  - lib/netbox_client_ruby/api/ipam/aggregates.rb
@@ -340,14 +345,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
340
345
  requirements:
341
346
  - - ">="
342
347
  - !ruby/object:Gem::Version
343
- version: '0'
348
+ version: 2.6.0
344
349
  required_rubygems_version: !ruby/object:Gem::Requirement
345
350
  requirements:
346
351
  - - ">="
347
352
  - !ruby/object:Gem::Version
348
353
  version: '0'
349
354
  requirements: []
350
- rubygems_version: 3.0.3
355
+ rubygems_version: 3.0.3.1
351
356
  signing_key:
352
357
  specification_version: 4
353
358
  summary: A read/write client for Netbox v2.