miab 0.3.2 → 0.4.0
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.
- checksums.yaml +4 -4
 - checksums.yaml.gz.sig +0 -0
 - data.tar.gz.sig +0 -0
 - data/lib/miab.rb +37 -0
 - metadata +6 -6
 - metadata.gz.sig +0 -0
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: a339ac7a434f6d8f59cfacb59a5f70e56c4cbe490712a9ec70bec7992cae9036
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: f44e1bf9f71fe2fc250841c9b69ae4eb62a69176bff014bc8293f23c17b6cf35
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 42d047bc15e959ff24b194063547065875d495f23ccd09f5e7d0f607f326f6a5f9aeef0894c9f90d5459bcc64453d1abdfe5d8031bb8e5389e68181343ef525c
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: c390aebd8577fcbba6569549a69358c673bd85e44ac1b1f5f49fcd904885af78084a0aa76b478796adfcf7a7097af48514b8d5a48ba5f9283473b0994914d3ed
         
     | 
    
        checksums.yaml.gz.sig
    CHANGED
    
    | 
         Binary file 
     | 
    
        data.tar.gz.sig
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/lib/miab.rb
    CHANGED
    
    | 
         @@ -14,6 +14,7 @@ require 'resolv' 
     | 
|
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
            # available commands:
         
     | 
| 
       16 
16 
     | 
    
         
             
            #
         
     | 
| 
      
 17 
     | 
    
         
            +
            # * backup - initiates rsync on the remote machine to be backed up
         
     | 
| 
       17 
18 
     | 
    
         
             
            # * date - returns the system date and time
         
     | 
| 
       18 
19 
     | 
    
         
             
            # * directory_exists? - returns true if the directory exists
         
     | 
| 
       19 
20 
     | 
    
         
             
            # * disk_space - returns the available disk space
         
     | 
| 
         @@ -53,6 +54,31 @@ class Miab 
     | 
|
| 
       53 
54 
     | 
    
         | 
| 
       54 
55 
     | 
    
         
             
                protected
         
     | 
| 
       55 
56 
     | 
    
         | 
| 
      
 57 
     | 
    
         
            +
                # backup 
         
     | 
| 
      
 58 
     | 
    
         
            +
                # e.g. from: /mnt/usbdisk/gem_src/.
         
     | 
| 
      
 59 
     | 
    
         
            +
                #      to: pi@192.168.4.158:backup2020/gem_src/.
         
     | 
| 
      
 60 
     | 
    
         
            +
                #
         
     | 
| 
      
 61 
     | 
    
         
            +
                def backup(from: nil, to: nil)
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
                  if @debug then
         
     | 
| 
      
 64 
     | 
    
         
            +
                    puts 'ready to perform backup' 
         
     | 
| 
      
 65 
     | 
    
         
            +
                    puts "from: %s to: %s" % [from, to]
         
     | 
| 
      
 66 
     | 
    
         
            +
                  end
         
     | 
| 
      
 67 
     | 
    
         
            +
                  
         
     | 
| 
      
 68 
     | 
    
         
            +
                  instructions  = "rsync -akL -e ssh %s %s" % [from, to]
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
                  puts 'instructions: ' + instructions if @debug      
         
     | 
| 
      
 71 
     | 
    
         
            +
                  
         
     | 
| 
      
 72 
     | 
    
         
            +
                  # note: compression is not enabled since this is aimed at 
         
     | 
| 
      
 73 
     | 
    
         
            +
                  #       single board computers which have limited CPU capability
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
                  r = @ssh ? @ssh.exec!(instructions) : `#{instructions}`
         
     | 
| 
      
 76 
     | 
    
         
            +
                  puts 'r: ' + r.inspect if @debug
         
     | 
| 
      
 77 
     | 
    
         
            +
                  
         
     | 
| 
      
 78 
     | 
    
         
            +
                  # since it's running in the background, an empty string will be returned
         
     | 
| 
      
 79 
     | 
    
         
            +
                  
         
     | 
| 
      
 80 
     | 
    
         
            +
                end
         
     | 
| 
      
 81 
     | 
    
         
            +
                
         
     | 
| 
       56 
82 
     | 
    
         
             
                # return the local date and time
         
     | 
| 
       57 
83 
     | 
    
         
             
                #
         
     | 
| 
       58 
84 
     | 
    
         
             
                def date()
         
     | 
| 
         @@ -122,6 +148,15 @@ class Miab 
     | 
|
| 
       122 
148 
     | 
    
         | 
| 
       123 
