opsviewconfig 0.0.1 → 0.0.2

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/opsviewconfig.rb +14 -1
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 51b8d3c6b9a1dccc2f1afa1487da05047161b3a1
4
- data.tar.gz: baf8ba1bef60a158207e02b89f1f4a1b30f4f69a
3
+ metadata.gz: e8ad0eb5889e77255803ca785d9fb0f209e522ec
4
+ data.tar.gz: 6cdf740f502cfefda5ae0ac60c5d57839c7ddcc8
5
5
  SHA512:
6
- metadata.gz: 27fb4a21cf837bc272673f2891c68ae556bba25b44d51fee31099eaf73a7ba99feac4a3886ffa88fd5afddd13078e114f0dcebbf8d202e3b4093357d6356f567
7
- data.tar.gz: af71352f53cff766ce9b5fd31bb7df94eb6c1d23e9b6ec3ef96197740affa711e6061d71034f055cebb2a7f57878cb195171cd67e8954245ca2321894fed0089
6
+ metadata.gz: b002226b32d68e1106b2eed919c3b795514ad619e9b5feb874064b68da9688eac4e9f6bb92462c679a7a0839bdc0e00fe2ada9242cec5e9e6a7777f5ed6074a3
7
+ data.tar.gz: 538927bc10222af72429d9b80e5c747424c0ef525deb6d3a5129488b16dc144c911652a30a18c2d2c1910a400127b2c88614961d4fd3018cb81621fc88af1059
data/lib/opsviewconfig.rb CHANGED
@@ -1,6 +1,19 @@
1
1
  require 'json'
2
2
  require 'opsview_rest'
3
3
 
4
+
5
+ class Hash
6
+ def sort_by_key(recursive = false, &block)
7
+ self.keys.sort(&block).reduce({}) do |seed, key|
8
+ seed[key] = self[key]
9
+ if recursive && seed[key].is_a?(Hash)
10
+ seed[key] = seed[key].sort_by_key(true, &block)
11
+ end
12
+ seed
13
+ end
14
+ end
15
+ end
16
+
4
17
  class Opsviewconfig
5
18
  def initialize(config)
6
19
  # Connect to opsview and return handler
@@ -32,7 +45,7 @@ class Opsviewconfig
32
45
  resource.delete("id")
33
46
  cleanexport << resource
34
47
  end
35
- return cleanexport
48
+ return cleanexport.sort_by_key(true)
36
49
  end
37
50
 
38
51
  def import(type,filename=nil,folder=nil)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opsviewconfig
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitriy M
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-17 00:00:00.000000000 Z
11
+ date: 2015-12-04 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A simple class to import and export OpsView config
14
14
  email: dmitriy.mar@gmail.com