miga-base 0.7.16.6 → 0.7.16.12
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
- data/bin/miga +2 -0
- data/lib/miga/cli/action/daemon.rb +1 -0
- data/lib/miga/cli/action/run.rb +3 -0
- data/lib/miga/cli/action/wf.rb +1 -1
- data/lib/miga/daemon.rb +9 -6
- data/lib/miga/remote_dataset.rb +6 -4
- data/lib/miga/version.rb +2 -2
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 1e89d0bc90eef4ca458fbc415cbeff6eaa6c2b07ee4df77268826ecfbe0720df
         | 
| 4 | 
            +
              data.tar.gz: b082d83022262e82d309e8ff70f077fe28cebddacf5b85844547ed24a8a877f7
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: fa0746c6173b1b7a504b6d40ed0a158ef647694970f9222aeeaa5465dcad73f4647894164d0edc823b54dce837410393ac61186a6b217ff5edacbfc81a01591d
         | 
| 7 | 
            +
              data.tar.gz: b8411e7c9fb0f62de20e5a909dbf7b4c998bcb18aa4fa79fbe48dc128292f8983ce1dfae54d9e3082807449b6c5cf9d4a3bb913bc9dde77c1c2d4bab6aa8fe27
         | 
    
        data/bin/miga
    CHANGED
    
    
| @@ -73,6 +73,7 @@ class MiGA::Cli::Action::Daemon < MiGA::Cli::Action | |
| 73 73 | 
             
              end
         | 
| 74 74 |  | 
| 75 75 | 
             
              def perform
         | 
| 76 | 
            +
                cli.operation or raise 'Please specify a daemon operation'
         | 
| 76 77 | 
             
                p = cli.load_project
         | 
| 77 78 | 
             
                d = MiGA::Daemon.new(p, cli[:json])
         | 
| 78 79 | 
             
                dopts = %i[latency maxjobs nodelist ppn shutdown_when_done]
         | 
    
        data/lib/miga/cli/action/run.rb
    CHANGED
    
    | @@ -37,6 +37,9 @@ class MiGA::Cli::Action::Run < MiGA::Cli::Action | |
| 37 37 | 
             
                  cli[:thr] ||= ENV['CORES'].to_i unless ENV['CORES'].nil?
         | 
| 38 38 | 
             
                  cli[:result] = File.basename(cli[:result].to_s, '.bash').to_sym
         | 
| 39 39 | 
             
                end
         | 
| 40 | 
            +
                %i[project dataset result].each do |i|
         | 
| 41 | 
            +
                  cli[i] = nil if cli[i].nil? || cli[i].empty?
         | 
| 42 | 
            +
                end
         | 
| 40 43 |  | 
| 41 44 | 
             
                # Unset dataset if the requested result is for projects
         | 
| 42 45 | 
             
                if (MiGA::Project.RESULT_DIRS.keys + [:p]).include? cli[:result]
         | 
    
        data/lib/miga/cli/action/wf.rb
    CHANGED
    
    | @@ -184,7 +184,7 @@ module MiGA::Cli::Action::Wf | |
| 184 184 | 
             
              def call_cli(cmd)
         | 
| 185 185 | 
             
                cmd << '-v' if cli[:verbose]
         | 
| 186 186 | 
             
                MiGA::MiGA.DEBUG "Cli::Action::Wf.call_cli #{cmd}"
         | 
| 187 | 
            -
                MiGA::Cli.new(cmd.map(&:to_s)).launch
         | 
| 187 | 
            +
                MiGA::Cli.new(cmd.map(&:to_s)).launch(true)
         | 
| 188 188 | 
             
              end
         | 
| 189 189 |  | 
| 190 190 | 
             
              def run_daemon
         | 
    
        data/lib/miga/daemon.rb
    CHANGED
    
    | @@ -92,8 +92,7 @@ class MiGA::Daemon < MiGA::MiGA | |
| 92 92 | 
             
                flush!
         | 
| 93 93 | 
             
                if (loop_i % 12).zero?
         | 
| 94 94 | 
             
                  purge!
         | 
| 95 | 
            -
                   | 
| 96 | 
            -
                  # recalculate_status!
         | 
| 95 | 
            +
                  recalculate_status!
         | 
| 97 96 | 
             
                end
         | 
| 98 97 | 
             
                save_status
         | 
| 99 98 | 
             
                sleep(latency)
         | 
| @@ -102,8 +101,10 @@ class MiGA::Daemon < MiGA::MiGA | |
| 102 101 | 
             
              end
         | 
| 103 102 |  | 
| 104 103 | 
             
              def recalculate_status!
         | 