149 
     | 
    
         
             
                end
         
     | 
| 
       124 
150 
     | 
    
         | 
| 
      
 151 
     | 
    
         
            +
                def exec_success?(instruction, expected)
         
     | 
| 
      
 152 
     | 
    
         
            +
                  
         
     | 
| 
      
 153 
     | 
    
         
            +
                  r = @ssh ? @ssh.exec!(instruction) : `#{instruction}`
         
     | 
| 
      
 154 
     | 
    
         
            +
                  puts 'r: ' + r.inspect if @debug
         
     | 
| 
      
 155 
     | 
    
         
            +
                  
         
     | 
| 
      
 156 
     | 
    
         
            +
                  @results[:exec_success?] = (r =~ /#{expected}/ ? true : r)
         
     | 
| 
      
 157 
     | 
    
         
            +
             
     | 
| 
      
 158 
     | 
    
         
            +
                end  
         
     | 
| 
      
 159 
     | 
    
         
            +
                
         
     | 
| 
       125 
160 
     | 
    
         
             
                def file_exists?(file)
         
     | 
| 
       126 
161 
     | 
    
         | 
| 
       127 
162 
     | 
    
         
             
                  instructions = "test -f #{file}; echo $?"
         
     | 
| 
         @@ -276,6 +311,8 @@ class Miab 
     | 
|
| 
       276 
311 
     | 
    
         
             
                @scroll, @debug, @dns = scroll, debug, dns
         
     | 
| 
       277 
312 
     | 
    
         | 
| 
       278 
313 
     | 
    
         
             
                puts '@dns: ' + @dns.inspect if @debug
         
     | 
| 
      
 314 
     | 
    
         
            +
                
         
     | 
| 
      
 315 
     | 
    
         
            +
                target = [target] if target.is_a? String
         
     | 
| 
       279 
316 
     | 
    
         | 
| 
       280 
317 
     | 
    
         
             
                @nodes = if target then
         
     | 
| 
       281 
318 
     | 
    
         | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: miab
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.4.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - James Robertson
         
     | 
| 
         @@ -35,7 +35,7 @@ cert_chain: 
     | 
|
| 
       35 
35 
     | 
    
         
             
              9irKsAp/hZt3dTbQOtnSlc9XREZZdegwOgu1FEqBqviNIn9R28OR237HExiWXwmw
         
     | 
| 
       36 
36 
     | 
    
         
             
              HDTFIjk8XBqTunABuFUgr4qx
         
     | 
| 
       37 
37 
     | 
    
         
             
              -----END CERTIFICATE-----
         
     | 
| 
       38 
     | 
    
         
            -
            date:  
     | 
| 
      
 38 
     | 
    
         
            +
            date: 2020-08-27 00:00:00.000000000 Z
         
     | 
| 
       39 
39 
     | 
    
         
             
            dependencies:
         
     | 
| 
       40 
40 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       41 
41 
     | 
    
         
             
              name: net-ssh
         
     | 
| 
         @@ -43,20 +43,20 @@ dependencies: 
     | 
|
| 
       43 
43 
     | 
    
         
             
                requirements:
         
     | 
| 
       44 
44 
     | 
    
         
             
                - - ">="
         
     | 
| 
       45 
45 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       46 
     | 
    
         
            -
                    version:  
     | 
| 
      
 46 
     | 
    
         
            +
                    version: 6.1.0
         
     | 
| 
       47 
47 
     | 
    
         
             
                - - "~>"
         
     | 
| 
       48 
48 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       49 
     | 
    
         
            -
                    version: ' 
     | 
| 
      
 49 
     | 
    
         
            +
                    version: '6.1'
         
     | 
| 
       50 
50 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       51 
51 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       52 
52 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       53 
53 
     | 
    
         
             
                requirements:
         
     | 
| 
       54 
54 
     | 
    
         
             
                - - ">="
         
     | 
| 
       55 
55 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       56 
     | 
    
         
            -
                    version:  
     | 
| 
      
 56 
     | 
    
         
            +
                    version: 6.1.0
         
     | 
| 
       57 
57 
     | 
    
         
             
                - - "~>"
         
     | 
| 
       58 
58 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       59 
     | 
    
         
            -
                    version: ' 
     | 
| 
      
 59 
     | 
    
         
            +
                    version: '6.1'
         
     | 
| 
       60 
60 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       61 
61 
     | 
    
         
             
              name: c32
         
     | 
| 
       62 
62 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
    
        metadata.gz.sig
    CHANGED
    
    | 
         Binary file 
     |