BLT is a tool for building, testing, and launching Drupal sites.
PHP Shell JavaScript ApacheConf Ruby Gherkin Makefile
Latest commit aece646 Feb 22, 2017 @danepowell danepowell committed with grasmash Update multisite.md (#1129)
Permalink
Failed to load latest commit information.
bin Allow bin directory to be configurable (#1001) Jan 20, 2017
blt-project Fixing blt symlink for deployment testing. (#425) Sep 20, 2016
drush Fixing doctor when used with symlinks. (#575) Oct 17, 2016
phing Fixes #1087: Auto-discovery of multisite.name. (#1119) Feb 22, 2017
readme Update multisite.md (#1129) Feb 22, 2017
scripts Fixes #1112: Add a default vagrant_ip and comment in Drupal VM config… Feb 22, 2017
settings Fixed multisite settings on ACE. (#1042) Feb 3, 2017
src Update lightning to 2.0.3 (#1054) Feb 9, 2017
template Added missing newline to end of aliases.drushrc.php. (#1103) Feb 15, 2017
tests/phpunit Fixes #1087: Auto-discovery of multisite.name. (#1119) Feb 22, 2017
.editorconfig Update top-level .editorconfig to include composer.json indent size. (#… Aug 14, 2016
.gitattributes Initial commit. Apr 27, 2016
.github_changelog_generator Scripting releases. (#948) Jan 10, 2017
.gitignore Ensuring that deploy tests run during BLT CI process. Feb 1, 2017
.ruby-version Adding .ruby-version for local development. Dec 6, 2016
.travis.yml Fixes #1087: Auto-discovery of multisite.name. (#1119) Feb 22, 2017
CHANGELOG.md Removing duplicative 8.6.12 text from CHANGELOG.md. Feb 14, 2017
CONTRIBUTING.md Update CONTRIBUTING.md Nov 4, 2016
INSTALL.md Fixes #889: Removes Ansible from docs. Feb 6, 2017
ISSUE_TEMPLATE.md Adding Pull Request template. (#677) Nov 16, 2016
LICENSE.txt Update License to GPL v2 [ci skip] May 25, 2016
PULL_REQUEST_TEMPLATE.md Adding Pull Request template. (#677) Nov 16, 2016
README.md Update README.md (#1055) Feb 9, 2017
RELEASE.md Updating RELEASE.md. (#1106) Feb 15, 2017
acquia-pipelines.yml Improving internal testing of Pipelines (#1114) Feb 17, 2017
blt.sh Fixing BLT executable. (#933) Jan 6, 2017
composer.json Requiring oomphinc/composer-installers-extender. (#1064) Feb 9, 2017
composer.lock Requiring oomphinc/composer-installers-extender. (#1064) Feb 9, 2017
id_rsa_blt.enc Workin on BLT deploys. (#152) (#153) Jun 14, 2016
index.md Adding clarity to documentation. (#707) Nov 23, 2016
mkdocs.yml Improvements to release note generation. Jan 10, 2017

README.md

BLT

Build Status Documentation Status Packagist Stories in Ready

BLT (Build and Launch Tool) is a tool that generates new Drupal projects using a standardized template derived from Acquia Professional Services' best practices.

You can find all BLT documentation on Read the Docs:

Getting started

See INSTALL.md for a list of prequisites and links to instructions for creating new projects, adding BLT to existing projects, and updating BLT.

Videos

Philosophy and Purpose

BLT is designed to improve efficiency and collaboration across Drupal projects by providing a common set of tools and standardized structure. It was born out of the need to reduce re-work, project set up time, and developer onboarding time.

Its explicit goals are to:

  • Provide a standard project template for Drupal based projects
  • Provide tools that automate much of the setup and maintenance work for projects
  • Document and enforce Drupal standards and best practices via default configuration, automated testing, and continuous integration

Its scope is discretely defined. It is not intended to provide:

  • Drupal application features (e.g., workflow, media, layout, pre-fabbed content types, etc.)
  • A local hosting environment
  • A replacement for good judgement (as with Drupal, it leaves you the freedom to make mistakes)

Features

  • Git Hooks
    • pre-commit: Checks for Drupal coding standards compliance
    • commit-msg: Check for proper formatting and syntax
  • Testing Framework.
    • Behat: default local.yml configuration, example tests, FeatureContext.php
    • PHPUnit: default tests for ensuring proper functioning of BLT provided components
  • Project tasks
    • Executing tests and validating code
    • Building dependencies
      • Management of Drupal core, contrib, and third party libraries via Composer
      • Building front end assets. E.g, via gulp, npm, bower, etc.
    • (Re)installation of Drupal
      • Configuration import
  • Artifact Generation
    • Building production-only dependencies
    • Sanitation of production code
  • Continuous Integration & Deployment

Support and contribution

BLT is provided as an open source tool in the hope that it will enable developers to easily generate new Drupal projects that conform to Acquia Professional Services' best practices.

Please feel free to contribute to the project or file issues via the GitHub issue queue. See CONTRIBUTING.md for contribution guidelines and instructions.

License

Copyright (C) 2016 Acquia, Inc.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.