<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/sprinkle/installers/push_text.rb</filename>
    </added>
    <added>
      <filename>spec/sprinkle/installers/push_text_spec.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -170,6 +170,10 @@ module Sprinkle
         @installer = Sprinkle::Installers::Rake.new(self, name, options, &amp;block)        
       end
       
+      def push_text(text, path, options = {}, &amp;block)
+        @installer = Sprinkle::Installers::PushText.new(self, text, path, options, &amp;block)
+      end
+      
       def verify(description = '', &amp;block)
         @verifications &lt;&lt; Sprinkle::Verify.new(self, description, &amp;block)
       end</diff>
      <filename>lib/sprinkle/package.rb</filename>
    </modified>
    <modified>
      <diff>@@ -8,6 +8,8 @@ module Sprinkle
     #
     #   verify { has_file '/etc/apache2/apache2.conf' }
     #
+    #   verify { file_contains '/etc/apache2/apache2.conf', 'mod_gzip'}
+    #
     module File
       Sprinkle::Verify.register(Sprinkle::Verifiers::File)
       
@@ -15,6 +17,10 @@ module Sprinkle
       def has_file(path)
         @commands &lt;&lt; &quot;test -f #{path}&quot;
       end
+      
+      def file_contains(path, text)
+        @commands &lt;&lt; &quot;grep '#{text}' #{path}&quot;
+      end
     end
   end
 end
\ No newline at end of file</diff>
      <filename>lib/sprinkle/verifiers/file.rb</filename>
    </modified>
    <modified>
      <diff>@@ -9,6 +9,9 @@ describe Sprinkle::Verify do
         # Check a file exists
         has_file 'my_file.txt'
         
+        # Check that a file contains a substring
+        file_contains 'my_file.txt', 'A sunny day on the lower east-side'
+        
         # Check a directory exists
         has_directory 'mydir'
         
@@ -51,6 +54,10 @@ describe Sprinkle::Verify do
       @verification.commands.should include('test -f my_file.txt')
     end
     
+    it 'should do a grep to see if a file contains a text string' do
+      @verification.commands.should include(&quot;grep 'A sunny day on the lower east-side' my_file.txt&quot;)
+    end
+    
     it 'should do a &quot;test -d&quot; on the has_directory check' do
       @verification.commands.should include('test -d mydir')
     end</diff>
      <filename>spec/sprinkle/verify_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,6 @@
 Gem::Specification.new do |s|
   s.name = %q{sprinkle}
-  s.version = &quot;0.2.0&quot;
+  s.version = &quot;0.2.1&quot;
 
   s.required_rubygems_version = Gem::Requirement.new(&quot;&gt;= 0&quot;) if s.respond_to? :required_rubygems_version=
   s.authors = [&quot;Marcus Crafter&quot;, &quot;Mitchell Hashimoto&quot;]
@@ -26,7 +26,7 @@ Gem::Specification.new do |s|
              &quot;lib/sprinkle/installers/deb.rb&quot;, &quot;lib/sprinkle/installers/gem.rb&quot;, &quot;lib/sprinkle/installers/installer.rb&quot;,
              &quot;lib/sprinkle/installers/rake.rb&quot;, &quot;lib/sprinkle/installers/rpm.rb&quot;, &quot;lib/sprinkle/installers/source.rb&quot;,
              &quot;lib/sprinkle/installers/yum.rb&quot;, &quot;lib/sprinkle/installers/freebsd_pkg.rb&quot;, &quot;lib/sprinkle/installers/openbsd_pkg.rb&quot;,
-             &quot;lib/sprinkle/installers/opensolaris_pkg.rb&quot;, &quot;lib/sprinkle/installers/bsd_port.rb&quot;, &quot;lib/sprinkle/installers/mac_port.rb&quot;, 
+             &quot;lib/sprinkle/installers/opensolaris_pkg.rb&quot;, &quot;lib/sprinkle/installers/bsd_port.rb&quot;, &quot;lib/sprinkle/installers/mac_port.rb&quot;, &quot;lib/sprinkle/installers/push_text.rb&quot;, 
              &quot;lib/sprinkle/package.rb&quot;, &quot;lib/sprinkle/policy.rb&quot;, &quot;lib/sprinkle/script.rb&quot;, &quot;lib/sprinkle/verifiers/directory.rb&quot;, 
              &quot;lib/sprinkle/verifiers/executable.rb&quot;, &quot;lib/sprinkle/verifiers/file.rb&quot;, &quot;lib/sprinkle/verifiers/process.rb&quot;, 
              &quot;lib/sprinkle/verifiers/ruby.rb&quot;, &quot;lib/sprinkle/verifiers/symlink.rb&quot;, &quot;lib/sprinkle/verify.rb&quot;, &quot;lib/sprinkle/version.rb&quot;,
@@ -38,7 +38,7 @@ Gem::Specification.new do |s|
                   &quot;spec/sprinkle/installers/gem_spec.rb&quot;, &quot;spec/sprinkle/installers/installer_spec.rb&quot;, &quot;spec/sprinkle/installers/rpm_spec.rb&quot;,
                   &quot;spec/sprinkle/installers/yum_spec.rb&quot;, &quot;spec/sprinkle/installers/source_spec.rb&quot;, &quot;spec/sprinkle/installers/freebsd_pkg_spec.rb&quot;,
                   &quot;spec/sprinkle/installers/openbsd_pkg_spec.rb&quot;, &quot;spec/sprinkle/installers/opensolaris_pkg_spec.rb&quot;,
-                  &quot;spec/sprinkle/installers/mac_port_spec.rb&quot;, &quot;spec/sprinkle/bsd_port_spec.rb&quot;, &quot;spec/sprinkle/policy_spec.rb&quot;,
+                  &quot;spec/sprinkle/installers/mac_port_spec.rb&quot;, &quot;spec/sprinkle/installers/push_text_spec.rb&quot;, &quot;spec/sprinkle/installers/bsd_port_spec.rb&quot;, &quot;spec/sprinkle/policy_spec.rb&quot;,
                   &quot;spec/sprinkle/script_spec.rb&quot;, &quot;spec/sprinkle/sprinkle_spec.rb&quot;, &quot;spec/sprinkle/installers/rake_spec.rb&quot;, &quot;spec/sprinkle/verify_spec.rb&quot;]
   s.has_rdoc = true
   s.homepage = %q{http://sprinkle.rubyforge.org}</diff>
      <filename>sprinkle.gemspec</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>5bd279be998b3ac7511d664e044567c5ac78bcfe</id>
    </parent>
  </parents>
  <author>
    <name>Ben Schwarz</name>
    <email>ben.schwarz@gmail.com</email>
  </author>
  <url>http://github.com/crafterm/sprinkle/commit/a992d6f6e3876bd264a5bfb73a6ced3e7ef21eff</url>
  <id>a992d6f6e3876bd264a5bfb73a6ced3e7ef21eff</id>
  <committed-date>2009-03-04T15:03:52-08:00</committed-date>
  <authored-date>2009-03-03T05:49:55-08:00</authored-date>
  <message>Added a &quot;text&quot; installer which will simply push text into a given file, when used for simple / minimal configuration it can be paired with the also new 'file_contains' verifier to stop you from pushing text into your file multiple times (thus allowing said install to be repeatable given a failure somewhere else)
Bumped gem version</message>
  <tree>5f722efe54c5894248e3a91414ceb84026b846df</tree>
  <committer>
    <name>Marcus Crafter</name>
    <email>crafterm@redartisan.com</email>
  </committer>
</commit>
