require(File.join(File.dirname(__FILE__), 'config', 'boot')) require 'rake' require 'rake/testtask' require 'rake/rdoctask' require 'rake/packagetask' require 'noosfero' Rake::PackageTask.new(Noosfero::PROJECT, Noosfero::VERSION) do |p| p.need_tar_gz = true # cleaning temporary files FileUtils.rm_rf('tmp') FileUtils.mkdir_p('tmp/cache') FileUtils.mkdir_p('tmp/sessions') FileUtils.mkdir_p('tmp/sockets') # application files p.package_files.include('app/**/*.{rb,rhtml,rjs,rxml,erb}') p.package_files.include('config/**/*.{rb,sqlite3}') p.package_files.include('config/ferret_server.yml.dist') p.package_files.include('db/migrate/*.rb') p.package_files.include('db/schema.rb') p.package_files.include('doc/README_FOR_APP') p.package_files.include('lib/**/*.{rake,rb}') p.package_files.include('Rakefile') p.package_files.include('Rakefile.pkg') # translation files p.package_files.include('po/*/*.po') p.package_files.include('po/noosfero.pot') # templates p.package_files.include('public/designs/templates/**/*') # icon sets p.package_files.include('public/designs/icons/tango/**/*') p.package_files.exclude('public/designs/icons/tango/Tango') p.package_files.exclude('public/designs/icons/default') # themes p.package_files.include('public/designs/themes/noosfero/**/*') p.package_files.include('public/designs/themes/base/**/*') p.package_files.exclude('public/designs/themes/default') # static files p.package_files.include('public/dispatch.*') p.package_files.include('public/favicon.ico') p.package_files.include('public/*.html') p.package_files.include('public/*.html.erb') p.package_files.include('public/images/**/*') p.package_files.include('public/javascripts/**/*') p.package_files.include('public/robots.txt') p.package_files.include('public/stylesheets/**/*') # top-level docs p.package_files.include('README') p.package_files.include('COPYING') p.package_files.include('COPYRIGHT') p.package_files.include('INSTALL') p.package_files.include('HACKING') # scripts p.package_files.include('script/**/*') # test files p.package_files.include('test/**/*.{rb,yml}') p.package_files.include('test/fixtures/files/*') p.package_files.include('features/**/*') p.package_files.include('config/cucumber.yml') # empty directories that must exist p.package_files.include('tmp/cache') p.package_files.include('tmp/sessions') p.package_files.include('tmp/sockets') p.package_files.include('log') # symbolic links p.package_files.include('app/views/profile_design/*') p.package_files.include('app/views/environment_design/*') # util p.package_files.include('util/**/*') # external resources p.package_files.include('vendor/**/*') p.package_files.exclude('vendor/rails') # online documentation p.package_files.include('doc/noosfero/**/*') # do not install locally generated files p.package_files.exclude('coverage/**/*') p.package_files.exclude('public/images/[0-9][0-9][0-9][0-9]/**/*') end task :default => :package task :clean => :clobber_package # vim: ft=ruby