Download - Drush make vs composer
Drupal 8: gestire le dipendenzeDa Drush Make a Composer: cosa cambia?
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
La filosofia del cambiamento
● Drupal è maturato, non reinventa la ruota.● Drupal si è aperto all’interoperabilità (Framework Interop Group - http:
//www.php-fig.org/ )● Una installazione ‘vergine’ di Drupal contiene già componenti esterni alla
community (Twig, varie librerie Symfony, Guzzle, ecc)● Da progetto.make a composer.json
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
Drush Make
Drush Make permette, tramite un file di testo, di gestire i componenti (dipendenze) di una installazione Drupal (core, librerie, moduli) per permettere una più facile distribuzione del codice e la derivante installazione Drupal.
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
Composer
Composer è nato per gestire le dipendenze in progetti PHP di qualsiasi tipo.
La sua versatilità e il suo standard de-facto lo hanno reso la trasposizione naturale per gestire le dipendenze anche in Drupal 8 vista la ormai eterogenea composizione della codebase Drupal (Drupal 7 lo supporta comunque attraverso un modulo contrib).
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
Come cambia la nostra vita adesso?
Per i site-builder o chi non necessita di un controllo approfondito sulle versioni dei componenti della propria installazione Drupal non molto.
● Un grande aiuto è dato da Composer Managerhttps://www.drupal.org/project/composer_manager
Per i developer cambia la gestione delle dipendenze, del controllo delle versioni e dei componenti:
● Gestione ricorsiva delle dipendenze● Generazione del file autoload.php ● Apertura di Drupal verso qualsiasi libreria PSR-1 / PSR-4 (Symfony, Zend, ecc)● Sicurezza nella gestione delle versioni delle dipendenze (composer.lock)
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
composer create-project drupal-composer/drupal-project:8.x-dev myproject --stability dev --no-interaction
Project template per Drupal 8
● https://packagist.org/packages/drupal-composer/drupal-project
Un comando per domarli
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
… oppure un custom composer.json
{"name": "drupal/drupal", "type": "project", "require": {
"composer/installers": "^1.0.21","drupal/core": "~8.0"
}, "minimum-stability": "dev", "prefer-stable": true, "extra": {
"_readme": [ "By default Drupal loads the autoloader from ./core/vendor/autoload.php.", "To change the autoloader you can edit ./autoload.php." ]}
}
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
… oppure There is a module for thatTM
Composer Manager
● https://www.drupal.org/project/composer_manager
$ drush dl composer_manager$ php modules/composer_manager/scripts/init.php$ composer drupal-install
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
Non sono tutte rose e fiori
● Il core di Drupal 8 ha sotto controllo di versione la propria directory dei vendor - https://www.drupal.org/node/1475510
● Cambieranno drasticamente tutte le nostre abitudini
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015
...ma
Dal cambiamento si può sempre imparare!
Drupal Social Club @sparkfabrik 2/10/2015
Grazie!
Domande?
Vincenzo Di Biaggio - Sparkfabrik - @vincenzodb - http://sparkfabrik.com
Drupal Social Club @sparkfabrik 2/10/2015