https://github.com/mglaman/drupalorg-cli
A command line tool for interfacing with Drupal.org
https://github.com/mglaman/drupalorg-cli
cli drupal
Last synced: 10 months ago
JSON representation
A command line tool for interfacing with Drupal.org
- Host: GitHub
- URL: https://github.com/mglaman/drupalorg-cli
- Owner: mglaman
- Created: 2016-02-13T18:01:06.000Z (almost 10 years ago)
- Default Branch: main
- Last Pushed: 2024-01-27T16:57:02.000Z (almost 2 years ago)
- Last Synced: 2025-03-29T22:08:15.335Z (10 months ago)
- Topics: cli, drupal
- Language: PHP
- Size: 479 KB
- Stars: 129
- Watchers: 3
- Forks: 32
- Open Issues: 49
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
Drupal.org CLI
--------------
[](https://packagist.org/packages/mglaman/drupalorg-cli) [](https://packagist.org/packages/mglaman/drupalorg-cli) [](https://packagist.org/packages/mglaman/drupalorg-cli) [](https://packagist.org/packages/mglaman/drupalorg-cli)
A command line tool for interfacing with Drupal.org. Uses the Drupal.org REST API.
## Requirements
* PHP 8.1 or higher, with cURL support
* [Git](https://git-scm.com/) - Currently required to apply and create patches. Very useful for contributing patches back to an issue.
## Installation
### Installing manually
1. Download the `drupalorg.phar` file from the [latest release](https://github.com/mglaman/drupalorg-cli/releases/latest).
2. Rename the file to `drupalorg`, ensure it is executable, and move it into a directory in your PATH (use `echo $PATH` to see your options).
3. Run `drupalorg` and verify you can see the list of available commands.
### Installing via Composer (deprecated)
Use the following command to install the command line tool via Composer:
`composer global require mglaman/drupalorg-cli`
### Installing (Bash) completion
`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
```
## Updating
Automatic updating is not yet supported. You will need to manually download new releases.
## Usage
Use the 'list' command to see available commands.
```
drupalorg list
```
## 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
````
## Getting Started
### Working with project issues
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.
## Contributing
### Installing and running from source
1. Clone the repository
2. In the drupalorg-cli directory, run `composer install`
3. Run the script with `./drupalorg`