Pesquisa de site

Phabricator - Uma poderosa ferramenta de "gerenciamento de projetos" de código aberto para Linux


Phabricator é um aplicativo de código aberto que ajuda empresas de software a criar/construir software melhor, que é construído usando a linguagem PHP e está disponível sob a licença de código aberto Apache 2.0 para Linux, MacOSX e pode ser executado em qualquer plataforma, pode até rodar em windows mas é totalmente baseado em suporte Linux. O Phabricator já foi usado pelo Facebook antes. A primeira versão do phabricator foi construída pelo Facebook com muitos recursos como revisão e auditoria de códigos, rastreamento de bugs etc.

Podemos usar o phabricator como repositório igual ao git e svn. Existem várias configurações de privacidade disponíveis para proteger o código entre equipes de desenvolvimento específicas. Podemos revisar o código dos colegas de trabalho antes de finalizar o código.

Espero que todos estejam cientes do git, caso contrário, dê uma olhada rápida no artigo do GIT abaixo, que explica como usá-lo.

  1. Instale o GIT para criar seus próprios projetos no repositório GITHub

Assim como o git, o phabricator também possui muitos recursos e é usado pela maioria das empresas populares como Facebook, Dropbox, Groupon para desenvolver seus aplicativos web.

Requisitos

O Phabricator pode ser executado em um computador normal, com os seguintes pacotes necessários. Não precisamos de especificações com muitos recursos.

  1. Apache2.2.7 ou superior
  2. MySQL e PHP 5.2 ou superior
  3. Git e algumas das extensões php.

NOTA: O Phabricator só pode ser instalado em um domínio inteiro (linux-console.net) ou em um subdomínio (phabricator.linux-console.net). Você não pode instalá-lo em um caminho específico em qualquer domínio existente, digamos “linux-console.net/phabricator”.

Etapa 1: instalação dos componentes necessários

Existem scripts disponíveis para configuração em Ubuntu e Linux baseado em Redhat, escolha esta opção se você não estiver familiarizado com Linux.

  1. Derivados RedHat – http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
  2. Derivados do Ubuntu – http://www.phabricator.com/rsrc/install/install_ubuntu.sh

Se você for um usuário Advance, você só precisa configurar um servidor LAMP para executar um phabricator. Ok, agora vamos começar a instalar o Phabricator no RHEL/CentOS e Ubuntu/Debian.

No RHEL/CentOS

Instale o servidor LAMP e inclua algumas extensões php durante a instalação.

yum install mysql-server httpd git php php-mysql php-gd php-curl php-apc php-cli -y
No Ubuntu/Debian
sudo apt-get install mysql-server apache2 git-core git php5 php5-mysql php5-gd php5-curl php-apc php5-cli -y

NOTA: Em distribuições baseadas no Ubuntu, durante a instalação será solicitado que você insira a senha de root do MySQL.

Etapa 2: baixando arquivos do Phabricator

Depois de instalar todos os itens acima, escolha o diretório de instalação. Aqui vou criar um diretório chamado ‘myprojectapp’ em DocumentRoot do diretório Apache.

mkdir /var/www/html/myprojectapp		[On RedHat]

sudo mkdir /var/www/myprojectapp		[On Ubuntu]

Se você estiver instalando, como usuário normal, você precisa adicionar o usuário atual (no meu caso ‘tecmint‘) no grupo Apache para obter permissão de gravação. Esta etapa pode ser ignorada se você mudar para o usuário root.

chown -R tecmint:apache /var/www/html		[On RedHat]
sudo chown -R tecmint:www-data /var/www	[On Ubuntu]	

Em seguida, navegue até o diretório recém-criado, ou seja, myprojectapp.

cd /var/www/html/myprojectapp			[On RedHat]

cd /var/www/myprojectapp			[On Ubuntu]

Agora, comece a extrair o phabricator e suas dependências do repositório git oficial.

git clone https://github.com/phacility/libphutil.git
git clone https://github.com/phacility/arcanist.git
git clone https://github.com/phacility/phabricator.git

Etapa 3: configurar o Apache para Phabricator

Nas distribuições baseadas no Ubuntu, você precisa habilitar os módulos mod_php, mod_rewrite e mod_ssl, durante a instalação a maioria desses módulos são habilitados por padrão, mas precisamos confirmar.

sudo a2enmod rewrite
sudo a2enmod ssl

Uma vez habilitados esses módulos, reinicie o servidor web para refletir as alterações.

sudo /etc/init.d/apache2 restart		[On Ubuntu]

Em seguida, crie um Virtualhost separado em seu arquivo de configuração do Apache.

vi /etc/httpd/conf/httpd.conf			[On RedHat]

sudo nano /etc/apache2/sites-available/phabricator.conf	[On Ubuntu]	

Anexe a seguinte entrada Virtualhost na parte inferior do arquivo e altere o caminho DocumentRoot para corresponder à localização exata dos arquivos do phabricator.

