Sha256: d01a5cb82d1f23b452a6d3db6808dd652229eb0d8f78d2d6cf0876ab2d4881aa

Contents?: true

Size: 722 Bytes

Versions: 16

Compression:

Stored size: 722 Bytes

Contents

module Gemnasium
  class Alert

    def self.all
      connection = Faraday.new(url: "https://api.gemnasium.com/v1/")
      connection.basic_auth "X", $GEMNASIUM_API_KEY
      connection.use Faraday::RaiseErrors

      response = connection.get "projects"
      projects = MultiJson.load(response.body).values.flatten

      projects.parallel.map do |project|
        response = connection.get "projects/#{project["slug"]}/alerts"
        Array(MultiJson.load(response.body)).map { |alert| alert.merge(
          "project_id" => project["slug"],
          "project_slug" => project["name"]) }
      end.flatten.compact
    end

    def self.open
      all.select { |alert| alert["status"] != "closed" }
    end

  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
houston-core-0.8.0.pre templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.7.0 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.7.0.beta4 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.7.0.beta3 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.7.0.beta2 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.7.0.beta templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.6.3 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.6.2 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.6.1 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.6.0 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.5.6 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.5.5 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.5.4 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.5.3 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.5.2 templates/new-instance/lib/gemnasium-alert.rb
houston-core-0.5.1 templates/new-instance/lib/gemnasium-alert.rb