Widgets

2011 年八月底剛在倫敦舉辦完 DrupalCon 2011,官方活動網站上已經整理好各個演講場次的錄影檔了!這是一個演講場次「BUILDING AND MAINTAINING A DISTRIBUTION IN DRUPAL 7 WITH FEATURES」,由一家擅長製作 Drupal Distribution 的義大利公司 Nuvole 所帶來的演講,介紹了 Drupal Distribution 的概念與方法。

Drupal Distribution,可以是一個已經針對某個(或某些)特定用途或目的所校調過的打包檔,通常會產出一個可以很方便進行安裝,安裝完成後即可進入後台做設定調整,調整的過程中盡量不需要(或盡可能少)有 developer 開發資源包含在其中,即可準備上線。

Drupal Distribution 可以是幾個人(或一個人)打包一個特定目的的打包檔給大家用,例如 blog 系統。也可以是組織或企業內部,需要在各單位、或各分公司都部屬一套特定目的的 drupal 系統時,也可以採用 Drupal Distribution 來實作。另外很多人在創業時,常會在企劃案中提說計畫在台灣先測市場、調整產品,然後將這個產品陸續發佈到中國個一線城市、二線城市(如果有地域屬性的產品),那也許 Drupal Distribution 是個可以考慮的方案之一(先不論這種企劃案是否可行,但如果有「散佈」的需求,則可能適合)。

觀看這個演講場次的影片時,建議事先下載簡報檔案 (PDF),因為這一份影片中有很嚴重的色彩偏差(你看了就知道XD)。原始簡報檔的色彩漂亮許多 :p

一些重點筆記摘錄於下:(有很多設定檔內容請參考簡報檔案 PDF


  • Storing Configuration
    • Drupal traditionally stores configuration in databases.
    • But distributions cannot ship their default configuration in this way.
      • Difficult to upgrade
      • Content 和 configuration 混雜在資料庫中
      • 對開發人員(特別是多人團隊)來說很難維護
    • Store configuration in Code.
      • Configuration is generated via database-agnostic PHP code
      • Clean installation procedure
      • Clear upgrade path
      • Code can be versioned
      • Conflicts can be solved
  • Building a Distribution - Packaging the code
    • Bootstrap
      • Makefile (.info)
    • Blocks:
      • Core
      • Modules
      • Themes
      • External Libraries
    • Drush Makehttp://drupal.org/project/drush_make
    • Makefile close-up
      • distro.make: package Core and Profile
        • $ drush make distro.make drupalissimo
        • $ git clone git@github.com:nuvoleweb/drupalissimo.git drupalissimo
          ...
          $ ls -l drupalissimo
      • drupalissimo.make: Package distribution
    • Build Kit: extendable distribution, reusable .make file
    • Installation Profile (.info, .profile, .install)
      • .info - specify dependencies
      • .install - perform installation tasks and upgrades
      • .profile - fully customizable
        • ex: hook_install_tasks()
  • Building a Distribution - Packaging Configuration
    • Module - Features
      • a way to export configuration into PHP code, in the form of a module.
    • Configuration in database: context + view + ctype + image style ...
    • Package functionalities in a logical way - Serveral Features work together to build a site.
    • Module - Kit
      • Kit is a specification, it is a set of guidelines that facilitates building compatible and interoperable Features.
      • Code namespace
      • Machine name
      • Component namespace
  • Maintaining a Distribution




Brought to you by

0 Comments:

Post a Comment

 
Top