27
Sep

上一篇文章如何在Heroku上架設免費、開放源碼的專案管理軟體:Redmine 中所提及的步驟可以協助軟體開發人員快速利用開放原始碼以及雲端運算平台Heroku的力量架設屬於自己的軟體專案管理系統。這篇文章將繼續介紹如何透過Google(Gmail或是您自己註冊的Google Apps)來完成Redmine的發信機制。

首先請在您的Redmind專案的lib目錄中新增smtp_tls.rb檔案,內容如下:

接著在config/environment.rb的最後面新增下列程式碼:

記得將帳號、密碼更換為您自己的設定,若是註冊在Google Apps底下的Gmail,請記得輸入完整的帳號名稱,例如:[email protected]。(domain仍然保留gmail.com即可)

最後利用git指令將最新版的程式碼丟到Heroku上即可!
git add . ; git commit -a -m "Email settings and file:smtp_tls.rb added"
git push heroku master

P.S. 請記得先以管理員的帳號在您的Redmin系統設定中將系統網址、帳號等選項設定為正確的,以免使用者遺失密碼或是註冊後無法正常啟用帳號。

Category : 專案管理 | Blog
27
Sep

Redmine是一套使用Ruby on Rails所開發的軟體專案管理系統,我自己使用Redmine來追蹤、管理自己手邊的軟體專案已經一年多了,深深感受到Redmine所帶來的便利性。雖然軟體專案管理最終是「人」的管理以及制度如何落實的學問,但一套好的管理工具還是可以有效地提昇團隊合作效率,並且有助於追蹤工作進度。關於Redmine的介紹,改天再另外寫文章介紹(當然網路上應該有許多參考)。

這篇文章著重在如何利用Heroku(號稱提供Rails的雲端運算環境、簡單的部署流程並支援Git)架設免費的Redmine專案管理環境。

環境方面您至少要擁有Rails開發環境、Git版本控制軟體、Ruby gem: Heroku以及Heroku帳號,至於其他需要安裝的Ruby Gems請參考Redmine本身的需求。

  1. svn co http://redmine.rubyforge.org/svn/trunk redmine
  2. cd redmine
  3. 編輯.gitignore並移除下列兩行內容
    config/initializers/session_store.rb
    public/plugin_assets
  4. rake config/initializers/session_store.rb
  5. mv config/database.yml.example config/database.yml
  6. rake db:migrate RAILS_ENV="demo"(這一段我是用SQLite的資料庫,是Redmine預設的,有跑這一段好像才會作一些初始化的動作,我就沒仔細去研究如何繞過這一段了,您可以自己在local端開個mysql來完成這個項目)
  7. git init; echo .svn >> .gitignore ; git add . ; git commit -a -m "Init Redmine project"
  8. svn propset svn:ignore .git .(請svn忽略.git目錄,請注意.git之後還有一個 .)
  9. heroku create(或是heroku create your_app_name,若沒指定名稱則會由Heroku隨機產生;完成指令後可以下heroku info觀看相關資訊)
  10. git push heroku master
  11. heroku rake db:migrate

此時在瀏覽器中造訪您的Heroku網址應該就會看到正常執行的畫面了。Redmine預設的管理員帳號密碼皆為admin,您可以直接登入開始使用Redmine來做為您的軟體專案管理系統。

P.S. 依照上列步驟安裝後尚無法使用E-mail發信功能(E-mail notifications for any updates),我在自己的主機上是習慣使用Gmail(或是Google Apps下的Mail)來發信免去自行維護郵件主機的麻煩,我猜Heroku上也可以如法炮製,由於這部份我還沒有研究,等下一篇文章再與各位分享。

Category : 專案管理 | Blog
20
Nov

Heroku是一個讓網頁開發人員可以在線上編輯Rails程式的網路服務,目前還在limited beta的階段,有興趣申請的讀者可以到申請網址登記排隊。上一篇文章提到Heroku的幾個特色,這篇文章就登入來玩玩看吧!

