iT邦幫忙

DAY 19
6

逐步提昇PHP技術能力系列 第 19

逐步提昇PHP技術能力 - 開發工具 : 試用PHPCI

PHP的持續整合方案不算多,如果是github專案,可以透過travis ci來驅動,如果想要在自家安裝的話,就需要找一些其他的方法。之前知道的方案大概有:

  1. Jenkins
  2. phpUnderControl
  3. xinc

最近發現一個新的持續整合伺服器"PHPCI",看到網站上的比較,就對他很期待,因為據說設定很簡單...但是...
參考:
* http://www.phptesting.org/
* https://github.com/Block8/PHPCI

先說在前頭,PHPCI目前的版本是BETA2,不過我試了很久,就是裝不起來XD

先來說一下安裝過程,下載了phpci之後,解開到一個目錄中,然後設定好apache的一個alias路徑到這個目錄下的public目錄,接下來要做的就是設定rewrite rule。

PHPCI網站上有提供一個範本:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /path/to/phpci/public
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]
</IfModule>

不過如果設定過CodeIgniter等framework的話,應該會發現這個rewrite rule是有問題的XD

需要改成:(我設了Alias到/phpci這個url)

RewriteEngine On
RewriteBase /phpci/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

把這個rewrite rule寫入phpci目錄中的public/.htaccess,就可以看到東西。

但是...不論使用他提供的console或是透過瀏覽器進入install.php來安裝,都會失敗XD。而且...設定據說是寫入到PHPCI/config.yml,但是打開一看...裡面的資料格式其實是JSON。另外,在他的github首頁,看到「FAIL」標誌,表示他目前的版本,沒通過持續整合的測試。哇咧

看來要使用這個方案,還是再等等吧...不過至少看到登入畫面,雖然因為安裝失敗,所以資料庫沒有table,也沒產生管理帳號,基本上是無法登入的:

今天的嘗試失敗,明天來試試phpUnderControl看看好了...


上一篇
逐步提昇PHP技術能力 - 開發工具 : 使用phing來建置土砲CI
下一篇
逐步提昇PHP技術能力 - 開發工具 : 試用xinc (1)
系列文
逐步提昇PHP技術能力30

1 則留言

0
fillano
iT邦超人 1 級 ‧ 2013-10-19 23:33:21

嗯,看了一下phpUnderControl,發現他要倚賴持續整合的老祖宗:CruiseControl。很久以前用過的感想是,設定有點麻煩XD,不過他目前支援許多建構工具,包括PHP的Phing。所以phpUnderControl的角色,其實是CruiseControl的一個AddOn,這跟Jenkins對於PHP的支援,其實是差不多的。

我比較想嘗試的是純PHP的方案,比較成熟的看來就是xinc了,先來研究一下...

我要留言

立即登入留言