Phabricator - Linux için Açık Kaynaklı Güçlü bir "Proje Yönetimi" Aracı


Phabricator, yazılım şirketlerinin daha iyi yazılım oluşturmasına/oluşturmasına yardımcı olan, PHP dili kullanılarak oluşturulmuş ve Linux, MacOSX için Apache 2.0 açık kaynak lisansı kapsamında sunulan ve herhangi bir platformda çalıştırılabilen açık kaynaklı bir uygulamadır. Windows'ta bile çalışabilir ancak tamamen Linux desteğine dayanmaktadır. Phabricator daha önce Facebook tarafından kullanılmıştı. Phabricator'ın ilk sürümü, kodları inceleme ve denetleme, hataları izleme vb. gibi birçok özellik ile Facebook tarafından oluşturuldu.

Phabricator'ı git ve svn ile aynı şekilde depo olarak kullanabiliriz. Belirli geliştirme ekipleri arasında kodun güvenliğini sağlamak için çeşitli gizlilik ayarları mevcuttur. Kodu sonlandırmadan önce iş arkadaşlarınızın kodunu inceleyebiliriz.

Umarım herkes Git'ten haberdardır, değilse lütfen nasıl kullanılacağını açıklayan aşağıdaki GIT makalesine hızlıca göz atın.

  1. GITHub Deposunda Kendi Projelerinizi Oluşturmak için GIT'i Kurun

Git gibi, phabricator da birçok özelliğe sahiptir ve Facebook, Dropbox, Groupon gibi popüler şirketlerin çoğu tarafından web uygulamaları geliştirmek için kullanılır.

Gereksinimler

Phabricator normal bir bilgisayarda aşağıdaki gerekli paketlerle çalışabilir. Yüksek kaynaklara sahip spesifikasyonlara ihtiyacımız yok.

  1. Apache2.2.7 veya üzeri
  2. MySQL ve PHP 5.2 veya üzeri
  3. Git ve bazı php uzantıları.

NOT: Phabricator yalnızca alan adının tamamına (linux-console.net) veya bir alt alan adına (phabricator.linux-console.net) kurulabilir. Bunu mevcut herhangi bir etki alanında belirli bir yola yükleyemezsiniz, örneğin "linux-console.net/phabricator".

Adım 1: Gerekli Bileşenlerin Kurulumu

Ubuntu ve Redhat tabanlı Linux'ta kurulum için kullanılabilen komut dosyaları mevcuttur, Linux'a aşina değilseniz bu seçeneği seçin.

  1. RedHat Türevleri – http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
  2. Ubuntu Türevleri – http://www.phabricator.com/rsrc/install/install_ubuntu.sh

İleri düzey bir kullanıcıysanız, bir phabricator'ı çalıştırmak için bir LAMP sunucusu kurmanız yeterlidir. Tamam, şimdi Phabricator'ı RHEL/CentOS ve Ubuntu/Debian'a kurmaya başlayalım.

RHEL/CentOS'ta

LAMP sunucusunu kurun ve kurulum sırasında bazı php uzantılarını ekleyin.

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

NOT: Ubuntu tabanlı dağıtımlarda kurulum sırasında sizden MysQL için root şifresini girmenizi isteyecektir.

Adım 2: Phabricator Dosyalarını İndirme

Yukarıdakilerin tümünü yükledikten sonra, şimdi kurulum dizinini seçin. Burada Apache dizininin DocumentRoot altında 'myprojectapp' adında bir dizin oluşturacağım.

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

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

Kurulum yapıyorsanız, normal bir kullanıcı olarak yazma iznini almak için mevcut kullanıcıyı (benim durumumda 'tecmint') Apache grubuna eklemeniz gerekir. Kök kullanıcıya geçiş yaptığınızda bu adım göz ardı edilebilir.

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

Ardından yeni oluşturulan dizine, yani projeuygulamam'a gidin.

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

cd /var/www/myprojectapp			[On Ubuntu]

Şimdi, phabricator'ı ve bağımlılıklarını resmi git deposundan çekmeye başlayın.

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

Adım 3: Apache'yi Phabricator için yapılandırma

Ubuntu tabanlı dağıtımlarda mod_php, mod_rewrite ve mod_ssl modüllerini etkinleştirmeniz gerekir, kurulum sırasında bu modüllerin çoğu varsayılan olarak etkindir ancak onaylamamız gerekir.

sudo a2enmod rewrite
sudo a2enmod ssl

Bu modüller etkinleştirildikten sonra değişiklikleri yansıtmak için web sunucusunu yeniden başlatın.

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

Daha sonra Apache yapılandırma dosyanızda ayrı bir Virtualhost oluşturun.

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

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

Aşağıdaki Virtualhost girişini dosyanın altına ekleyin ve DocumentRoot yolunu, phabricator dosyalarının tam konumuyla eşleşecek şekilde değiştirin.

<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>