| 105 | 
            -
                say 'Recalculating status for all datasets'
         | 
| 106 | 
            -
                project.each_dataset | 
| 104 | 
            +
                say 'Recalculating status for all complete datasets'
         | 
| 105 | 
            +
                project.each_dataset do |ds|
         | 
| 106 | 
            +
                  ds.recalculate_status if ds.status == :complete
         | 
| 107 | 
            +
                end
         | 
| 107 108 | 
             
              end
         | 
| 108 109 |  | 
| 109 110 | 
             
              ##
         | 
| @@ -309,11 +310,13 @@ class MiGA::Daemon < MiGA::MiGA | |
| 309 310 | 
             
                  job[:hostk] = hostk
         | 
| 310 311 | 
             
                  job[:cmd] = job[:cmd].miga_variables(host: nodelist[hostk])
         | 
| 311 312 | 
             
                  job[:pid] = spawn job[:cmd]
         | 
| 312 | 
            -
                   | 
| 313 | 
            +
                  MiGA::MiGA.DEBUG "Detaching PID: #{job[:pid]}"
         | 
| 314 | 
            +
                  Process.detach(job[:pid]) unless [nil, '', 0].include?(job[:pid])
         | 
| 313 315 | 
             
                when 'bash'
         | 
| 314 316 | 
             
                  # Local job
         | 
| 315 317 | 
             
                  job[:pid] = spawn job[:cmd]
         | 
| 316 | 
            -
                   | 
| 318 | 
            +
                  MiGA::MiGA.DEBUG "Detaching PID: #{job[:pid]}"
         | 
| 319 | 
            +
                  Process.detach(job[:pid]) unless [nil, '', 0].include?(job[:pid])
         | 
| 317 320 | 
             
                else
         | 
| 318 321 | 
             
                  # Schedule cluster job (qsub, msub, slurm)
         | 
| 319 322 | 
             
                  job[:pid] = `#{job[:cmd]}`.chomp
         | 
    
        data/lib/miga/remote_dataset.rb
    CHANGED
    
    | @@ -156,10 +156,12 @@ class MiGA::RemoteDataset < MiGA::MiGA | |
| 156 156 | 
             
                return nil unless metadata[:ncbi_asm]
         | 
| 157 157 |  | 
| 158 158 | 
             
                ncbi_asm_id = self.class.ncbi_asm_acc2id metadata[:ncbi_asm]
         | 
| 159 | 
            -
                 | 
| 160 | 
            -
             | 
| 161 | 
            -
                   | 
| 162 | 
            -
             | 
| 159 | 
            +
                txt = nil
         | 
| 160 | 
            +
                3.times do
         | 
| 161 | 
            +
                  txt = self.class.download(:ncbi_summary, :assembly, ncbi_asm_id, :json)
         | 
| 162 | 
            +
                  txt.empty? ? sleep(1) : break
         | 
| 163 | 
            +
                end
         | 
| 164 | 
            +
                doc = MiGA::Json.parse(txt, symbolize: false, contents: true)
         | 
| 163 165 | 
             
                @_ncbi_asm_json_doc = doc['result'][ doc['result']['uids'].first ]
         | 
| 164 166 | 
             
              end
         | 
| 165 167 |  | 
    
        data/lib/miga/version.rb
    CHANGED
    
    | @@ -8,7 +8,7 @@ module MiGA | |
| 8 8 | 
             
              # - Float representing the major.minor version.
         | 
| 9 9 | 
             
              # - Integer representing gem releases of the current version.
         | 
| 10 10 | 
             
              # - Integer representing minor changes that require new version number.
         | 
| 11 | 
            -
              VERSION = [0.7, 16,  | 
| 11 | 
            +
              VERSION = [0.7, 16, 12]
         | 
| 12 12 |  | 
| 13 13 | 
             
              ##
         | 
| 14 14 | 
             
              # Nickname for the current major.minor version.
         | 
| @@ -16,7 +16,7 @@ module MiGA | |
| 16 16 |  | 
| 17 17 | 
             
              ##
         | 
| 18 18 | 
             
              # Date of the current gem release.
         | 
| 19 | 
            -
              VERSION_DATE = Date.new(2020,  | 
| 19 | 
            +
              VERSION_DATE = Date.new(2020, 12, 24)
         | 
| 20 20 |  | 
| 21 21 | 
             
              ##
         | 
| 22 22 | 
             
              # Reference of MiGA.
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: miga-base
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.7.16. | 
| 4 | 
            +
              version: 0.7.16.12
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Luis M. Rodriguez-R
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2020- | 
| 11 | 
            +
            date: 2020-12-24 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: daemons
         |