- Notifications
You must be signed in to change notification settings - Fork5
Initialise a Drupal composer setup
License
hussainweb/drupal-composer-init
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This plugin provides a new composer command (drupal-init
) which helps in creating new Drupal installations based on composer. Most of the options are very similar to the defaultcomposer init
command. There are additional options to specify a Drupal core or distro to use and the docroot.
This plugin also supports Drupal 7 installation but this option needs to be passed in from command line.
The composer.json setup that this plugin generates is inspired bydrupal-composer/drupal-project (both D7 and D8 versions). One important difference is that the composer.json generated by this command does not need several scripts which are part of the drupal-composer project. All the functionality is moved tohussainweb/drupal-composer-helper. There are additional benefits like a simplerextra
section and a more maintainable installation. For more details, see thedrupal-composer-helper plugin.
Since this plugin provides a new composer command that should be used in an empty directory (or at least a directory without a composer.json setup), this has to be installed globally.
composer global require hussainweb/drupal-composer-init:~1.0
composer global update hussainweb/drupal-composer-init --with-dependencies
In a fresh directory, run this command to get started.
composer drupal-init
To intialise a Drupal 7 website, run the following command:
composer drupal-init --drupal-7
Drupal extensions such as modules, themes, and profiles can be specified in the regularrequire
orrequire-dev
section of composer.json schema.
All Drupal extensions can be specified in the regular packages section with their drupal.org name prefixed by 'drupal/
'. For example, if you want to require panels module, specifydrupal/panels
.
Define your dependencies.Would you like to define your dependencies (require) now [yes]?Search for a package: drupal/panelsEnter the version constraint to require (or leave blank to use the latest version):Using version ^4.2 for drupal/panelsSearch for a package: drupal/redirectEnter the version constraint to require (or leave blank to use the latest version):Using version ^1.0@beta for drupal/redirectSearch for a package:
Runcomposer help drupal-init
for more options.
Usage: drupal-init [options]Options: --name=NAME Name of the package --description=DESCRIPTION Description of package --author=AUTHOR Author name of package --type[=TYPE] Type of package (e.g. library, project, metapackage, composer-plugin) [default: "project"] --homepage=HOMEPAGE Homepage of package --require=REQUIRE Package to require with a version constraint, e.g. foo/bar:1.0.0 or foo/bar=1.0.0 or "foo/bar 1.0.0" (multiple values allowed) --require-dev=REQUIRE-DEV Package to require for development with a version constraint, e.g. foo/bar:1.0.0 or foo/bar=1.0.0 or "foo/bar 1.0.0" (multiple values allowed) -c, --core=CORE Drupal Core or distribution, e.g. drupal/core or acquia/lightning [default: "drupal/core"] -s, --stability=STABILITY Minimum stability (empty or one of: stable, RC, beta, alpha, dev) -l, --license=LICENSE License of package --repository=REPOSITORY Add custom repositories, either by URL or using JSON arrays (multiple values allowed) -w, --web-dir=WEB-DIR Specify the docroot (defaults to web) [default: "web"] --drupal-7 Use Drupal 7 packagist instead of Drupal 8 -h, --help Display this help message -q, --quiet Do not output any message -V, --version Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output -n, --no-interaction Do not ask any interactive question --profile Display timing and memory usage information --no-plugins Whether to disable plugins. -d, --working-dir=WORKING-DIR If specified, use the given directory as working directory. -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debugHelp: The drupal-init command creates a composer.json file usable for Drupal projects in the current directory. php composer.phar drupal-init
Contributions are welcome. Please use the issue queue to describe the problem. Pull requests are welcome.
About
Initialise a Drupal composer setup
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.