Command line interface for interacting with Drupal.org
A command line tool for interfacing with Drupal.org. Uses the Drupal.org REST API.
- PHP 7.4 or higher, with cURL support
- Git - Currently required to apply and create patches. Very useful for contributing patches back to an issue.
drupalorg.pharfile from the latest release.
Rename the file to
drupalorg, ensure it is executable, and move it into a directory in your PATH (use
echo $PATHto see your options).
drupalorgand verify you can see the list of available commands.
Use the following command to install the command line tool via Composer:
composer global require mglaman/drupalorg-cli
drupalorg comes with completion support for all commands, excluding options.
To activate it, either source the completion file or add it to the system-wide completion directory, normally
Automatic updating is not yet supported. You will need to manually download new releases.
Use the 'list' command to see available commands.
Available commands: help Displays help for a command list Lists commands cache cache:clear (cc) Clears caches ci drupalci drupalci:list (ci:l) Lists test results for an issue drupalci:watch (ci:w) Watches a Drupal CI job issue issue:apply Applies the latest patch from an issue. issue:branch Creates a branch for the issue. issue:interdiff Generate an interdiff for the issue from local changes. issue:link Opens an issue issue:patch Generate a patch for the issue from committed local changes. maintainer maintainer:issues (mi) Lists issues for a user, based on maintainer. maintainer:release-notes (rn, mrn) Generate release notes. project project:issues (pi) Lists issues for a project. project:kanban Opens project kanban project:link Opens project page project:release-notes (prn) View release notes for a release project:releases Lists available releases tci travisci travisci:list (tci:l) Lists Travis Ci builds for a Drupal project travisci:watch (tci:w) Watches a Travis CI job
If you want to use this to generate patches that you can contribute back to a Drupal project, it's best to work within a cloned repo of that project. To get instructions for cloning a project's repo, visit the "Version Control" tab on the project page.
From within the directory of the project we're working on:
drupalorg issue:apply [issue number]- Create a new branch for the given issue, apply the latest patch on the issue to the new branch, then commit the changes locally.
drupalorg issue:patch [issue number]- Create a new patch for the given issue from the changes committed locally.
- Clone the repository
- In the drupalorg-cli directory, run
- Run the script with