CF CLI v6.23.0 Released Today

Koper, Dies <diesk@...>

The CF CLI team just cut 6.23.0. Binaries and link to release notes are available at:

This is the last release to bundle the deprecated loggregator consumer library, which is used to talk to the loggregator endpoint on CF releases before v212.

In the next cf CLI release this library is scheduled to be removed; regardless of the CF release version targeted, the noaa library will be used to talk to the doppler endpoint.
This endpoint was deemed stable around CF v203: if targeting an earlier CF release and experiencing issues with commands that interact with the loggregator (e.g. logs, push), please stay on this release of the cf CLI until your target CF is upgraded.

One-off tasks

This release introduces commands to run, terminate and list tasks, available from CF release v247 (CC API v3.0.0) onwards.

A task is an application or script whose code is included as part of a deployed application, but runs independently in its own container.
It can be used to perform one-off jobs, such as:

* Migrating a database
* Sending an email
* Running a batch job
* Running a data processing script

Refer to the Running Tasks documentation<> for details.

Creating users with external identity providers

The create-user command has been enhanced to allow the creation of users mapped to users in an external identity provider, such as LDAP. (#822<>)

$ cf create-user j.smith(a) --origin ldap # LDAP user

CLI client id and secret no longer hard-coded

The client id and secret used by the cf CLI for certain UAA requests are now stored in the local config.json file, making it possible to configure custom ids and secrets, for example to use long-lived tokens for scripts in CI environments.
We're working on proper documentation. For now, refer to #919 (comment)<>.

Built with Golang 1.7.4

Golang 1.7.4 was released this month, addressing a vulnerability that could affect cf CLI users on Darwin with trust preferences for root certificates.
See this announcement<!topic/golang-nuts/9eqIHqaWvck> for details.

Refactored commands

We are in the process of creating a more consistent user experience; our goal is to standardize UI output. For example, warnings and errors will consistently be outputted to stderr instead of stdout. As we iterate through the list of commands, we are also focusing on improving performance and stability.

List of improved commands in this release:

* api
* create-user
* delete-org
* delete-orphaned-routes
* unbind-service
* version

Fixed regressions

* 32 bit binaries of cf CLI 6.22.2 panic on 32 bit systems for commands that interact with loggregator (such as push) due to 64 bit-only code in the doppler library. (#991<>)
* Commands that interact with loggregator (such as push) could panic if the connection with the loggegrator was interrupted (e.g. in the case of a loggregator restart) due to an issue in retry logic. (#1019<>)

Updated commands

* create-security-group and update-security-group now include the new "description" field in the JSON example in their help pages. This field is accepted from CF release v238 (CC API v2.57.0) onwards.
* push now treats values of environment variables specified in the app manifest as strings so big integers do not unintentionally get converted into (harder to read) scientific numbers. (#996<>)
* push no longer panics when loggregator restarts while collecting app logs. (#1019<>)
* delete-space now takes an optional org parameter to allow deletion of a space without targeting it. (#957<>)
* unbind-service no longer fails with an error saying the app is not bound when unbinding a service that is bound to more than 50 apps. (#948<>)
* delete-orphaned-routes now deletes all orphaned routes instead of stopping after deleting 50, and no longer exits with return code 0 when an error occurs. (, #978<>)

New & Updated Community Plugins

* top v0.7.5:
* Usage Report v1.4.1:
* Blue-green-deploy v1.1.0:
* docker-usage v1.0.3:
* cf-download v1.2.0:
* buildpack-usage v1.0.0:


Dies Koper
Cloud Foundry Product Manager - CLI

Join to automatically receive all group messages.