Giter Club home page Giter Club logo

grunt-drupal-tasks's Introduction

Grunt Drupal Tasks

A Grunt plugin to automate Drupal build and testing tasks

Code Status (master branch): Travis CI status Dependency Status Peer Dependency Status npm version

Requirements

Note that Grunt Drupal Tasks is intended to be compatible with Node.js v4 and v0.12 and npm v2. Grunt Drupal Tasks may not work with Node.js v5 and npm v3.

  • Install Node.js v0.12.x or v4.3.x either using a package manager like apt-get, brew, or yum or a standalone installer.

  • Once Node.js is installed, use npm to install grunt-cli, the Grunt command line interface, by running:

npm install -g grunt-cli
  • Some optional features, used in the included example and end-to-end test suite, require additional tools, including Bundler, Composer, Ruby, and RubyGems.

Quickstart

We have a Yeoman generator that can quickly take you from an empty directory to a running Drupal site using this toolchain.

Please welcome Gadget!

Features

This project is built on the tools of the Grunt community to provide scripted automation of a number of PHP & Drupal tasks. Here are a few examples of what it provides:

  • Drush make-based build workflow
  • CI portability (used with Jenkins so far)
  • Opt-in for a number of great enhancements:
    • Composer dependency management for PHP
    • Bundler dependency management for Ruby
    • PHP code quality & static analysis checks
    • Compass compilation
    • Behat testing
  • Deployment packaging
  • Git Hook management
  • Extensibility: Add or override with your plugins or configuration.

We are continuously working to improve this toolchain, adding functionality that we see as common to our continuous integration and everyday development practices.

Usage

Working on a project that's integrated grunt-drupal-tasks? Run grunt help to view documentation tailored for your project.

To build your Drupal site, run grunt.

Special Flags

These flags are not yet documented as part of the grunt help command.

  • --quiet: Suppress desktop notifications.
  • --notify: Request a desktop notification despite timing or environment settings.
  • --timer: Output execution time profile at the end of the task run.
  • --concurrency: Override the dynamic concurrency by Drush Make.
  • --no-validate: Skip grunt:validate in the default grunt task.

Environment Options

These environment variables will override other options.

  • GDT_DOMAIN: Specify the base URL for live system testing. Falls back to a setting in the project's Gruntconfig.json, then hostname if not set.
  • GDT_INSTALL_PROFILE: Overrides the install profile specified in the project's Gruntconfig.json to be used by the install task.
  • GDT_QUIET: If evaluated truthy, will suppress all desktop notifications.
  • GDT_SITE_ALIAS: Configure the default Drush site alias for the project.
  • GDT_SITEURLS: Overrides the URL(s) for the project's site(s) specified in the Gruntconfig.json by which each can be accessed for end-to-end testing by tools such as Behat. Use instead of GDT_DOMAIN if the project has multiple subsites or URLs.

Setting Up and Extending

For information on setting up your project with these tools, see CONFIG.md.

For information on extending these tools or contributing changes, see EXTEND.md.

For information on using these tools with a continuous integration (CI) system, see CI.md.

grunt-drupal-tasks's People

Contributors

andyg5000 avatar arithmetric avatar chasingmaxwell avatar chaunceyt avatar crittermike avatar evanlovely avatar grayside avatar islandusurper avatar jessehs avatar jhedstrom avatar joshmullikin avatar mikeyp avatar mirie avatar smerrill avatar tekante avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.