diff --git a/debian/apache2/conf.d/noosfero-cluster.conf b/debian/apache2/conf.d/noosfero-cluster.conf new file mode 100644 index 0000000..bc0ecf3 --- /dev/null +++ b/debian/apache2/conf.d/noosfero-cluster.conf @@ -0,0 +1,8 @@ + + Include /etc/noosfero/apache/cluster.conf + Order Allow,Deny + Allow from All + + +# vim: ft=apache + diff --git a/debian/apache2/conf.d/noosfero-mongrel.conf b/debian/apache2/conf.d/noosfero-mongrel.conf deleted file mode 100644 index 380f671..0000000 --- a/debian/apache2/conf.d/noosfero-mongrel.conf +++ /dev/null @@ -1,7 +0,0 @@ - - Include /etc/noosfero/apache/mongrel.conf - Order Allow,Deny - Allow from All - - -# vim: ft=apache diff --git a/debian/bootstrap b/debian/bootstrap index 289d6cc..cef7c9f 100755 --- a/debian/bootstrap +++ b/debian/bootstrap @@ -1,5 +1,5 @@ #!/bin/sh -runtime_dependencies=$(sed -e '/^Depends:.*rails/!d; s/Depends: //; s/([^)]*)//g; s/,\s*/\n/g' debian/control | grep -v 'memcached\|debconf\|mongrel-cluster\|dbconfig-common\|postgresql\|misc:Depends\|adduser') +runtime_dependencies=$(sed -e '/^Depends:.*rails/!d; s/Depends: //; s/([^)]*)//g; s/,\s*/\n/g' debian/control | grep -v 'memcached\|debconf\|dbconfig-common\|postgresql\|misc:Depends\|adduser') test_dependencies="libtidy-ruby libhpricot-ruby libmocha-ruby imagemagick po4a xvfb" apt-get -y install $runtime_dependencies $test_dependencies diff --git a/debian/control b/debian/control index 42fab5b..24e8585 100644 --- a/debian/control +++ b/debian/control @@ -11,7 +11,7 @@ Vcs-Browser: http://git.colivre.coop.br/?p=noosfero.git Package: noosfero Architecture: all -Depends: rails (>= 2.3.5-1~), rails-ruby1.8 (>= 2.3.5-1~), ruby1.8, ruby, rake, libgettext-rails-ruby1.8, libsqlite3-ruby, libpgsql-ruby, libmysql-ruby, librmagick-ruby, libredcloth-ruby, libwill-paginate-ruby (>= 2.3.12-1~), iso-codes, libfeedparser-ruby, libferret-ruby, libdaemons-ruby, rcov, mongrel, mongrel-cluster, tango-icon-theme, libhpricot-ruby, iso-codes, memcached, debconf, dbconfig-common, postgresql, adduser, ${misc:Depends} +Depends: rails (>= 2.3.5-1~), rails-ruby1.8 (>= 2.3.5-1~), ruby1.8, ruby, rake, libgettext-rails-ruby1.8, libsqlite3-ruby, libpgsql-ruby, libmysql-ruby, librmagick-ruby, libredcloth-ruby, libwill-paginate-ruby (>= 2.3.12-1~), iso-codes, libfeedparser-ruby, libferret-ruby, libdaemons-ruby, rcov, thin, tango-icon-theme, libhpricot-ruby, iso-codes, memcached, debconf, dbconfig-common, postgresql, adduser, ${misc:Depends} Recommends: postgresql-client Description: free web-based platform for social networks Noosfero is a web platform for social and solidarity economy networks with diff --git a/debian/mongrel_cluster.yml b/debian/mongrel_cluster.yml deleted file mode 100644 index 077236e..0000000 --- a/debian/mongrel_cluster.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -address: 127.0.0.1 -cwd: /usr/share/noosfero -environment: production -group: noosfero -log_file: log/mongrel.log -pid_file: tmp/pids/mongrel.pid -port: 50000 -servers: 1 -user: noosfero diff --git a/debian/noosfero-apache.install b/debian/noosfero-apache.install index f9580c4..800d6b1 100644 --- a/debian/noosfero-apache.install +++ b/debian/noosfero-apache.install @@ -1,3 +1,3 @@ -debian/apache2/conf.d/noosfero-mongrel.conf etc/apache2/conf.d +debian/apache2/conf.d/noosfero-cluster.conf etc/apache2/conf.d debian/apache2/virtualhost.conf etc/noosfero/apache debian/update-noosfero-apache usr/sbin diff --git a/debian/noosfero.install b/debian/noosfero.install index f51627f..0664af9 100644 --- a/debian/noosfero.install +++ b/debian/noosfero.install @@ -27,7 +27,7 @@ public usr/share/noosfero debian/default/noosfero etc/default etc/init.d/noosfero etc/init.d -debian/mongrel_cluster.yml etc/noosfero +debian/thin.yml etc/noosfero debian/ferret_server.yml etc/noosfero etc/logrotate.d/noosfero etc/logrotate.d debian/noosfero.yml etc/noosfero diff --git a/debian/noosfero.links b/debian/noosfero.links index 682403a..0bddd7b 100644 --- a/debian/noosfero.links +++ b/debian/noosfero.links @@ -2,7 +2,7 @@ usr/share/rails usr/share/noosfero/vendor/ra var/tmp/noosfero usr/share/noosfero/tmp var/log/noosfero usr/share/noosfero/log etc/noosfero/database.yml usr/share/noosfero/config/database.yml -etc/noosfero/mongrel_cluster.yml usr/share/noosfero/config/mongrel_cluster.yml +etc/noosfero/thin.yml usr/share/noosfero/config/thin.yml etc/noosfero/ferret_server.yml usr/share/noosfero/config/ferret_server.yml etc/noosfero/plugins usr/share/noosfero/config/plugins etc/noosfero/noosfero.yml usr/share/noosfero/config/noosfero.yml diff --git a/debian/thin.yml b/debian/thin.yml new file mode 100644 index 0000000..5474a81 --- /dev/null +++ b/debian/thin.yml @@ -0,0 +1,13 @@ +--- +pid: tmp/pids/thin.pid +address: 127.0.0.1 +user: noosfero +timeout: 30 +port: 50000 +log: log/thin.log +max_conns: 1024 +servers: 1 +max_persistent_conns: 512 +environment: production +daemonize: true +chdir: /usr/share/noosfero diff --git a/debian/update-noosfero-apache b/debian/update-noosfero-apache index ee164d2..ed165e4 100755 --- a/debian/update-noosfero-apache +++ b/debian/update-noosfero-apache @@ -6,10 +6,16 @@ set -e if test -x /usr/share/noosfero/script/apacheconf; then datadir="/etc/noosfero/apache" mongrel_file="$datadir/mongrel.conf" + cluster_file="$datadir/cluster.conf" + if test -e "$cluster_file"; then + echo "Overwriting $cluster_file ..." + fi + /usr/share/noosfero/script/apacheconf thin > "$cluster_file" if test -e "$mongrel_file"; then - echo "Overwriting $mongrel_file ..." + echo "Moving existing $mongrel_file away ..." + mv "$mongrel_file" "$mongrel_file".dpkg-old + (cd $datadir && ln -sf cluster.conf mongrel.conf) fi - /usr/share/noosfero/script/apacheconf mongrel > "$mongrel_file" apache_site='/etc/apache2/sites-available/noosfero' if ! test -e "$apache_site"; then diff --git a/script/apacheconf b/script/apacheconf index 43d39d0..f660879 100755 --- a/script/apacheconf +++ b/script/apacheconf @@ -1,14 +1,21 @@ #!/usr/bin/env ruby -case ARGV.first -when 'mongrel' +def mongrel_thin(config_file) require 'yaml' - mongrel_config = YAML.load_file(File.dirname(__FILE__) + "/../config/mongrel_cluster.yml") - ip = mongrel_config['address'] || '127.0.0.1' - ports = port_range = mongrel_config['port']..(mongrel_config['port']+mongrel_config['servers']-1) + config = YAML.load_file(config_file) + ip = config['address'] || '127.0.0.1' + servers = config['servers'] || 1 + ports = port_range = config['port']..(config['port'] + servers - 1) ports.each do |port| puts "BalancerMember http://#{ip}:#{port}" end +end + +case ARGV.first +when 'mongrel' + mongrel_thin(File.dirname(__FILE__) + "/../config/mongrel_cluster.yml") +when 'thin' + mongrel_thin(File.dirname(__FILE__) + "/../config/thin.yml") when 'virtualhosts' require File.dirname(__FILE__) + '/../config/environment' Environment.all.each do |environment| @@ -30,6 +37,6 @@ when 'virtualhosts' end puts "# vim: ft=apache" else - puts "usage: %s mongrel|virtualhosts" % $PROGRAM_NAME + puts "usage: %s mongrel|thin|virtualhosts" % $PROGRAM_NAME exit 1 end -- libgit2 0.21.2