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
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
For problems directly related to the CLI, add an issue on GitHub.
For other issues, submit a support ticket.
heroku access
- manage user access to appsheroku addons
- tools and services for developing, extending, and operating your appheroku apps
- manage apps on Herokuheroku auth
- check 2fa statusheroku authorizations
- OAuth authorizationsheroku autocomplete
- display autocomplete installation instructionsheroku buildpacks
- scripts used to compile appsheroku certs
- a topic for the ssl pluginheroku ci
- run an application test suite on Herokuheroku clients
- OAuth clients on the platformheroku config
- environment variables of appsheroku container
- Use containers to build and deploy Heroku appsheroku domains
- custom domains for appsheroku drains
- forward logs to syslog or HTTPSheroku features
- add/remove app featuresheroku git
- manage local git repository for appheroku help
- display help for herokuheroku keys
- add/remove account ssh keysheroku labs
- add/remove experimental featuresheroku local
- run Heroku app locallyheroku logs
- display recent log outputheroku maintenance
- enable/disable access to appheroku members
- manage organization membersheroku notifications
- display notificationsheroku orgs
- manage organizationsheroku pg
- manage postgresql databasesheroku pipelines
- manage pipelinesheroku plugins
- list installed pluginsheroku ps
- Client tools for Heroku Execheroku psql
- open a psql shell to the databaseheroku redis
- manage heroku redis instancesheroku regions
- list available regions for deploymentheroku releases
- display the releases for an appheroku reviewapps
- manage reviewapps in pipelinesheroku run
- run a one-off process inside a Heroku dynoheroku sessions
- OAuth sessionsheroku spaces
- manage heroku private spacesheroku status
- status of the Heroku platformheroku teams
- manage teamsheroku update
- update the Heroku CLIheroku webhooks
- list webhooks on an app
This project is built with lerna. The core plugins are located in ./packages.
After cloning the repo
- Run
yarn
to install dependencies - Run
yarn lerna bootstrap
set up Lerna and link the packages together- This repo currently uses an older version of Lerna. We recommend using the version specified in the package.json instead of a newer version that you may have installed globally.
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.
Run all tests with yarn lerna run test
.
Run one test, in this case plugin-certs-v5, with yarn lerna run --scope @heroku-cli/plugin-certs-v5 test
.
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)
See the Heroku CLI Release Steps.
Review our PR guidelines.