Sha256: 2e318455b9c52bcfd10d400adac8f429485f2cb156a8854b4b3bf379145718e0

Contents?: true

Size: 1021 Bytes

Versions: 4

Compression:

Stored size: 1021 Bytes

Contents

class Jobs::Volley::Meta < Jobs::Volley::Mco
  def work
    init
    client = rpcclient
    list = client.meta()
    list.each do |o|
      #info "o: #{o.inspect}"
      sender = o[:sender]
      data = o[:data]
      out = data[:out]
      next unless out

      record = ::Record.where(name: sender).first
      if record
        if record.nameable && record.nameable.class == ::Compute
          compute = record.nameable
        else
          compute = ::Compute.find_by_record(record)
        end
      end

      MystroVolley::Install.where(compute: compute).destroy_all if compute

      out.lines.each do |l|
        (p,v) = l.chomp.split(" => ")
        n = "#{p}@#{v}"
        version = MystroVolley::Version.find_by_name(n)

        info "#{sender} (#{compute}): #{n} (#{version})"
        if compute && version
          install = MystroVolley::Install.create(compute: compute, version: version)
          install.updated_at = Time.now
          install.save
        end
      end
    end
    true
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
mystro-volley-0.1.0 app/models/jobs/volley/meta.rb
mystro-volley-0.1.0.rc3 app/models/jobs/volley/meta.rb
mystro-volley-0.1.0.rc2 app/models/jobs/volley/meta.rb
mystro-volley-0.1.0.rc1 app/models/jobs/volley/meta.rb