<VirtualHost *:80>
        ServerAdmin [email 
        ServerName phab.tecmintlocal.com
        DocumentRoot /var/www/html/myprojectapp/phabricator/webroot
        RewriteEngine on
        RewriteRule ^/rsrc/(.*)     -                       [L,QSA]
        RewriteRule ^/favicon.ico   -                       [L,QSA]
        RewriteRule ^(.*)$          /index.php?__path__=$1  [B,L,QSA]
<Directory "/var/www/html/myprojectapp/phabricator/webroot">
        Order allow,deny
        Allow from all
</Directory>
</VirtualHost>

No Ubuntu, você precisa habilitar a entrada virtualhost recém-criada usando o seguinte comando. Para sistemas baseados em RedHat, não há necessidade de habilitar nada.

sudo a2ensite phabricator.conf

Por fim, reinicie o serviço Apache para refletir as novas alterações.

service httpd restart				[On RedHat]

sudo /etc/init.d/apache2 restart		[On Ubuntu]

Etapa 4: Configurar MySQL para Phabricator

Agora é hora de configurar o MySQL, mas antes de prosseguir para a configuração, certifique-se de que seu MySQL esteja funcionando e que você possa se conectar a ele. Assim, você pode carregar as configurações do mysql nele.

cd /var/www/html/myprojectapp/phabricator/		[On RedHat]

cd /var/www/myprojectapp/phabricator/			[On Ubuntu]

./bin/config set mysql.host localhost
./bin/config set mysql.user root
./bin/config set mysql.pass mjackson

Em seguida, execute o script de atualização de armazenamento para carregar o esquema do banco de dados nele. Durante o processamento, você será solicitado a pressionar 'y' para continuar. Isso levará pouco tempo para concluir a configuração do esquema de dados.

./bin/storage upgrade --user root --password mjackson

Uma vez adicionado o esquema ao mysql, reinicie o serviço para obter novas configurações.

service mysql restart

sudo service mysql restart

Etapa 5: Configurando a UI da Web do Phabricator

Agora você pode acessar a IU da web nos seguintes locais, mas precisamos criar uma conta de login de administrador.

http://phab.tecmintlocal.com/

OR

http://ipaddress

Se a página de configuração do administrador acima não for exibida, precisaremos criar o login do administrador manualmente a partir do terminal. Esta etapa é necessária apenas se recebermos o erro porque a conta do administrador não foi definida.

./bin/accountadmin

Depois de criar a conta de administrador, você pode fazer login na seção de administração usando as mesmas credenciais. Após o login você poderá ver algum problema de configuração no canto superior esquerdo, que precisa ser resolvido antes de começar a usá-lo.

Aqui estão algumas das etapas para correção. Todos os problemas podem ser resolvidos com muita facilidade, pois eles apontaram como resolvê-los.

No total, há 10 problemas de configuração mencionados, conforme mostrado na imagem abaixo.

Aqui, não posso mostrar como resolver cada problema, mas tentarei mostrar como resolver um dos problemas mencionados na página de erro. Vejamos o primeiro problema, Modo MYSQL STRICT_ALL_TABLES não definido, clicando no link você obterá instruções sobre como resolver o problema.

Então, vamos seguir as instruções descritas na página. Abra e edite o arquivo de configuração do mysql.

/etc/my.cnf		[On RedHat]

sudo vim /etc/mysql/my.conf	[On Ubuntu]

Em seguida, anexe o código na seção mysqld do arquivo conf, o que obtemos ao clicar em “Modo MYSQL STRICT_ALL_TABLES não definido“.

sql_mode	= STRICT_ALL_TABLES
ft_min_word_len	= 3

Depois de resolver cada erro, você deve reiniciar o serviço MySQL e Apache para refletir as novas alterações.

------------ On Red Hat Systems  ------------
service mysqld restart
service apache restart


------------ On Ubuntu Systems  ------------
sudo service mysql restart
sudo service apache2 restart

Após resolver todos os problemas, você pode fazer login novamente no painel e verificar o status, você verá a mensagem “Pronto para usar”.

Etapa 6: Navegando pelos recursos do Phabricator

Você pode ver alguns dos recursos disponíveis para o usuário, conforme mostrado nas imagens abaixo.

Para criar uma conta de usuário normal, clique no ícone do canto superior esquerdo, role a página para baixo e clique em “Pessoas“. Agora para criar um novo usuário temos que clicar em “Criar Novo Usuário“.

Etapa 7: recuperar a senha de administrador do Phabricator

Caso você esqueça sua senha de administrador e queira recuperá-la, basta seguir o comando abaixo.

./bin/auth recover tecmint

A seguir, copie o código de acesso fornecido e acesse a URL para recuperação, conforme mostram as imagens abaixo.

Por enquanto é tudo, instalamos e configuramos com sucesso “Phabricator“uma ferramenta de gerenciamento de projetos de código aberto sem quaisquer falhas. Espero que você também tenha encontrado algum erro, se houver, me avise por meio de comentários, eu adoraria ajudá-lo.

http://phabricator.org/