Usar chef para escribir el hash de confirmación implementado en un file

¿Cuál es la mejor forma de escribir el hash de confirmación desplegado actualmente en un file version.txt usando Chef, similar a cómo lo hace Etsy? Esto es lo que se me ocurrió.

execute "update_version" do command git log -1 --format="%H" > public/version.txt creates "#{app_config['deploy_dir']}/current/public/version.txt" owner app_user group app_group action:run end 

  owner app_user group app_group 

Puede que no funcione en un recurso de ejecución http://wiki.opscode.com/display/chef/Resources#Resources-Execute

Podría hacer algo como

 bash "update_revision" do code "git log -1 --format="%H" > public/version.txt" creates "#{app_config['deploy_dir']}/current/public/version.txt" end file "public/version.txt" do owner app_user group app_group mode 0644 end 

alternativamente, podrías crear una plantilla con contenido como

 <%= shell_out!('git log -1 --format="%H"') %> 

y usa un recurso de plantilla algo así como

 template( "public/version.txt") do owner app_user group app_group mode 0644 end