Sha256: d0fbfd3d085d69850c1f82fd42491f521cf2061c132599c7e86bdd81b565f6c3

Contents?: true

Size: 1.03 KB

Versions: 7

Compression:

Stored size: 1.03 KB

Contents

require "vmc/cli/app/base"

module VMC::App
  class Crashes < Base
    desc "List an app's crashed instances"
    group :apps, :info, :hidden => true
    input :apps, :argument => :splat, :singular => :app,
      :desc => "Applications whose crashed instances to list",
      :from_given => by_name("app")
    def crashes
      apps = input[:apps]
      fail "No applications given." if apps.empty?

      spaced(apps) do |app|
        instances =
          with_progress("Getting crashed instances for #{c(app.name, :name)}") do
            app.crashes
          end

        line unless quiet?

        spaced(instances) do |i|
          if quiet?
            line i.id
          else
            display_crashed_instance(i)
          end
        end
      end
    end

    def display_crashed_instance(i)
      start_line "instance #{c("\##{i.id}", :instance)}: "
      puts "#{b(c("crashed", :error))} "

      indented do
        if s = i.since
          line "since: #{c(s.strftime("%F %r"), :neutral)}"
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
vmc-0.4.7 lib/vmc/cli/app/crashes.rb
vmc-0.4.6 lib/vmc/cli/app/crashes.rb
vmc-0.4.5 lib/vmc/cli/app/crashes.rb
vmc-0.4.4 lib/vmc/cli/app/crashes.rb
vmc-0.4.3 lib/vmc/cli/app/crashes.rb
vmc-0.4.2 lib/vmc/cli/app/crashes.rb
vmc-0.4.1 lib/vmc/cli/app/crashes.rb