composer && modman on magento

Einführung

Andreas Mautz || @mautz_et_tong

webvisum GmbH

NACH RECHTS

Was?

Kurze Einführung in composer und modman am Beispiel magento

NACH RECHTS

Wer?

  • Andreas Mautz
  • programmiert seit 16 Jahren
  • macht magento seit 2008
  • beschäftigt sich mit Deployment-Prozessen, Entwicklungsinfrastrukturen und Wissensmanagement seit 2011
NACH RECHTS

composer

NACH UNTEN
Nils Adermann, Jordi Boggiano

Definition

Composer ist ein Werkzeug zur Abhängigkeitsverwaltung in PHP. Mittels recht einfacher Syntax ist es möglich, Paketabhängigkeiten zu definieren und diese Bibliotheken durch composer in das jeweilige Projekt installieren zu lassen.

NACH UNTEN
Composer ist ein Werkzeug zur Abhängigkeitsverwaltung in PHP. Mittels recht einfacher Syntax ist es möglich, Paketabhängigkeiten zu definieren und diese Bibliotheken durch composer in das jeweilige Projekt installieren zu lassen.

Beispiel

Konfigurationsdatei composer.json

                            {
    "name":"diglin/diglin_uioptimization",
    "type":"magento-module",
    "license":"OSL-3.0",
    "homepage":"https://github.com/diglin/Diglin_UIOptimization",
    "description":"Minify and optimize ../../css and JS files. Configurable ../../library to suit your installation.",
    "authors":[
        {
            "name":"Sylvain Rayé",
            "email":"{firstname}.{lastname}@diglin.com"
        }
    ],
    "require":{
        "magento-hackathon/magento-composer-installer":"*"
    }
}
                        
NACH UNTEN
git clone https://github.com/magento-hackathon/magento-composer-installer.git magecomposerinstaller cd magecomposerinstaller/ composer install --dev

Warum?

  • keine systemweite! Installation von Pakteten sondern projektspezifisch
  • recht einfache Syntax
  • gut verzahnt in das magento-Development-Ökosystem
  • aber nur bei recht kundenneutralen Paketen geeignet, da spezielle Anpassungen immer einzeln zu handeln sind
NACH RECHTS
  • keine systemweite! Installation von Pakteten sondern projektspezifisch
  • recht einfache Syntax
  • gut verzahnt in das magento-Development-Ökosystem
  • aber nur bei recht kundenneutralen Paketen geeignet, da spezielle Anpassungen immer einzeln zu handeln sind

modman

NACH UNTEN
Colin Mollenhour

Definition

modman (Module-Manager) ermöglicht Module getrennt von der (magento-) Installation zu halten und zu pflegen. Die Inhalte der Module werden per Symlink in die eigentliche (magento-)Installation gelegt

NACH UNTEN

modman (Module-Manager) ermöglicht Module getrennt von der (magento-) Installation zu halten und zu pflegen. Die Inhalte der Module werden per Symlink in die eigentliche (magento-)Installation gelegt

Beispiel

Konfigurationsdatei modman


src/app/code/community/Diglin/UIOptimization                    app/code/community/Diglin/UIOptimization
src/app/design/frontend/base/default/layout/uioptimization.xml  app/design/frontend/base/default/layout/uioptimization.xml
src/app/design/frontend/base/default/template/uioptimization    app/design/frontend/base/default/template/uioptimization
src/app/etc/modules/Diglin_UIOptimization.xml                   app/etc/modules/Diglin_UIOptimization.xml
src/lib/*                                                       lib/
src/skin/frontend/base/default/css/w3c-validator.css            skin/frontend/base/default/css/w3c-validator.css
NACH UNTEN
Beispiel links ist Quelle aus dem modman Paket, rechts Ziel im magento

Warum?

  • saubere Trennung von magento core | Eigenentwicklung | Module
  • "nah" am git flow
  • ebenfalls gut verzahnt in das magento-Development-Ökosystem
NACH UNTEN
saubere Trennung von magento core | Eigenentwicklung | Module
"nah" am git flow ebenfalls gut verzahnt in das magento-Development-Ökosystem

Zusammenfassung

NACH RECHTS
Reihenfolge: composer zum installieren, modman zum Pflegen git flow Strategie zum multiparallelen Pflegen von Kundenmodulen

Quellen && nützliche Links

composer

  • composer web page
  • composer repository on github
  • Tutorial / Guide von Vinai


modman

  • modman repository on github
  • magento Modul-Strukturen mit modman von Fabrizio


combined

  • magento-hackathon / magento-composer-installer
NACH RECHTS
Links -> Einführung

Fragen?

Danke!

Hinweis in eigener Sache:
Magento Certification Lerngruppe

ENDE
Magento Certification Lerngruppe Moderations-Kit Bei webvisum Bei Interesse noch 2 modman / composer evt. workshop
Andreas Mautz || andreas.mautz@webvisum.de || webvisum.de