2017 © Pedro Peláez
 

druid-tool mana

Druid build tools

image

druidfi/mana

Druid build tools

  • Wednesday, February 28, 2018
  • by back-2-95
  • Repository
  • 3 Watchers
  • 0 Stars
  • 253 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 6 Versions
  • 7 % Grown

The README.md

druidfi/mana

Build, artifact and release management for Drupal 7 sites., (*1)

Travis CI, (*2)

This tool builds environment specific Drupal codebase for your Drupal 7 site., (*3)

Quick sheet

By requiring this toolset, your project gets following commands exposed:, (*4)

  • vendor/bin/mana-build creates new build for selected environment to a path (e.g. builds/something)
  • vendor/bin/mana-artifact makes tar artifact of given path
  • vendor/bin/mana-release makes release by symlinking: public > builds/target_build
  • vendor/bin/mana-dev is alias for building development build and releasing it

See detailed instructions below., (*5)

How to use in the project

Require with Composer:, (*6)

$ composer require druidfi/mana 0.4.1

Add following scripts your project's composer.json file:, (*7)

"scripts": {
    "artifact": [
        "mana-artifact"
    ],
    "build-development": [
        "mana-dev"
    ],
    "build-production": [
        "mana-build production",
        "@release"
    ],
    "build-production": [
        "mana-build testing",
        "@release"
    ],
    "release": [
        "mana-release latest"
    ]
}

If you're project is on Amazee.io, add also this script:, (*8)

"scripts": {
    "post-update-cmd": [
        "mana-post-update"
    ]
}

Or manually copy vendor/druidfi/mana/dist/Makefile to your project root., (*9)

Needed configuration

Put file called release_config.php to your project's conf folder for pre and post hooks (e.g. symlinking)., (*10)

Exposed commands in the requiring project

When installed to the project via Composer, the following command are exposed to vendor/bin folder., (*11)

Create a build

$ vendor/bin/mana-build ENV PATH

ENV=development/production/staging/testing Mandatory, (*12)

PATH=builds/something Optional, defaults to builds/{date}, (*13)

Create an artifact (wraps build & artifact commands)

$ vendor/bin/mana-artifact
$ vendor/bin/mana-release latest

Create a development build and release

$ vendor/bin/mana-dev

Development and testing

You can also run these commands within this repo:, (*14)

Create a build

$ bin/mana-dev

Output:, (*15)

  • builds > path where builds are stored (except for development)
  • public > released build and the path which should be the webroot

Create an artifact

This command creates a tar file from the source specified (public folder by default)., (*16)

$ bin/mana-artifact production

Source folder can be changed with 2nd attribute: $ bin/mana-artifact production someotherfolder, (*17)

Output:, (*18)

  • current.tar.gz > artifact file

Utility commands

  • composer clean will remove files and folders created by build-tool
  • composer test runs PHPUnit tests

The Versions

28/02 2018
27/02 2018

dev-2018-Q1-updates

dev-2018-Q1-updates

Druid build tools

  Sources   Download

MIT

The Requires

 

The Development Requires

by Marko Korhonen

10/01 2017

0.1.0

0.1.0.0

Druid build tools

  Sources   Download

MIT

The Requires

 

The Development Requires

by Marko Korhonen