Skip to content

Releases: cloudfoundry/cli

v6.41.0

03 Dec 18:31

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Assign a Stack to a Buildpack epic

Supports the ability to assign a stack to a buildpack that is missing stack metadata. See official documentation for more details.

Important Note: It's important to note that once you assign a stack to a buildpack, you cannot undo the action unless you have access to your buildpack bits.

Additional notes:

  • If you have two buildpacks with the same name, and one has a stack associated, and the other has a nil stack; when you run cf update-buildpack buildpack-name --assign-stack stack - the buildpack with nil stack will be updated.

Service Discovery epic

With app service discovery, apps pushed to Cloud Foundry can establish container-to-container communications through a known route. This allows front end apps to easily connect with back end apps.

Now users can use cf create-shared-domain internal.com --internal to create an internal route, and domains has been updated to include a new details column to let users know if a route is internal.

See official documentation for more details.

Refactors

Important Note:

We've discovered that for commands we've refactored previously, the CLI started incorrectly allowing for additional arguments to be passed in commands, which are ignored silently. Moving forward and starting with these refactored commands, if you provide additional arguments to a command, the command will fail with a meaningful message. [details](https://www.pivotaltracker.com/story/show/162259630]

Note we intend to fix this bug for all refactored commands in a major CLI release see additional details

Services-related Refactors

In order to prepare for a upcoming service-related feature, the Services API team in London refactored the following commands. Big thanks to the SAPI team for providing this work to us.

  • marketplace story
  • create-service-broker story
  • enable-service-access story

User-facing changes include:

  • Updating output where necessary and flavor text to promote consistently as described in our style guide

Create-shared-domain Refactor

In order to prepare for the Service Discovery (Container to Container Networking feature), we've refactored cf create-shared-domain.
story

User-facing changes include:

  • Updating output where necessary and flavor text to promote consistently as described in our style guide

Built with Golang 1.11.x story

Updated to Golang 1.11. See the Golang release summaries for details on the bug fixes.

Enhancements

  • updated cf --help to include the delete command story

Plugin Updates

Contributors: SAPI London team (for the marketplace refactor), Slawek Ligus and the C2C Networking team (for cross team efforts for the Service Discover feature) Thomas Viehman, Jennifer Spinney, Will Murphy, Magesh Kumar Murali, Abby Chau

Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.69.0. See our minimum supported version policy for more information.

v6.40.1

31 Oct 19:04

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Create-service-key Refactor

In order to prepare for a upcoming service-related feature, the Services API team in London refactored create-service-key. Big thanks to the SAPI team for doing this work for us. story

User-facing changes include:

  • improving error messages (for permissions-related errors, and successful output handling if a user is using a async broker)
  • enhancing the UX to remove flavor text and
  • updating output to return consistently for failures to promote consistency as described in our style guide

Service Instance Now Displays Binding Operation Type

Now when you run cf service service-instance to display information for a async binding, in the status field in the bound apps table, more verbose text is returned for when you create and delete a binding. story

Bug Fixes

  • Updates the minimum version for the buildpacks-stacks association feature. In CLI v6.39.0, when the feature was released, we incorrectly set the minimum to cc api version as2.114. The minimum cc api version is now correctly set to 2.112. story
  • Fixes a bug with inspecting a service instance cf service service-instance, now the documentation url displays correctly for services which populate that field story

New Translations

New translations are included in this release - thanks to IBM who contributed updated translations of CLI output and help text. As usual, the update came in mid-release and a number of message strings may have changed since, but will be included in the next release.

Plugin Updates

Contributors: SAPI London team (for the create-service-key refactor and the fix for the service documentation url), Anande Gaitonde, Thomas Viehman, Will Murphy, Abby Chau, Magesh Kumar Murali, Jennifer Spinney

Special Guests:

Dr. Max and the IBM China team (for translation updates)

v6.40.0

08 Oct 21:29

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

create-space (refactor) story

  • modification to color text output as prescribed by our style guide
  • updated error message for when a user is unauthorised to create a space
  • create-space bug with cf auth and using --client- credentials story

OSX Binary is no longer static binary

  • due to reported DNS-related issues, we've reverted the change we made in CLI v6.36.2 to make the OSX binary a static binary story

cf app includes the details header

  • details is added to the cf app command table story
  • now the app instance displays if the app is in a down state story

Bug Fixes

  • Fix bug where trailing slash on cf api would break listing commands for older CC APIs story. For older versions of CC API, if the API URL had a trailing slash, some requests would fail with an "Unknown request" error. These requests are now handled properly.

Plugin Updates

  • Updated MysqlTools v0.4.0
  • Updated Create-Service-Push v1.3.0
  • Updated app-autoscaler plugin 1.0.0
  • Updated drains 1.2.0

v6.39.1

19 Sep 19:49

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Fix for cf push bug when providing a -s stack flag.

Fixes a bug whereby when you attempted to cf push by passing in the -b buildpacks and -s stacks flags, the CLI ignored the -s flag.

Now pushing with multiple buildpacks and providing an explicit -s flag (cf push app -b ruby_buildpack -b go_buildpack -s cflinuxfs3) works as expected.

Note:

  • If you do not explicitly provide a stack, the CLI will continue to use the default system stack.

v6.39.0

11 Sep 23:25

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Buildpacks association with Stacks

In order to help with the transition to cflinuxsf3 in April 2019, stack association with buildpack is introduced in this release.

  • Buildpacks can now have the same name, as long as they are associated with a unique stack. update-buildpack, rename-buildpack, and delete-buildpack now support a -s stack flag to disambiguate buildpacks with the same name epic
  • In order to update-buildpack, rename-buildpack, or delete-buildpack a buildpack with a duplicate name, you must disambiguate the buildpack by providing a stack association with the -s option
  • In order to update-buildpack, rename-buildpack, or delete-buildpack a buildpack that has a unique stack, you do not need provide a -s option
  • In order to update-buildpack, rename-buildpack, or delete-buildpack a buildpack that has no stack association, you do not need to provide a -s option
  • cf buildpacks table display is updated with a new stack field

Review this documentation for more information about this feature, including usage examples.

Refactored commands (rewrites)

In order to prepare for the buildpack - stack association feature, the CLI embarked on a rewrite (refactor) of a subset of buildpacks-related command. User-facing changes include promoting consistency, improving error messages, and enhancing the UX to provide additional information. See below for more information.

We also refactored the create-org command to prepare for work on fixing an existing issue with creating orgs whilst logged with client credentials.

Create Buildpack epic

  • in order to move toward establishing a more consistent CLI experience, create-buildpack now shows more verbose output:
    • user role is outputted when creating a buildpack
    • a upload progress bar is displayed in the output information
  • Fixes a bug whereby previously when you have manifest.yml in your path, that file is ignored when the directory is zipped up story
  • now when you attempt to create a buildpack and you provide a path to an empty directory, the CLI prevents you from creating the buildpack story
  • we no longer validate whether the buildpack zip file contains a bin/compile, which has been deprecated for some time. As a result, the CLI no longer modifies the contents of user provided zip files; previously we defined a buildpack as at the root of bin/compile story
  • the --enable is found to be unnecessary since creating a buildpack will enable the buildpack by default when you use the create-buildpack command story

Rename Buildpack epic

  • error message for when attempting to rename a non-existent buildpack updated

Update Buildpack epic

  • now when you attempt to update a buildpack and you provide a path to an empty directory, the CLI prevents you from creating the buildpack story
  • we no longer validate whether the buildpack zip file contains a bin/compile, which has been deprecated for some time. As a result, the CLI no longer modifies the contents of user provided zip files; previously we defined a buildpack at the root of bin/compile story

Create-org Refactor epic

  • correction to color text output as prescribed by our style guide

Support for Async Operations for Service Bindings epic

  • cf bind-service and cf unbind-service now supports asynchronous operations. The output of both commands have changed accordingly with additional information how to view operation status details.
  • cf service service-instance has been updated such that the service instance information section is separated from the bound apps information. status and message has been added added to the bound apps information.

cf auth supports the --origin option to log in to different identity providers epic

The cf auth command is updated to include an optional --origin flag, so that users can more seamlessly log in to different identity providers. If not provided, cf auth continues to default to the UAA internal data store. See the UAA api documentation for more information.

Service instance sharing is no longer experimental

In CLI release v6.35.0 we introduced service instance sharing, which enables you to share service instances between spaces in the same or in a different organization. The share service CLI commands are no longer experimental.

Enhancements

  • for users on cc api 3.27, cf start is enhanced to display the new cf app v3 output. For users on cc api 3.27 or lower, users will see the same v2 output. Note that if you use v3 commands to create and start your app, if you subsequently use cf stop and cf start, the routes property in cf app will not populate even though the route exists story
  • for users on cc api 3.27, cf restart is enhanced to display the new cf app v3 output. For users on cc api 3.27 or lower, users will see the same v2 output. story
  • for users on cc api 3.27, cf restage is enhanced to display the new cf app v3 output. For users on cc api 3.27 or lower, users will see the same v2 output. story
  • improved help text for -d domains for cf push to include examples of usage story
  • cf v3-scale displays additional app information story
  • if you've created an internal domain, and it is the first domain in cc, the CLI will now ignore the internal domain and instead choose the next non-internal domain when you push an app story

Bug Fixes

  • Fix for users on macOS attempting to brew install cf-cli the CF CLI using the unreleased master branch of Homebrew story
  • Fixes an issue whereby, due to a recent cc api change, when you execute cf push and watch the cf app command, the app display returned a 400 error story
  • Fixes a bug whereby if you logged in using client credentials, cf auth user pass --client credentials you were unable to create an org; now create-org will assign the role to the user id specified in your manifest story
  • fixes an issue introduced when we refactored cf start and as part of that work, we stopped blocking on the initial connection with the logging backend; now the CLI blocks until the NOAA connection is made, or the default dial timeout of five seconds is reached story

Plugins Updates

Read more

v6.38.0

08 Aug 21:18

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Changes to the cf app Display

In late June, we sent out a survey to ask the community their opinion on changing the cf app display. Buoyed by your feedback, we decided to move forward with changing the cf app display such that it is backed by the v3 app api endpoint. story

Users on CC API 3.27.0 or higher will see the new display; primary changes include:

  • app instance information is broken down by process type. See information about using procfiles and how to manage multi processes via a procfile
  • if you are using multiple buildpacks, the new cf app display will list all the buildpacks for your app

Notes:

  • users on CC API 3.27.0 or lower will continue to see the previous cf app display
  • the start command will only appear if the api provides it
  • details no longer appears in the app display table
  • if your app is in a crashed state, information for requested_state and instances no longer appear highlighted in red text
  • if you use the v3-set-droplet command and you do not immediately restage your app, the last_uploaded time will reflect the last time your app was restaged, not when you set the droplet
  • cf v3-app has been removed as a result of this work as it is now a redundant command
  • the new cf app summary at the end of the cf push output will also appear for users on cc api 3.27 or higher (note: commands (cf-start, cf-scale, cf-restart, cf-restage) where cf app appear will change in an upcoming release)
  • plugins will continue to see the previous (non-v3) app display regardless of API version.

Invocation Timeout Configuration

App devs on cc api 3.43.0 or higher can now use v3-set-health-check to set per invocation timeouts for http and port health checks for individual health checks. story. See documentation for more details.

Upgraded to Golang 1.10.3

This release bumps the CLI to use Golang 1.10.3. See the Golang release notes for more information.

Support for SOCKS5

  • Adds SOCKS5 support for cf v3-ssh (Note: SOCKS5 is not supported for the cf ssh command). See the Using the CF CLI with a Proxy Server documentation for more information. story

Multiple Buildpacks Support

Previously, pushing with multiple buildpacks, required you to use a combination of "v2" and "v3" commands. Now, if you are using CC API 3.25 or above, you can push with multiple buildpacks by either passing in multiple -b flags, or use the new buildpacks field in the manifest.

Note:

  • If you are using cc api 3.25, you will not see multiple buildpacks when you use the cf app command - upgrade to cc api 3.27 or higher to see multiple buildpacks displayed in the new app display
  • The buildpack field has been deprecated as a result of this work.
  • In some cases, buildpacks must be specified in a particular order, see the documentation below and this link for more information
  • buildpacks reflects the app buildpack, not the buildpack used if you have used the v3-set-droplet commands
  • If you are using multiple buildpacks as a manifest property to cf push, note that this new feature is not supported with deprecated manifest properties.

See documentation for more information.

Enhancements

  • v3-ssh process type now defaults to web story
  • Support added for setting tags for user provided service instances story
  • Now a warning appears if you attempt to use deprecated properties and variable substitution story
  • Updated usage so now you can rename the cf binary use it with every command story
  • cf events now displays the Diego cell_id and instance guid in crash events story
  • Includes cf service service-instance table display improvements wherein the service instance information is now grouped separately from the binding information story
  • cf service service-instance table display information for user provided services changed: status has been added to the table story

New Translations

New translations are included in this release. Big thanks to IBM who contributed updated translations of CLI output and help text. As the update came in mid-release and a number of message strings changed since, you may find some untranslated messages (in particular in the help pages). story

Bug Fixes

  • the CLI now properly handles escaped commas in the X-Cf-Warnings header

Deprecations

  • the buildpack field in the manifest has been deprecated in favour of buildpacks.

Plugin Updates

  • Updated CF Dev plugin #235
  • Updated copy env plugin #236
  • Updated Mysql Tools plugin #237
  • Updated report users plugin #238
  • Updated maven-push plugin #239
  • Updated drains plugin #241
  • Updated create service push plugin #244

Contributors: An Yu, Sebastian Vidrio, Anande Gaitonde, Thomas Viehman, Alex Zhao, Abby Chau, Spencer Hawley, Renee Chu, Nick Guerette

Special Guests: Dies Koper (for helping us test SOCK5 support), SAPI London team (for tags support for user provided services and help updating the cf service service-instance table), Dr. Max and the IBM team (for translation updates).

v6.37.0

29 May 21:42

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Variable Substitution

Variable substitution allow app developers to create app manifests with values shared across all applicable environments in combination with references to environment-specific differences defined in separate files. Using variable substitution also enables developers to store sensitive data in a separate file that the app manifest inherits, making the credentials easier to manage and keep secure.

See documentation for more information including usage.

Enhancements

  • The api/cloudcontroller/ccv2 package has been updated with more functions #1343
  • Now a warning appears if you are using a API version older than 2.69.0, which is no longer officially supported
  • Now the CLI reads the username and password from the environment variables #1358

Bug Fixes

  • Fixes bug whereby X-Cf-Warnings were not being unescaped when displayed to user #1361
  • When using CF_TRACE=1, passwords are now sanitized #1375 and tracker

Plugin Updates

Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.69.0. See our minimum supported version policy for more information.

Release contributors: Dies Koper and Jay Badenhope (CF CLI PMs who helped research Variable Substitution), An Yu, Sebastian Vidrio, Anande Gaitonde, Thomas Viehman, Alex Zhao, Abby Chau

v6.36.2

17 May 17:30

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Downgraded to Golang. 1.9

Due to a regression with certs in Golang 1.10, we've decided to publish a new release and downgrade our Golang version to 1.9.

This release is a tag of v6.36.1 with Golang version 1.9. When the issues have been fix in Golang, we will upgrade to 1.10.x.

Other Fixes

Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.69.0. See our minimum supported version policy for more information.

Release contributors: An Yu, Sebastian Vidrio, Anande Gaitonde, Thomas Viehman, Abby Chau

v6.36.1

05 Apr 18:37

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Bug Fix for bind-service

Fix for bind-service, whereby when a user attempts to bind a service to an app, an error message would be thrown stating --name requires a specific CF API version. This patch release fixes the issue. #1359

Clarified the error message when you try to push an app to a space that already has that app name and route in a different space.

Release contributors: An Yu, Sebastian Vidrio, Anande Gaitonde, Thomas Viehman, Abby Chau

v6.36.0

03 Apr 21:30

Choose a tag to compare

Package Manager Installation

Installers

Binaries

Change Log

Droplet Upload

Now you can push an app without staging it. The push command now has an optional --droplet flag that allows you to specify a path to a tgz file with a pre-staged app. This allows you to have more granular control over which droplet is being used. For example, you can put the exact version of the app from staging on production and get the results you expect.

Name Service Bindings

We've updated the bind-service command by adding an optional --binding-name flag that allows you to assign a name to that binding. This feature provides app developers control and context on the app-service binding when they may not have control over other related names, such as the app or service instance. Thanks to the CAPI team for providing this feature through PR #1309. We've also updated the service command so you can view binding names, if any, for a specific service.

Upgraded cf CLI to Golang 1.10.1

The cf CLI now uses Go version 1.10.1. We expect this update will resolve recent SSL issues.

Use DisableKeepAlives when closing Network connections

The cf CLI previously used just the Connection: close header when making certain API calls to the Cloud Controller and UAA. Now, DisableKeepAlives is set to true on the client side, to aid with closing connections with these requests. This should alleviate some networking issues with certain load balancers.

Bug Fixes

  • int64 support for cf/flags library, #1333
  • Debian package, #1336
  • Web action flag not working on CLI 0.6.5, #1337
  • When a cf push upload fails/Consul is down, a panic occurs, #1340 and #1351

Note: Colors in the terminal will auto-detect a TTY session - which is the default color if Color_Enabled is not set in the config or $CF_COLOR is empty.

Plugin Updates

  • Create Service Push v1.0.1 release, #214
  • Add Copy-Autoscaler 0.0.1, #216
  • Update CF Local to v0.19.0, #218
  • Update the Java plugin to version 2.0.0, #219

Release contributors: An Yu, Sebastian Vidrio, Anande Gaitonde, Thomas Viehman, Jay Badenhope, Abby Chau