<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,5 +1,10 @@
 == git
 
+== 2.0.8 (March 17, 2009)
+
+* :config task now renders configs directly to remote server if locally 
+  rendered versions (from :config_gen task) do not exist.
+
 == 2.0.7 (March 17, 2009)
 
 * bugfix</diff>
      <filename>CHANGELOG</filename>
    </modified>
    <modified>
      <diff>@@ -2,7 +2,7 @@ require 'rubygems'
 
 SPEC = Gem::Specification.new do |s|
   s.name = 'deprec'
-  s.version = '2.0.7'
+  s.version = '2.0.8'
   
   s.authors = ['Mike Bailey']
   s.description = &lt;&lt;-EOF</diff>
      <filename>deprec.gemspec</filename>
    </modified>
    <modified>
      <diff>@@ -159,29 +159,22 @@ module Deprec2
   def push_configs(app, files)   
     app = app.to_s
     files.each do |file|
-      # If the file path is relative we will prepend a path to this projects
-      # own config directory for this service.
-      if file[:path][0,1] != '/'
-        full_remote_path = File.join(deploy_to, app, file[:path]) 
-      else
-        full_remote_path = file[:path]
-      end
       full_local_path = File.join('config', app, file[:path])
-      sudo &quot;test -d #{File.dirname(full_remote_path)} || sudo mkdir -p #{File.dirname(full_remote_path)}&quot;
-      #
-      # XXX work this in to check for per-host variants of config files
-      #
-      # if any variants of this file exist for this host (they have -hostname at end)
-      #   servers = find_servers_for_task(current_task)
-      #   servers.each do |server|
-      #     puts server(..., :hosts =&gt; server) # XXX find a way to restrict su_put to one host
-      #   end
-      # else
-      #   # just send them the normal way, it's quicker in parallel
+      if File.exists?(full_local_path)
+        # If the file path is relative we will prepend a path to this projects
+        # own config directory for this service.
+        if file[:path][0,1] != '/'
+          full_remote_path = File.join(deploy_to, app, file[:path]) 
+        else
+          full_remote_path = file[:path]
+        end
+        sudo &quot;test -d #{File.dirname(full_remote_path)} || sudo mkdir -p #{File.dirname(full_remote_path)}&quot;
         std.su_put File.read(full_local_path), full_remote_path, '/tmp/', :mode=&gt;file[:mode]
-      # end
-      #
-      sudo &quot;chown #{file[:owner]} #{full_remote_path}&quot;
+        sudo &quot;chown #{file[:owner]} #{full_remote_path}&quot;
+      else
+        # Render directly to remote host.
+        render_template(app, file.merge(:remote =&gt; true))
+      end
     end
   end
   </diff>
      <filename>lib/deprec/capistrano_extensions.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>4c6e6bcb41d81b68bc6b9e50ae7dc77d77c051dc</id>
    </parent>
  </parents>
  <author>
    <name>Mike Bailey</name>
    <email>mike@bailey.net.au</email>
  </author>
  <url>http://github.com/mbailey/deprec/commit/dee55d0635ef2a6c9bdc9c196e9510c43eeb30d5</url>
  <id>dee55d0635ef2a6c9bdc9c196e9510c43eeb30d5</id>
  <committed-date>2009-03-17T00:39:44-07:00</committed-date>
  <authored-date>2009-03-17T00:39:44-07:00</authored-date>
  <message>Release 2.0.8

:config tasks now render service config files directly to remote
server if locally generated versions (from :config_gen task) do not exist.</message>
  <tree>421f2323c5474093bf06b0f21bfff3b7d46ec89e</tree>
  <committer>
    <name>Mike Bailey</name>
    <email>mike@bailey.net.au</email>
  </committer>
</commit>
