Tags: cvs, Debian GNU/Linux, git, redmine, svn, trac
Primero miramos los requerimientos oficiales de la pagina de Redime:
| Redmine version | Supported Ruby versions | Required Rails version |
|---|---|---|
| current trunk | ruby 1.8.6, 1.8.7 | Rails 2.2.2 |
| trunk before r2493 | ruby 1.8.6, 1.8.7 | Rails 2.1.2 |
| 0.8.x | ruby 1.8.6, 1.8.7 | Rails 2.1.2 |
| 0.7.x | ruby 1.8.6 | Rails 2.0.2 |
Notes:
- RubyGems 1.3.1 is required
- Rake 0.8.3 is required
Como vamos a instalar la versión estable que es la 0.8.3 entonces nos guiamos con esos requerimientos.
Verificamos que ninguna versión de Ruby esté instalada, ya que la version de Gnu Linux Debian es la 1.8.2 y no sirve para el Redmine.
Como usuario root:
dpkg -l |grep ruby
dpkg -l |grep rake
Si hay algun paquete relacionado con ruby, y si no se está utilizando procedemos a desinstalarlo.
apt-get –purge remove ruby rake otro_paquete_relacionado_con_ruby
Primero bajamos la ultima versión de Ruby estable de la rama 1.8.7.
wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p160.tar.gz
tar xvf ruby-1.8.7-p160.tar.gz
cd ruby-1.8.7-p160
Luego como Redmine solicita soporte para zlib, ssl y postgres instalamos las librerias con apt:
apt-get install libssl-dev zlib1g-dev build-essential postgresql-dev
Ahora empezamos la compilación:
./configure
make
make install
Con esto ya tenemos el Ruby instalado en nuestra maquina, pero falta el soporte zlib y ssl:
cd ext
cd zlib
ruby extconf.rb
make
make install
Ahora para SSL:
cd ../openssl
ruby extconf.rb
make
make install
cd
Ahora bajamos la libreria requerida Rubygems
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
tar xvf rubygems-1.3.1.tgz
cd rubygems-1.3.1
ruby setup.rb
Ahora procedemos a instalar rails con la version de rubygems instalada, no tenemos necesidad de compilar el rake ya que el gem se encarga de bajarlo cuando se instala el rails.
gem install rails -v=2.1.2
Ahora el soporte para postgreSQL:
gem install pg
cd
wget http://rubyforge.org/frs/download.php/54503/redmine-0.8.3.tar.gz
tar xvf redmine-0.8.3.tar.gz
mv redmine-0.8.3 redmine
mv redmine /opt
cd /op/redmine/config
cp database.yml.example database.yml
nano database.yml
production:
adapter: postgresql
database: redmine
host: localhost
username: redmineuser
password: redminepassword
encoding: utf8
Ahora creamos el usuario y la base de datos en PostgreSQL:
su – postgres
shell> createuser redmineuser
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n
shell> createdb redmine -O redmineuser -E UTF8
Procedemos a asignarle el password al usuario redmineuser
psql redmine
ALTER USER redmineuser WITH PASSWORD ‘redminepassword’;
\q
exit
Ahora abrimos
cd /opt/redmine
Creamos la estructura en la base de datos:
rake db:migrate RAILS_ENV="production"
Ahora insertamos la configuración por defecto:
rake redmine:load_default_data RAILS_ENV="production"
Ahora nos pide el lenguaje por defecto:
Select language: bg, ca, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl, no, pl, pt, pt-br, ro, ru, sk, sr, sv, th, tr, uk, vn, zh, zh-tw [en]
Colocamos es y luego enter
Ahora creamos el usuario para redmine y le asignamos los permisos adecuados:
useradd redmine
chown -R redmine:redmine /opt/redmine
chmod -R 755 /opt/redmine/files /opt/redmine/log /opt/redmine/tmp /opt/redmine/public/plugin_assets
En estos momentos ya tenemos instalado nuestro Redmine en nuestro servidor. Ahora lo iniciamos en modo demonio con la opcion -d
/usr/local/bin/ruby /opt/redmine/script/server webrick -d -e production
Esta linea puede ser guardada en el archivo /etc/rc.local para que inicie automaticamente.
Para ver nuestro servidor solo basta con http://localhost:3000, usuario admin y clave admin
Ahora arrancamos a migrar los repositorios de TRAC para Redmine:
como root:
apt-get install libsqlite0-dev
gem install sqlite-ruby
Ahora ejecutamos:
cd /opt/redmine/
rake redmine:migrate_from_trac RAILS_ENV="production"
Trac directory []: /var/trac/myproject
Trac database adapter (sqlite, sqlite3, mysql, postgresql) [sqlite]:
Database encoding [UTF-8]:
Target project identifier []: myproject
Con esto ya tenemos migrado todos los tickets.
Hasta la próxima…