You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by to...@apache.org on 2010/04/10 19:31:17 UTC

svn commit: r932769 - in /buildr/trunk: CHANGELOG lib/buildr/java/packaging.rb spec/java/packaging_spec.rb

Author: toulmean
Date: Sat Apr 10 17:31:16 2010
New Revision: 932769

URL: http://svn.apache.org/viewvc?rev=932769&view=rev
Log:
fix for BUILDR-421 The MANIFEST.MF file packaged by Buildr as permissions set to 600

Modified:
    buildr/trunk/CHANGELOG
    buildr/trunk/lib/buildr/java/packaging.rb
    buildr/trunk/spec/java/packaging_spec.rb

Modified: buildr/trunk/CHANGELOG
URL: http://svn.apache.org/viewvc/buildr/trunk/CHANGELOG?rev=932769&r1=932768&r2=932769&view=diff
==============================================================================
--- buildr/trunk/CHANGELOG (original)
+++ buildr/trunk/CHANGELOG Sat Apr 10 17:31:16 2010
@@ -125,6 +125,7 @@
           (Pepijn Van Eeckhoudt)
 
 * Fixed:  BUILDR-414: Provide tag_name method on GitRelease as part of API
+* Fixed:  BUILDR-421: The MANIFEST.MF file packaged by Buildr as permissions set to 600
 1.3.5 (2009-10-05)
 * Added:  Interactive shell (REPL) support
 * Added:  BeanShell as default shell for java projects, bsh is small and it's

Modified: buildr/trunk/lib/buildr/java/packaging.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/lib/buildr/java/packaging.rb?rev=932769&r1=932768&r2=932769&view=diff
==============================================================================
--- buildr/trunk/lib/buildr/java/packaging.rb (original)
+++ buildr/trunk/lib/buildr/java/packaging.rb Sat Apr 10 17:31:16 2010
@@ -172,6 +172,7 @@ module Buildr
               # Tempfiles gets deleted on garbage collection, so we're going to hold on to it
               # through instance variable not closure variable.
               @manifest_tmp = Tempfile.new('MANIFEST.MF')
+              File.chmod 0644, @manifest_tmp.path
               self.manifest = File.read(manifest.to_s) if String === manifest || Rake::Task === manifest
               self.manifest = Manifest.new(manifest) unless Manifest === manifest
               #@manifest_tmp.write Manifest::STANDARD_HEADER

Modified: buildr/trunk/spec/java/packaging_spec.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/spec/java/packaging_spec.rb?rev=932769&r1=932768&r2=932769&view=diff
==============================================================================
--- buildr/trunk/spec/java/packaging_spec.rb (original)
+++ buildr/trunk/spec/java/packaging_spec.rb Sat Apr 10 17:31:16 2010
@@ -187,6 +187,16 @@ shared_examples_for 'package with manife
       manifest.main['Meta'].should eql('data')
     end
   end
+  
+  it 'should give 644 permissions to the manifest' do
+    package_with_manifest  [ {}, { 'Name'=>'first', :Foo=>'first', :bar=>'second' } ]
+    package ||= project('foo').package(@packaging)
+    package.invoke
+    Zip::ZipFile.open(package.to_s) do |zip|
+      permissions = format("%o", zip.file.stat('META-INF/MANIFEST.MF').mode)
+      permissions.should match /644$/
+    end
+  end
 
   it 'should not add manifest version twice' do
     write 'MANIFEST.MF', 'Manifest-Version: 1.9'