<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Drush Make | Drupal Bristol - July 2014</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> <link rel="stylesheet" href="css/reveal.min.css"> <link rel="stylesheet" href="css/theme/night.css" id="theme"> <link rel="stylesheet" href="lib/css/zenburn.css"> <link rel="stylesheet" href="lib/css/pdf.css"> <script> document.write( '<link rel="stylesheet" href="css/print/' + ( window.location.search.match( /print-pdf/gi ) ? 'pdf' : 'paper' ) + '.css" type="text/css" media="print">' ); </script> <!--[if lt IE 9]> <script src="lib/js/html5shiv.js"></script> <![endif]--> </head> <body> <div class="reveal"> <div class="slides"> <section> <h1>$ drush make drupalbristol</h1> <h3>July 2014</h3> <small>By <a href="http://www.oliverdavies.co.uk">Oliver Davies</a> / <a href="http://twitter.com/opdavies">@opdavies</a></small> <aside class="notes"> dsf </aside> </section> <!-- <section> <h2></h2> <p></p> <pre><code data-trim> </code></pre> <aside class="notes"> </aside> </section> --> <section> <h2>What is it?</h2> <blockquote>"Drush make is an extension to drush that can create a ready-to-use drupal site, pulling sources from various locations. It does this by parsing a flat text file (similar to a drupal `.info` file) and downloading the sources it describes. In practical terms, this means that it is possible to distribute a complicated Drupal distribution as a single text file."</blockquote> <p><small><a href="http://cgit.drupalcode.org/drush_make/plain/README.txt?id=refs/heads/6.x-2.x">http://cgit.drupalcode.org/drush_make/plain/README.txt?id=refs/heads/6.x-2.x</a></small></p> <aside class="notes"> </aside> </section> <section> <h2>Installation (< 5.x)</h2> <pre><code data-trim> # Download drush_make from D.O. $ drush dl drush_make # Move it into a .drush directory within your HOME. $ mv drush_make ~/.drush # Clear the Drush cache. $ drush cc drush </code></pre> <aside class="notes"> </aside> </section> <section> <h2>foo.make</h2> <pre><code data-trim> core = 7.x api = 2 projects[drupal][version] = "7.28" ; Modules ; Themes ; Libraries ; Custom modules and theme </code></pre> </section> <section> <!-- Contrib modules --> <section> <h2>Modules (contrib)</h2> <p></p> <pre><code data-trim> projects[admin_menu][version] = "3.0-rc4" # To place the module within a sub-directory. projects[admin_menu][subdir] = "contrib" </code></pre> <aside class="notes"> </aside> </section> <!-- Dev releases --> <section> <h2>Modules (dev releases)</h2> <p></p> <pre><code data-trim> projects[devel_themer][download][type] = "git" projects[devel_themer][download][revision] = "bec0859" </code></pre> <aside class="notes"> </aside> </section> <section> <h2>Modules (custom)</h2> <p>This module is being downloaded from it's repository on GitHub.</p> <pre><code data-trim> projects[nomensa_amp_base][type] = "module" projects[nomensa_amp_base][download][type] = "git" projects[nomensa_amp_base][download][url] = "https://github.com/opdavies/nomensa-amp-drupal-base.git" projects[nomensa_amp_base][download][branch] = "7.x" </code></pre> <aside class="notes"> </aside> </section> </section> <section> <h2>Themes</h2> <p>Ditto.</p> <pre><code data-trim> projects[zen][version] = "5.4" # This is optional, it seems to work without it. projects[zen][type] = "theme" </code></pre> <aside class="notes"> </aside> </section> <section> <h2>Libraries</h2> <p>You can download external libraries by specifying the "get" download type and the download URL.</p> <pre><code data-trim> libraries[ckeditor][download][type] = "get" libraries[ckeditor][download][url] = "http://download.cksource.com/CKEditor/CKEditor/CKEditor%204.4.1/ckeditor_4.4.1_standard.zip" </code></pre> </section> <section> <h2>make-generate</h2> <p>That's great, but I've already got a site built. Then use <b>make-generate</b>.</p> <pre><code data-trim> $ drush make-generate foo.make </code></pre> </section> <section data-markdown> ## Resources * http://drush.ws/#make * http://drush.ws/#make-generate * https://drupal.org/node/1432374 * https://github.com/opdavies/nomensa-amp-drupal-demo </section> </div> <!-- /.slides --> </div> <!-- /.reveal --> <script src="lib/js/head.min.js"></script> <script src="js/reveal.min.js"></script> <script> // Full list of configuration options available here: // https://github.com/hakimel/reveal.js#configuration Reveal.initialize({ controls: true, progress: true, history: true, center: true, theme: Reveal.getQueryHash().theme, // available themes are in /css/theme transition: Reveal.getQueryHash().transition || 'fade', // default/cube/page/concave/zoom/linear/fade/none // Parallax scrolling // parallaxBackgroundImage: 'https://s3.amazonaws.com/hakim-static/reveal-js/reveal-parallax-1.jpg', // parallaxBackgroundSize: '2100px 900px', // Optional libraries used to extend on reveal.js dependencies: [ { src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } }, { src: 'plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } }, { src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } }, { src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }, { src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } }, { src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } } ] }); </script> </body> </html>