Última versão do Redmine no linux (CentOS)

April 7th, 2009 No Comments   Postado em Linux, Redmine

O que é o Redmine:
Redmine é uma aplicação web voltada para o gerenciamento de projetos de softwares,  administrado por Jean-Philippe Lang, projeto de código aberto, totalmente gratuito, desenvolvido na plataforma RoR (Ruby on Rails), O que gosto nele é a simplicidade aliada ao grande número de funcionalidades.

Sobre a dificuldade de instalação:
Alguns desenvolvedores tem reclamado do fato do mesmo ser feito em RoR e ser de de difícil deployment, mas devo dizer que isto é muito relativo, para quem não está acostumado realmente parece ser complexo, mas qual é o desenvolvedor que não se depara, pelo menos uma vez por semana, com algo complexo?

Pré-requisitos:

Database:
  • MySQL 4.1 ou  superior (recommendado)
  • PostgreSQL 8
  • SQLite 3

Subversion:
Vamos precisar também do svn, se você não tem o subversion instalado, basta digitar:

# yum install subversion

Libs:
O Gem também precisa da lib zlib

yum install zlib zlib-devel

RoR:
Como este documento é baseado no CentoOS, voce precisa ter uma máquina com o CentOS 5.2/3 ou o RHEL 5.3 instalados, acredito que também seja possível com qualquer sabor do Red Hat, como por exemplo o Fedora, por outro lado é bem fácil adaptar para qualquer outra distribuição, antes de mais nada precisamos instalar a linguagem Ruby, o Framework RoR e o gerenciador de pacotes RubyGems, Dependendo da versão RM que você quer instalar, vai precisar da versões correspondentes do Ruby/Rails, abaixo uma tabela retirada do site do Redmine em 07/04/2009:

Versão do Redmine Versão suportada do Ruby Versão requerida do Rails
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.2.2
0.8.x ruby 1.8.6, 1.8.7 Rails 2.2.2
0.7.x ruby 1.8.6 Rails 2.0.2

Alguem poderia perguntar porque utilizar versões anteriores, bem, pode haver vários motivos, como por exemplo, se o sistema já tiver o ruby/rails de uma versão suportada já instalada ou se voce usa uma distribuição que ja tem disponível uma destas versões empacotadas.

Obtendo a versão do Rails instalada:

Para saber a versão do Rails que voce tem instalado, digite o comando:

$ rails –v

No meu caso, produz a saida:

Rails 2.3.2

Atualizando o Gems/RoR:

Se voce ja tem o Ruby o RoR instalado pelo metodo do yum ou sua versão é anterior a a 2.2 e deseja instalar uma versao do redmine que exiga esta versão voce pode atualizar o Gem e o Rails, com os seguintes comandos:

# gem update –system
# gem install -v=2.2.2 rails

1. Instalando Ruby/Ruby On Rails/RubyGems:

Para instalar o trio acima é só seguir o artigo Instalando Ruby (1.8.7) e Rails 2.1.0 no CentOS 5 claro que voce deve ao invés de instalar a versão 1.1.1 do RubyGems e a versão 2.1.0 do Rails (que eram as últimas versões disponíveis quando escrevi aquele texto), instalar a versão 1.3.1 do RubyGemns e a versão 2.2.2 do Rails (que são as ultimas versões disponíves quando eu estava escrevendo este). Os ítems 4 e 5 daquele texto era para corrigir um problema específico da versão 5.0 do CentOS, se você não usa esta versão, é provável que você não precise deles. Note que se voce estiver instalando através de pacotes disponíveis em sua distribuição é preciso observar as versões, por exemplo, no CentOS 5.2 a versão empacotada disponível do Ruby é a 1.8.5-5, ou seja, não dá para rodar o redmine, é melhor baixar e instalar tudo.

1.1 Instalando a versão “Snapshot Estável” de abril de 2009:

