Heroku CLI
The Heroku CLI is used to manage Heroku apps from the command line. It is built using oclif.
For more about Heroku see https://www.heroku.com/home
To get started see https://devcenter.heroku.com/start
Overview
This is the next generation Node-based Heroku CLI. The goals of this project were to make plugins more flexible, remove Ruby as a runtime dependency, and make the CLI faster.
It has identical functionality to the old Ruby CLI. Under the hood, it is a modular CLI made up of node.js plugins.
For more on developing plugins, read Developing CLI Plugins
Issues
For problems directly related to the CLI, add an issue on GitHub.
For other issues, submit a support ticket.
Contributors
Command Topics
Developing
This project is built with lerna. The core plugins are located in ./packages.
After cloning the repo
- Run
yarn
to install dependencies - Run
yarn build
to build the CLI. This will need to be re-run any time you make changes and want to test them locally.
To execute Heroku CLI commands locally, use ./bin/run <command>
. For example, to run the heroku apps
command with your local code, run ./bin/run apps
from the root directory.
Testing
Run all tests with yarn test
.
Run one test, in this case plugin-certs-v5, with yarn lerna run --scope @heroku-cli/plugin-certs-v5 test
.
Debugging
Using WebStorm (from Jetbrains / IntelliJ), you can run/debug an individual test case.
- Create a new run/debug configuration
- Select the 'Mocha' type
- Set the working directory to the directory of the package you are using. (i.e. ~/Heroku/Repos/cli/packages/certs-v5)
Releasing
See the Heroku CLI Release Steps.
Review our PR guidelines.