Skip to content

phuocnguyenhuu/cli

 
 

Repository files navigation

Heroku CLI

Heroku logo Node CI Suite npm ISC License

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

  1. Run yarn to install dependencies
  2. 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.

Testing

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.

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.

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 70.8%
  • TypeScript 28.2%
  • Shell 0.9%
  • Ruby 0.1%
  • Batchfile 0.0%
  • Dockerfile 0.0%