初次登入之後會看到如下畫面:

image

此時尚未建立任何應用程式,點選建立程式之後會轉到另一個網址:http://edit.untitled-22289.heroku.com/,由於尚未對應用程式命名,網址是以流水號加上untitled的方式命名,這是可以設定的。(說不定還支援使用者自行指定domain name?或許將會是個付費服務)。
image

上圖是應用程式的設定畫面,可以自訂網址、支援協同編輯、匯入/匯出、程式版本快照(簡單的版本控制),至於Other裡面目前只有Destroy一項功能:p

因為內文都是一些截圖,使用起來對我而言也沒有太大的驚喜,所以先講結論吧!

  • 適合初學者
    環境都已經建好了,連資料庫都免費提供,完全不需要學習建置環境或是任何設定,就可以開始快快樂樂寫Rails。
  • 適合拿來當維護環境
    手邊沒有電腦、沒有合適的開發環境、沒有安全的網路環境,又急著要修改?如果類似的服務可以提供https://的SSL環境,或許可以拿來玩玩看。
  • 適合拿來推廣Rails
    技術高手想要推廣Rails,但手邊沒有現成的環境,登入Heroku馬上就可以開始demo Ruby on Rails的威力,新手看到一個留言板居然沒有幾行程式就搞定,一定會馬上被拐進來的:D

下圖即編輯程式的主畫面:

image

畫面的構成我就不多做介紹了,基本上在編輯畫面可以看到Rails app的目錄結構、檢視資料庫schema以及Rails的log file,點選右上角的圖示則會馬上跳轉到應用程式執行的頁面,讓你知道目前執行的狀況。

畫面左下角則有幾個寫Rails必備的指令工具:Generator, Console以及Rake

image

先打開Console模式來玩玩看,點選Console之後會跳到另一個網址,此時出現的是全螢幕的Console畫面,等等再建幾個Model來玩玩看:

image

HelloWorld,建個留言板!

Code Generator的畫面:

image

執行之後也會告知執行結果:

image

稍微寫一下migration,使用編輯器的感覺是非常不順手,我的作業系統、Firefox都是英文環境,語系也設為en-us,但在編輯器裡面卻會出現游標與實際文字位置無法對齊的狀況,實在是相當奇妙。

image

先不管它,先migrate上去了!Rake的畫面也是純指令模式,這點就不太親切啦~建議開發團隊可以考慮NetBeans那種IDE懶人用法啊XD

image

看到這個畫面,我才想起我根本還沒設定database啊XD趕快看看database.yaml如下:

image

換句話說,heroku目前提供了database而且還是postgresql :p,說不定以後也會是個向使用者索取費用的服務。

接下來建立scaffold讓我的guestbook跑起來吧!

image

建立完成之後,應該就可以馬上看到程式目前的畫面啦~!

image

檢視資料庫

檢視資料庫的畫面可以看到目前有哪些資料表:

image

也可以直接點進去修改:

image

檢視Log file

image

點選各個訊息還可以看到更詳盡的資訊。

Category : Ruby on Rails | Web2.0 Website | Blog
20
Nov

image http://heroku.com/

(最近因為忙著申請學校,同時面對工作上的專案跟學校的專題,實在是難有餘裕寫文章,今天算是忙裡偷閒:p幾天沒寫文章手真的很癢,過一陣子忙完會盡量多發文的。)

Heroku是個號稱可以讓你在線上撰寫你的Rails程式,並且連Hosting的服務都一起搞定的網路服務,有興趣的朋友可以到此網址排隊申請:http://heroku.com/beta,邀請函目前需要等待12天左右。

Heroku上列出了幾個特色如下:

  • 線上編輯程式
    image
  • 支援Hosting,新建或是匯入Rails程式後即可直接啟動:D
    image
  • 分享或協同編輯
    image
  • 支援匯入、匯出
    image
  • 還支援完整的Console模式
    image 

References

Category : Ruby on Rails | Web2.0 Website | Blog