/cli

The official command line client for Cloud Foundry

Primary LanguageGoApache License 2.0Apache-2.0

CF logo

Cloud Foundry CLI

The official command line client for Cloud Foundry.

View the latest help for The v8 CLI -OR- The v7 CLI, or run cf help -a to view the help for all commands available in your currently installed version.

GitHub version Documentation Command help pages Slack License

CF CLI Binary Download Server's uptime:

Downloads Uptime


Sections: Getting Started | Download | Known Issues | Bugs/Feature Requests | Plugin Development | Contributing


Getting Started

Download and install the cf CLI from the Downloads Section for either the v8 cf CLI or the v7 cf CLI.

Once installed, you can log in and push an app. There are now three supported versions of the cf CLI:

  1. The v8 cf CLI is backed by the v3 CC API (with the exception of plugins). See our v8 documentation for more information.
  2. The v7 cf CLI is backed by the v3 CC API (with the exception of plugins). See our v7 documentation for more information.

View our CLI v7 & v8 Versioning and Support Policy documentation.

If you have any questions, ask away on the #cli channel in our Slack community and the cf-dev mailing list, or open a GitHub issue.

Contributing & Build Instructions

Please read the contributors' guide

If you'd like to submit updated translations, please see the i18n README for instructions on how to submit an update.

Example

Check out our community contributed CLI plugins to further enhance your CLI experience.

Downloads

Installation instructions

Known Issues

Note: For most up-to-date information in issues and workarounds please review the open and closed github issues

  • On Windows in Cygwin and Git Bash, interactive password prompts (in cf login) do not hide the password properly from stdout (issue #1835). Please use an alternative command (non-interactive authentication cf auth instead of cf login) to work around this. Or, use the Windows cmd command line.
  • On Windows, cf ssh may not display correctly if the TERM is not set. We've found that setting TERM to msys fixes some of these issues.
  • On Windows, cf ssh will hang when run from the MINGW32 or MINGW64 shell. A workaround is to use PowerShell instead.
  • CF CLI/GoLang do not use OpenSSL. Custom/Self Signed Certificates need to be installed in specific locations in order to login/auth without --skip-ssl-validation.
  • API tracing to terminal (using CF_TRACE=true, -v option or cf config --trace) doesn't work well with some CLI plugin commands. Trace to file works fine. On Linux, CF_TRACE=/dev/stdout works too. See this Diego-Enabler plugin issue for more information.
  • .cfignore used in cf push must be in UTF-8 encoding for CLI to interpret correctly. (issue #281)
  • On Linux, when encountering message "bash: .cf: No such file or directory", ensure that you're using the correct binary or installer for your architecture.
  • X-Cf-Warnings are printed through the stdout, if that's an inconvenience you could set CF_RAISE_ERROR_ON_WARNINGS and in that case warnings will be printed through the stderr. See X-Cf-Warnings printed through stdout issue
  • False negative message for user org creation. CLI v7.0 and CLI v7.1 non-admin users with the user-org-creation feature flag enabled will experience a failure when running cf create-org. The command will explicitly fail attempting to grant the user an org-manager role. However, it actually succeeds because the user would have an org-manager role granted to them via CAPI and therefore be able to access their org. This issue is resolved as of CLI v7.2. See Inconsistent v2/v3 behavior around creating new orgs + assigning roles.

Filing Issues & Feature Requests

First, update to the latest cli and try the command again.

If the error remains or feature still missing, check the open issues and if not already raised please file a new issue with the requested details.

Plugin Development

The CF CLI supports external code execution via the plugins API. For more information follow:

When importing the plugin code use import "code.cloudfoundry.org/cli/plugin". Older plugins that import github.com/cloudfoundry/cli/plugin will still work as long they vendor the plugins directory.