No link http://www.ruby-lang.org/pt/downloads/ há um link para se baixar o pacote chamado Snapshot Estável com a seguinte descrição “Ficheiros compactados em tar e gzip do último CVS estável. Deverá ser melhor que o última distribuição estável.”, Ok, pode ser, mas quando o baixei no início do mês de abril de 2009 ocorreu um erro quando tentei instalar o RubyGems, depois de segui com sucesso o passo 1 da instalação do Ruby, tive problemas no passo 2 (a instalação do Gems, ultimo comando) que reportou a seguinte mensagem:

/usr/src/rubygems-1.3.1/ ruby setup

/usr/src/rubygems-1.3.1/lib/rubygems/version.rb:53:in `initialize’: Malformed version number string 1.8.8.-1 (ArgumentError)

from /usr/src/rubygems-1.3.1/lib/rubygems.rb:676:in `new’

from /usr/src/rubygems-1.3.1/lib/rubygems.rb:676:in `ruby_version’

from setup.rb:111

Para não ter o mesmo problema, antes de compilar  edit o arquivo version.h presente no diretório onde voce descompactou o Ruby e altere a 5ª linha onde se lê:

# define RUBY_PATCHLEVEL –1

para:

# define RUBY_PATCHLEVEL 1

Após compilado voce se voce digitar Ruby na linha de comando o shell não encontrará o comando, isto porque o processo de compilação coloca o binario em /usr/local/bin, faça um link para /usr/bin com o comando:

# ln –s /usr/local/bin/ruby /usr/bin/ruby

2. Instalando o Redmine:

Antes de continuarmos cabe uma observação, segundo o site do redmine (http://www.redmine.org/wiki/redmine/RedmineInstall) se voce vai usar o MySQL como banco de dados convem instalar o pacote C bindings pois o mesmo incrementa dramaticamente a  performance, para isto executamos o comando:

gem install mysql

2.1 opções de download:

O Download do redmine está disponível tanto a versão estável, indicada para produção, como a versão em desenvolvimento, tanto uma como a outra voce deve baixar via cliente do subversion, para saber como instalar o subversion no CentOS consulte a seção pré-requisitos deste texto:

2.2 Para instalar a ultima versão estável:

O projeto tem o controle de versões sob o subversion e os desenvolvedores utilizam a convenção idealizada pelos seus criadores, versões estáveis estão sempre sob a pasta branches, no endereço http://redmine.rubyforge.org/svn/, para descobrir qual é a ultima estável navegue neste endereço, voce deverá ver algo parecido com:

svn – Revision 2670: /branches


Powered by Subversion version 1.5.5 (r34862)
Veja qual é a pasta que tem o maior número antes da palavra stable e monte o endereço para o comando svn (http://redmine.rubyforge.org/svn/branches/0.8-stable/, neste contexto)  para baixa-la, vá para o diretório onde você pretende instalar o redmine, neste caso minha opção é o /opt, e digite o seguinte comando:

# svn co http://redmine.rubyforge.org/svn/branches/0.8-stable/

Este comando criará a pasta 0.8-stable que é o codigo do redmine, esta é a versão estável, claro que com o passar do tempo não vai mais ser 0.8, de qualquer forma é só montar o endereço com a última versão, mudando apenas a ultima parte do mesmo entre as 2 ultimas barras ( /0.8-stable/, neste caso). Pode-se usar, com o svn, o protocolo do próprio svn ao invés do http, neste caso o comando seria:

# svn co svn://rubyforge.org/var/svn/redmine/branches/0.8-stable/

Isto é tudo, a diferença para a versão de desenvolvimento é que nestes endereços ao invés da palavra branches coloque a palavra trunk, mas a menos que você pretenda contribuir com o projeto é preferivel sempre instalar as versões estáveis.

Alternativa para preguiçosos:

Existe um projeto que empacota tudo que é preciso para instalar o redmine ( (Apache, MySQL, Subversion, Ruby, Rails, etc.) disponível em http://bitnami.org/stack/redmine, tem versões para Windows, Linux, Mac x86 e Mac PPC. Promete muito, infelizmente ainda não tive oportunidade de por as mão no bicho, o problema deste tipo de instalação é que voce se torna refém, quem sabe um dia, por curisiodade, eu o baixe e faça uma experiencia em uma maquina virtual aqui.


Tags: