Sha256: 605b458792a989c6fad1dc7df0e762ea7b6083232e29e4421993508f990100d2

Contents?: true

Size: 829 Bytes

Versions: 9

Compression:

Stored size: 829 Bytes

Contents

require 'cerberus/publisher/base'
require 'time'
require 'builder'

class Cerberus::Publisher::RSS < Cerberus::Publisher::Base
  def self.publish(state, manager, options)
    config = options[:publisher, :rss]
    subject,body = Cerberus::Publisher::Base.formatted_message(state, manager, options)

    pub_date = Time.now.iso8601
    description = "<pre>#{body}</pre>".to_xs
    result = <<-END
<rss version="2.0">
  <channel>
    <title>Cerberus build feed for #{options[:application_name].to_xs}</title>
    <pubDate>#{pub_date}</pubDate>
    <generator>http://rubyforge.org/projects/cerberus</generator>
    <item>
      <title>#{subject.to_xs}</title>
      <pubDate>#{pub_date}</pubDate>
      <description>#{description}</description>
    </item>
  </channel>
</rss>
    END

    IO.write(config[:file], result)
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
cerberus-0.7.5 lib/cerberus/publisher/rss.rb
cerberus-0.7 lib/cerberus/publisher/rss.rb
cerberus-0.4.3 lib/cerberus/publisher/rss.rb
cerberus-0.4.4 lib/cerberus/publisher/rss.rb
cerberus-0.4.2 lib/cerberus/publisher/rss.rb
cerberus-0.4.5.1 lib/cerberus/publisher/rss.rb
cerberus-0.4.5 lib/cerberus/publisher/rss.rb
cerberus-0.5 lib/cerberus/publisher/rss.rb
cerberus-0.6 lib/cerberus/publisher/rss.rb