Skip to content

Commit

Permalink
Merge pull request #87 from grasmash/bolt-rename-blt
Browse files Browse the repository at this point in the history
Renaming Bolt to BLT.
  • Loading branch information
grasmash committed May 27, 2016
2 parents 77f5569 + 05f73e8 commit 590f178
Show file tree
Hide file tree
Showing 34 changed files with 196 additions and 196 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,6 @@ nbproject/*
*.sql
*.zip

# Some files should be excluded from bolt but not from the projects it
# Some files should be excluded from blt but not from the projects it
# generates, so they must be specified here rather than in template/.gitignore.
template/.idea/.name
16 changes: 8 additions & 8 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,13 @@ before_script:
- git diff --exit-code

script:
# Generate a new 'bolted' project.
- ./bolt.sh configure
- ./bolt.sh create
# Call targets in the new 'bolted' project.
- ../bolted8/bolt.sh build:validate:test -Dcreate_alias=false -Dbehat.run-server=true -Dbehat.launch-phantom=true
# Generate a new 'blted' project.
- ./blt.sh configure
- ./blt.sh create
# Call targets in the new 'blted' project.
- ../blted8/blt.sh build:validate:test -Dcreate_alias=false -Dbehat.run-server=true -Dbehat.launch-phantom=true
# Deploy build artifact.
- ../bolted8/bolt.sh deploy:artifact -Ddeploy.commitMsg="Automated commit by Travis CI for Build ${TRAVIS_BUILD_ID}" -Ddeploy.branch="8.x-build"
# Validate and run 'bolt' phpunit tests.
- phpcs --standard=../bolted8/vendor/drupal/coder/coder_sniffer/Drupal/ruleset.xml tests
- ../blted8/blt.sh deploy:artifact -Ddeploy.commitMsg="Automated commit by Travis CI for Build ${TRAVIS_BUILD_ID}" -Ddeploy.branch="8.x-build"
# Validate and run 'blt' phpunit tests.
- phpcs --standard=../blted8/vendor/drupal/coder/coder_sniffer/Drupal/ruleset.xml tests
- phpunit tests
40 changes: 20 additions & 20 deletions INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
## Creating a new project with Bolt
## Creating a new project with BLT

The following high-level steps will be required to generate a new, fully functioning site using Bolt:
The following high-level steps will be required to generate a new, fully functioning site using BLT:

1. Ensure your native OS meets minimum requirements
1. Clone Bolt to your local machine
1. Clone BLT to your local machine
1. Generate and modify configuration files for your new project
1. Use Bolt’s “installer” to generate a new site
1. Use BLT’s “installer” to generate a new site
1. Setup a local *AMP stack
1. Build your new project’s dependencies and install locally

Expand All @@ -20,15 +20,15 @@ You should be able to use the following tools on the command line of your native
* [Windows](http://php.net/manual/en/install.windows.php)
* [Linux](http://php.net/manual/en/install.unix.debian.php)

## Prepare Bolt installer
## Prepare BLT installer

* Clone Bolt to your local machine on your native OS:
`git clone https://github.com/acquia/bolt.git`
* From the Bolt repository’s root directory, run `composer install`. This will build the dependencies required for Bolt’s “installer”.
* Clone BLT to your local machine on your native OS:
`git clone https://github.com/acquia/blt.git`
* From the BLT repository’s root directory, run `composer install`. This will build the dependencies required for BLT’s “installer”.

# Generate and modify configuration files

From the Bolt repository’s root directory, run `./bolt.sh configure`. This will create your project-specific configuration files. After running, the following files should exist in the Bolt root directory:
From the BLT repository’s root directory, run `./blt.sh configure`. This will create your project-specific configuration files. After running, the following files should exist in the BLT root directory:

* project.yml
* local.drushrc.php
Expand All @@ -43,15 +43,15 @@ At this point, you likely have not configured your local *AMP stack for your new

## Create a new project

Bolt’s “installer” will do the following:
* Create new project directory (sibling of the Bolt repository)
* Copies Bolt template files to the new directory
BLT’s “installer” will do the following:
* Create new project directory (sibling of the BLT repository)
* Copies BLT template files to the new directory
* Replaces tokens in copied files with project-specific strings
* Removes installation artifacts

Run `./bolt.sh create` to do all the things!
Run `./blt.sh create` to do all the things!

Once it’s completed, __change directories to your new project directory. All subsequent steps will happen inside your new project. You have left the Bolt repository behind.__
Once it’s completed, __change directories to your new project directory. All subsequent steps will happen inside your new project. You have left the BLT repository behind.__

## Modifying project files

Expand All @@ -65,12 +65,12 @@ Note that all of the steps from this point forward are the same steps that would

## Set up your \*AMP stack

Before building your project dependencies and installing Drupal, you must have a fully functional \*AMP stack on your local machine. Bolt intentionally does not provide this local development environment--that is outside of the scope of Bolt’s intended responsibilities. It does, however, make recommendations for which tools you should use to manage your stack.
Before building your project dependencies and installing Drupal, you must have a fully functional \*AMP stack on your local machine. BLT intentionally does not provide this local development environment--that is outside of the scope of BLT’s intended responsibilities. It does, however, make recommendations for which tools you should use to manage your stack.

Please see [Local Development](template/readme/local-development.md) for more information on setting up your \*AMP stack:
* [Acquia Dev Desktop](template/readme/local-development.md#using-acquia-dev-desktop-for-bolt-generated-projects)
* [Drupal VM](template/readme/local-development.md#using-drupal-vm-for-bolt-generated-projects)
* [Other](https://github.com/acquia/bolt/blob/8.x/template/readme/local-development.md#alternative-local-development-environments)
* [Acquia Dev Desktop](template/readme/local-development.md#using-acquia-dev-desktop-for-blt-generated-projects)
* [Drupal VM](template/readme/local-development.md#using-drupal-vm-for-blt-generated-projects)
* [Other](https://github.com/acquia/blt/blob/8.x/template/readme/local-development.md#alternative-local-development-environments)

When you have completed setting up your local \*AMP stack, double check that the following pieces of information are still correct:

Expand All @@ -79,7 +79,7 @@ When you have completed setting up your local \*AMP stack, double check that the

## Build your project’s dependencies and install Drupal

Run the following command from the project root: `./bolt.sh setup`. This will do a lot of things for you, including:
Run the following command from the project root: `./blt.sh setup`. This will do a lot of things for you, including:

* Building dependencies
* Installing local git hooks
Expand All @@ -88,7 +88,7 @@ Run the following command from the project root: `./bolt.sh setup`. This will do

When this task is complete, you should have a fully functioning Drupal site on your local machine. You can login to the site by running `drush uli`.

Note that all common project tasks are executed through `bolt.sh` in your project’s root directory. This file simply passes arguments through to Phing, which manages all task automation. For a full list of available tasks, run `./bolt.sh -l`.
Note that all common project tasks are executed through `blt.sh` in your project’s root directory. This file simply passes arguments through to Phing, which manages all task automation. For a full list of available tasks, run `./blt.sh -l`.

## Next Steps

Expand Down
42 changes: 21 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Bolt
# BLT

[![Build Status](https://travis-ci.org/acquia/bolt.svg?branch=8.x)](https://travis-ci.org/acquia/bolt)
[![Build Status](https://travis-ci.org/acquia/blt.svg?branch=8.x)](https://travis-ci.org/acquia/blt)

Bolt is a tool that generates new Drupal projects using a standardized template derived from Acquia Professional Services' best practices.
BLT is a tool that generates new Drupal projects using a standardized template derived from Acquia Professional Services' best practices.

## License

Expand All @@ -14,7 +14,7 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY

## Philosophy and Purpose

Bolt 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.
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:

Expand All @@ -28,11 +28,11 @@ It scope is discretely defined. It is *not* intended to provide:
* A local hosting environment
* A replacement for good judgement (as with Drupal, it leaves you the freedom to make mistakes)

## Creating a new project with Bolt
## Creating a new project with BLT

It isn’t accurate to say that you can “install” Bolt. Rather, you can use Bolt to generate a new project. Within that project, you can then perform common project tasks like build dependencies, install Drupal, run tests, etc.
It isn’t accurate to say that you can “install” BLT. Rather, you can use BLT to generate a new project. Within that project, you can then perform common project tasks like build dependencies, install Drupal, run tests, etc.

Follow the instructions in [INSTALL.md](INSTALL.md) to generate a new project using Bolt.
Follow the instructions in [INSTALL.md](INSTALL.md) to generate a new project using BLT.

## Features

Expand All @@ -46,7 +46,7 @@ Follow the instructions in [INSTALL.md](INSTALL.md) to generate a new project us
* HipChat
* [Testing Framework](template/tests).
* Behat: default `local.yml` configuration, example tests, `FeatureContext.php`
* PHPUnit: default tests for ensuring proper functioning of Bolt provided components
* PHPUnit: default tests for ensuring proper functioning of BLT provided components
* [Project tasks](template/readme/project-tasks.md)
* Executing tests and validating code
* Building dependencies
Expand All @@ -56,42 +56,42 @@ Follow the instructions in [INSTALL.md](INSTALL.md) to generate a new project us
* Travis CI
* GitHub

## Keeping Bolt projects up-to-date
## Keeping BLT projects up-to-date

"How do I pull down upstream changes from Bolt to my Bolt-generated project?"
"How do I pull down upstream changes from BLT to my BLT-generated project?"

This is a popular question, and it's difficult to answer.

Bolt is designed as a "starter kit" rather than a "distribution". It intentionally began with a "fork it and forget it" approach to updates. This is largely due to the fact that Bolt generated files are templates that are meant to be customized, and pulling in upstream updates would wipe out those customizations.
BLT is designed as a "starter kit" rather than a "distribution". It intentionally began with a "fork it and forget it" approach to updates. This is largely due to the fact that BLT generated files are templates that are meant to be customized, and pulling in upstream updates would wipe out those customizations.

That said, there are components of Bolt that could be treated as dependencies that receive upstream updates. Those components include:
That said, there are components of BLT that could be treated as dependencies that receive upstream updates. Those components include:

* Project tasks
* Scripts
* Acquia Cloud hooks

The ideal approach would be to split each of these into a separate, versioned projects that could be treated as formal composer.json dependencies, but we don't currently have the resources to maintain all of those projects.

As a stopgap, you can run the following command to pull in upstream updates to specific files and directories in your Bolt generated project:
As a stopgap, you can run the following command to pull in upstream updates to specific files and directories in your BLT generated project:

`./bolt.sh setup:bolt:update`
`./blt.sh setup:blt:update`

After running, you can review changes via `git diff` and decide what should be committed.

# License, support, and contribution

Bolt is provided as an open source tool in the hope that it will enabled developers to easily generate new Drupal projects that conform to Acquia Professional Services' best practices.
BLT is provided as an open source tool in the hope that it will enabled 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. When doing so, please keep the following points in mind:

* Bolt is distributed under the GPLv2 license; WITHOUT ANY WARRANTY.
* BLT is distributed under the GPLv2 license; WITHOUT ANY WARRANTY.
* The project maintainers make no commitment to respond to support requests,
feature requests, or pull requests.
* All contributions to Bolt will be reviewed for compliance with Drupal Coding
* All contributions to BLT will be reviewed for compliance with Drupal Coding
Standards and best practices as defined by the project maintainer.
* Feature that are part of the [Road Map](https://github.com/acquia/bolt/wiki/Road-Map)
* Feature that are part of the [Road Map](https://github.com/acquia/blt/wiki/Road-Map)
will be prioritized for inclusion.

Bolt work is currently being tracked in the [Bolt GitHub issue queue]
(https://github.com/acquia/bolt/issues) and organized via a
[Waffle.io Kanban Board](https://waffle.io/acquia/bolt).
BLT work is currently being tracked in the [BLT GitHub issue queue]
(https://github.com/acquia/blt/issues) and organized via a
[Waffle.io Kanban Board](https://waffle.io/acquia/blt).
File renamed without changes.
16 changes: 8 additions & 8 deletions build/README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
# Bolt Build Process
# BLT Build Process

Given that Bolt generates child projects which must be tested, the CI flow is a little confusing. The CI configuration is detailed below.
Given that BLT generates child projects which must be tested, the CI flow is a little confusing. The CI configuration is detailed below.

## CI Flow

When a pull request is submitted a travis build is run against Bolt. This tests Bolt's ability to generate a new project. After a successful build, the new project will be deployed to Acquia Cloud and to a GitHub repository, where another child Travis build is subsequently executed. Here is the step-by-step breakdown:
When a pull request is submitted a travis build is run against BLT. This tests BLT's ability to generate a new project. After a successful build, the new project will be deployed to Acquia Cloud and to a GitHub repository, where another child Travis build is subsequently executed. Here is the step-by-step breakdown:

1. Bolt 7.x Pull Request is submitted
2. Travis Build *against Bolt* creates Bolted7 child project
1. BLT 7.x Pull Request is submitted
2. Travis Build *against BLT* creates BLTed7 child project
* Tests are run to assert that project was created
* Tests are run against the child project (install, behat, phpunit, etc.)
3. Upon success, Bolted7 child project is pushed to ACE bolted 7 subscription.
3. Upon success, BLTed7 child project is pushed to ACE blted 7 subscription.
* Tests assert that deployment to remote(s) was successful
4. Travis Build *against Bolted7* begins. Sadly, failure of this build has no impact on the success of Bolt's builds. Status of child builds should be checked periodically to verify that Bolt is generating a working build process for child projects out of the box.
4. Travis Build *against BLTed7* begins. Sadly, failure of this build has no impact on the success of BLT's builds. Status of child builds should be checked periodically to verify that BLT is generating a working build process for child projects out of the box.

Likewise, this process occurs for pull requests submitted to Bolt 8.x with Bolted8 as a companion project.
Likewise, this process occurs for pull requests submitted to BLT 8.x with BLTed8 as a companion project.
Loading

0 comments on commit 590f178

Please sign in to comment.