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