BLT (Build and Launch Tool), available on GitHub, provides an automation layer for testing, building, and launching applications running the current Drupal version.
To improve efficiency and collaboration across Drupal projects, BLT provides both a common suite of tools and standardized structure. The tools and structure will help developers reduce incidents of duplicated work, speed up project configuration, and onboard new developers faster.
Using BLT for your Drupal projects will help you meet the following goals during your development cycles:
- Provide a standard project template for Drupal based projects
- Provide tools automating the configuration and maintenance work for projects
- Document and enforce Drupal standards and best practices through default configuration, automated testing, and continuous integration
BLT’s scope is discretely defined. It’s not intended to provide:
- Drupal application features such as workflow, media, layout, and prefabricated content types
- A local hosting environment
- A replacement for good judgement (as with Drupal, it leaves you the freedom to make mistakes)
Features
BLT offers the following features for your organization’s use:
- Local Git hooks: Evaluate formatting, syntax, and compliance with Drupal coding standards.
- Testing frameworks: Provides default configurations for Behat and PHPUnit.
- Project automation tasks: Includes commands for syncing environments, compiling front-end assets, and executing tests.
- Deployment artifact generation: Includes building production-only dependencies and sanitizing production-environment code.
- Continuous integration and deployment tools: Supports both Acquia Pipelines and Travis CI
Getting started
To get started with BLT, review BLT installation instructions, and then review the following usage documentation:
- Onboarding with BLT: How to get started on project work.
- Repository architecture: How code is organized, and why.
- Project tasks: How to complete tasks on your local computer.
- Automated testing: How to write and run tests, and why you should care.
- Deployment workflow
- Continuous integration
Releases and versioning
BLT releases follow semantic versioning. Major releases will contain backwards-incompatible changes to commands and configuration, while minor and patch releases will always be backwards-compatible.
Contributing to BLT
If you would like to help improve BLT, file issues from its GitHub issue queue. For contribution guidelines and instructions, see Contributing to BLT.
License
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.