A command line tool for interfacing with Drupal.org. Uses the Drupal.org REST API.
- PHP 8.1 or higher, with cURL support
- Git - Currently required to apply and create patches. Very useful for contributing patches back to an issue.
Download the
drupalorg.pharfile from the latest release.Rename the file to
drupalorg, ensure it is executable, and move it into a directory in your PATH (useecho $PATHto see your options).Run
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 /etc/bash_completion.d/.
In your .bashrc (or .profile) add
source [...]/vendor/mglaman/drupalorg-cli/drupalorg-cli-completion.sh
Automatic updating is not yet supported. You will need to manually download new releases.
Use the 'list' command to see available commands.
drupalorg list
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
composer install - Run the script with
./drupalorg