Ubuntu'da yeni oluşturulan sanal ana bilgisayar girişini aşağıdaki komutu kullanarak etkinleştirmeniz gerekir. RedHat tabanlı sistemler için hiçbir şeyi etkinleştirmenize gerek yoktur.

sudo a2ensite phabricator.conf

Son olarak, yeni değişiklikleri yansıtmak için Apache hizmetini yeniden başlatın.

service httpd restart				[On RedHat]

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

Adım 4: Phabricator için MySQL'i yapılandırın

Şimdi MySQL'i yapılandırmanın zamanı geldi, ancak kuruluma geçmeden önce MySQL'inizin çalıştığından ve ona bağlanabildiğinizden emin olun. Böylece mysql ayarlarını içine yükleyebilirsiniz.

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

Daha sonra, veritabanı şemasını yüklemek için depolama yükseltme komut dosyasını çalıştırın. İşleme sırasında, devam etmek için 'y' tuşuna basmanız istenecektir; veri şemasını ayarlamak için kurulumun tamamlanması çok az zaman alacaktır.

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

Şema MySQL'e eklendikten sonra, yeni ayarları almak için hizmeti yeniden başlatın.

service mysql restart

sudo service mysql restart

Adım 5: Phabricator Web Kullanıcı Arayüzünü Yapılandırma

Artık web kullanıcı arayüzüne aşağıdaki konumlardan erişebilirsiniz, ancak bir yönetici oturum açma hesabı oluşturmamız gerekiyor.

http://phab.tecmintlocal.com/

OR

http://ipaddress

Yukarıdaki yönetici kurulum sayfası görüntülenmiyorsa, terminalden manuel olarak yönetici girişi oluşturmamız gerekir. Bu adım yalnızca yönetici hesabının tanımlanmamasına neden olan bir hatayla karşılaşmamız durumunda gereklidir.

./bin/accountadmin

Yönetici hesabı oluşturulduktan sonra aynı kimlik bilgilerini kullanarak yönetici bölümüne giriş yapabilirsiniz. Oturum açtıktan sonra sol üst köşede, kullanmaya başlamadan önce çözülmesi gereken bazı kurulum sorunlarını görebilirsiniz.

İşte düzeltmeniz gereken adımlardan bazıları; her sorun, nasıl çözüleceğini belirttikleri için çok kolay bir şekilde çözülebilir.

Toplamda, aşağıdaki resimde gösterildiği gibi belirtilen 10 kurulum sorunu vardır.

Burada her sorunun nasıl çözüleceğini gösteremem ancak hata sayfasında belirtildiği gibi sorunlardan birinin nasıl çözüleceğini göstermeye çalışacağım. İlk sayıyı ele alalım, MYSQL STRICT_ALL_TABLES Mod Ayarlanmadı, bağlantıya tıkladığınızda sorunun nasıl çözüleceğine ilişkin talimatlar gelecektir.

Öyleyse sayfada açıklanan talimatları uygulayalım. MySQL yapılandırma dosyasını açın ve düzenleyin.

/etc/my.cnf		[On RedHat]

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

Daha sonra, “MYSQL STRICT_ALL_TABLES Modu Ayarlanmadı” tıklandığında elde ettiğimiz kodu conf dosyasının mysqld bölümünün altına ekleyin.

sql_mode	= STRICT_ALL_TABLES
ft_min_word_len	= 3

Her hatayı çözdükten sonra yeni değişiklikleri yansıtacak şekilde MySQL ve Apache hizmetini yeniden başlatmalısınız.

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


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

Tüm sorunları çözdükten sonra panele tekrar giriş yapıp durumu kontrol edebilirsiniz, “Kullanıma Hazır” mesajını göreceksiniz.

Adım 6: Phabricator Özelliklerine Göz Atma

Kullanıcının kullanabileceği özelliklerden bazılarını aşağıdaki resimlerde gösterildiği gibi görebilirsiniz.

Normal bir kullanıcı hesabı oluşturmak için sol üst köşedeki simgeye tıklayın, ardından sayfayı aşağı kaydırın ve ardından “Kişiler”e tıklayın. Şimdi yeni bir kullanıcı oluşturmak için “Yeni Kullanıcı Oluştur” seçeneğine tıklamamız gerekiyor.

Adım 7: Phabricator Yönetici Şifresini Kurtarın

Yönetici şifrenizi unutursanız ve kurtarmak istiyorsanız aşağıdaki komutu uygulamanız yeterlidir.

./bin/auth recover tecmint

Daha sonra verilen erişim kodunu kopyalayın ve aşağıdaki resimlerde gösterildiği gibi kurtarılacak URL'ye erişin.

Şimdilik bu kadar; açık kaynaklı bir proje yönetimi aracı olan "Phabricator"u herhangi bir aksaklık olmadan başarıyla kurduk ve yapılandırdık. Umarım siz de herhangi bir hatayla karşılaşırsınız, varsa yorum yoluyla bana bildirin, size yardımcı olmayı çok isterim.

http://phabricator.org/