Releases: cloudfoundry/cli
v7.0.0
Alert:
There was an issue with the packaging of this initial v7.0.0
release. Please use v7.0.1
instead.
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Compatibility
Minimum API Version: 3.85.0 (cf deployment v13.5.0)
Change Log
For a detailed overview of v7 and upgrade guide, see https://docs.cloudfoundry.org/cf-cli/v7.html
New Features
- Support for rolling app deployments for
push
,restart
,restage
, andcopy-source
- Support for pushing apps with multiple processes
- Support for pushing apps with sidecar processes
- New command:
create-app
- New command:
packages
- New command:
create-package
- New command:
stage-package
- New command:
droplets
- New command:
set-droplet
- New command:
apply-manifest
- New command:
cancel-deployment
- New command:
labels
- New command:
set-label
- New command:
unset-label
Deprecations
- Dropped all support for DEAs
- Dropped all support for v1 service brokers
- Removed
--hostname
and-d
flags onpush
and associated manifest properties. - Removed
--route-path
and--no-hostname
flags onpush
- Removed
rename-buildpack
command in favor of--rename
flag onupdate-buildpack
command - Removed
--random-port
flag fromcreate-route
andmap-route
commands. This is now the default behavior.
Other Changes
- Most commands have received minor, stylistic changes to improve readability and consistency between commands.
- Errors are output to
stderr
instead ofstdout
- Required flag arguments are now positional arguments
- Optional positional arguments are now flag arguments
cf restage
no longer results in aaudit.app.restage
audit event- Some command names have been updated. The old names are preserved as aliases.
Known Issues
- Windows binary zip files do not include a symbolic link from
cf7 -> cf
due to lack of.zip
support for symbolic links on Windows. - Login does not work in certain non-cf-deployment environments due to inconsistent endpoint behavior.
Contributors
The release of v7 was only possible due to the hard work of folks on the cf CLI team, V3 Acceleration Team, Services API team, and many other teams. Below are a list of some folks from these and other teams that did the hard work to make v7 happen.
Piyali Banerjee, Alexander Berezovsky, Alex Blease, George Blue, Seth Boyles, Connor Braa, Florian Braun, Winna Bridgewater, Andrew Brown, André Browne, Marcela Campo, Abby Chau, Renee Chu, Greg Cobb, Josh Collins, Emina Cosic, Andrew Crump, Brian Cunnie, Tim Downey, Derik Evangelista, Daniel Fein, Oleksii Fedorov, Weyman Fung, Anand Gaitonde, Jenna Goldstrich, Nick Guerette, Leah Hanson, Spencer Hawley, Michelle He, Chris Hendrix, Sannidhi Jalukar, Rob Jones, Mike Kenyon, Aarti Kriplani, Merric de Launey, Joao Lebre, Diego Lemos, Belinda Liu, Georgi Lozev, Will Martin, Felisia Martini, Niki Maslarski, Nikolay Maslarski, Andres Medina, Reid Mitchell, Mona Mohebbi, Magesh Murali Kumar, Will Murphy, Harsha Nandiwada, Supraja Narasimhan, Joseph Palermo, James Palmer, Will Pragnell, Eric Promislow, Zach Robinson, Luan Santos, Simon Seif, Chris Selzo, Alex Shan, Brendan Smith, Henry Stanley, Teal Stannard, Steve Taylor, Aditya Tripathi, Sebastian Vidrio, Thomas Viehman, Nicholas Webb, Sarah Weinstein, Eli Wrenn
We would not be here without our dedicated users, especially their pull requests, issues, and the time given for user interviews and discussions. Your feedback has been invaluable. We look forward to more feedback from y'all as we move forward.
Thank you for using the cf CLI and for being so passionate about our app.
v6.51.0
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Change Log
Go 1.13.8
The cf CLI is now build with Golang 1.13.8 story
Bug Fixes
-
Increased resiliency to log cache streaming log loss on foundations with multiple log cache doppler nodes story
-
cf logs --recent lost logs if there are more than 4 MB of logs story
-
cf logs now properly retries getting logs on connection failure to the logging API story
-
Requests to Log Cache were not logged in the same format as other HTTP requests in the cf CLI story
Known Issues
-
There is a known log cache issue on cf-deployment versions 7.0.0 through 9.5.0 (fixed in v10.0.0) where if a user pushes a new app very quickly after performing another logging action (less than a minute between) the API will fail to retrieve the logs for this new app, this typically occurs during the app staging process and will not prevent the app from successfully staging. Our recommended way to avoid this is to deploy at least cf-deployment 10.0.0
-
Experimental commands (those marked as v3-.. such as v3-zdt-push) do not stream logs from Log Cache. No logs will be shown when these commands are run against a foundation that does not have traffic controller enabled. This should not impact the results of the command
-
Log-cache-cf-auth-proxy does not support HS256. In CF CLI v6.50.0, we have moved over to using the log cache exclusively for log retrieval. If you have configured your UAA to use anything other than RS256, the log cache auth proxy does not know how to decode the UAA's tokens and will return 404. This is expected to be fixed in an upcoming log-cache release, so compatibility will be restored in a future cf-deployment version.
Contributors: Brendan Smith, Andrew Crump, Alexander Berezovsky, Steve Taylor, Eric Promislow, Jenna Goldstrich, Chris Hendrix, Nicholas Webb, Reid Mitchell, Josh Collins
Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.128.0 (3.63.0). See our minimum supported version policy for more information.
v6.50.0
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Change Log
Required TLS version is now 1.2
The cf CLI will now only negotiate TLS 1.2 connections. The cipher suites are restricted to those recommended by the Mozilla SSL Configuration Generator. For a full list of supported ciphers see the Cloud Foundry tlsconfig repo. story
Support for Log Cache
The cf CLI now streams logs from Log Cache instead of the soon to be deprecated Traffic Controller, Log Cache provides more stability to larger foundations, as well as reduced IAAS costs story
Fixed support window in CLI
The cf CLI will now properly warn users when using an incompatible CC API version (anything less than cf-deployment 7.0.0) story
Known Issues
-
For foundations with multiple log cache nodes: when streaming application staging logs, some log messages may be missing from the staging output. Those messages are subsequently available via
cf logs --recent
. -
There is a known log cache issue on cf-deployment versions 7.0.0 through 9.5.0 (fixed in v10.0.0) where if a user pushes a new app very quickly after performing another logging action (less than a minute between) the API will fail to retrieve the logs for this new app, this typically occurs during the app staging process and will not prevent the app from successfully staging. Our recommended way to avoid this is to deploy at least cf-deployment 10.0.0
-
Experimental commands (those marked as v3-.. such as v3-zdt-push) do not stream logs from Log Cache. No logs will be shown when these commands are run against a foundation that does not have traffic controller enabled. This should not impact the results of the command
-
cf logs --recent
errors if there is > 4MB of logs returned (story). This is expected to be fixed in an upcoming release. Until then, our recommended mitigation is to use up to CF CLI v6.49.0 -
Log-cache-cf-auth-proxy does not support HS256. In CF CLI v6.50.0, we have moved over to using the log cache exclusively for log retrieval. If you have configured your UAA to use anything other than RS256, the log cache auth proxy does not know how to decode the UAA's tokens and will return 404. This is expected to be fixed in an upcoming log-cache release, so compatibility will be restored in a future cf-deployment version. Until then, our recommended mitigation is to use up to CF CLI v6.49.0
Contributors: Brendan Smith, Andrew Crump, Alexander Berezovsky, Steve Taylor, Eric Promislow, Jenna Goldstrich, Christopher Hendrix
Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.128.0 (3.63.0). See our minimum supported version policy for more information.
v7.0.0-beta.30
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Compatibility
Tested against CC API Release Candidate 1.92.0-rc.14.
Change Log
v3 CC API Resources and backing v7 beta cf CLI commands
space-quotas
is now backed by the v3 API storyset-space-quota
is now backed by the v3 API storyunset-space-quota
is now backed by the v3 API storydelete-space-quota
is now backed by the v3 API storyssh-enabled
is now backed by the v3 API storyspace-ssh-allowed
is now backed by the v3 API storyallow-space-ssh
is now backed by the v3 API storydisallow-space-ssh
is now backed by the v3 API storyapi
is now backed by the v3 API story
Support for Log Cache API
- Resolved Clock Skew gotcha from last release, we now grab logs from log cached based on foundation system time to avoid client clock skew story
Enhancements:
- Changed supported TLS window to only negotiate secure versions of TLS (1.2) story
- Switched back to using the same plugin API the v6 CLI uses story
- Show applied quota in
space
command output story - Add
--quota
flag tocreate-space
story
Documentation
- Official Cloud Foundry documentation notes for v7 beta - includes information about breaking changes and feature development work available on v7
- ADR for
push
Feedback
Do you have feedback or a bug report for the cf CLI v7 beta? Please file a GitHub issue, or reach out on Cloud Foundry Slack #v3-acceleration-team.
V3 Acceleration Team Core Contributors to v7 CLI beta: Reid Mitchell, Greg Cobb, Supraja Narasimhan, Mona Mohebbi, Brian Cunnie, Teal Stannard, Merric de Launey, Belinda Liu, Weyman Fung, Nick Guerette, Sarah Weinstein
CF CLI - v7 Feature Development Contributors: Brendan Smith, Andrew Crump, Eric Promislow, Alexander Berezovsky, Steve Taylor, Jenna Goldstrich
Services API/CLI Contributors: Oleksii Fedorov, Aditya Tripathi, George Blue, Felisia Martini
v7.0.0-beta.29
Installation
Note: V7 beta binaries will be called cf7
to allow for coexistence with V6 cf
binaries.
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Compatibility
Tested against CC API Release Candidate 1.91.0-rc.38.
Change Log
v3 CC API Resources and backing v7 beta cf CLI commands
org-quota
is now backed by the v3 API storyorg-quotas
is now backed by the v3 API storycreate-org-quota
is now backed by the v3 API storyupdate-org-quota
is now backed by the v3 API storyset-org-quota
is now backed by the v3 API storydelete-org-quota
is now backed by the v3 API storyspace-quota
is now backed by the v3 API storycreate-space-quota
is now backed by the v3 API storyupdate-space-quota
is now backed by the v3 API story
Support for Log Cache API
push
now streams logs from the Log Cache API instead of the Traffic Controller API storyrestart
now streams logs from the Log Cache API instead of the Traffic Controller API storystage
now streams logs from the Log Cache API instead of the Traffic Controller API storylogs
now stream logs from the Log Cache API instead of the Traffic Controller API
Enhancements:
restage
now allows for v3 rolling deployment style restaging storyorg
now shows the applied quota storycreate-org
now allows applying a quota to an org on create story
Gotchas
-
"v6" plugins do not work on a v7 cf CLI because we are developing a new plugin interface which calls the v3 API.
install-plugin
will allow you to install a v6 plugin but when you attempt to run the plugin, it fails. In the next v7 cf CLI release, we will disallow installation of v6 plugins on a v7 cf CLI, and vice versa. -
logs
will not give the correct logs if the client's (the machine where thecf7
command is run) clock is skewed relative to the servers'; logs may be missing, particularly if the client's clock is ahead.
Bug Fixes:
restage
stages the most recently uploaded package in theREADY
state; previously it would stage the oldest package story.
Documentation
- Official Cloud Foundry documentation notes for v7 beta - includes information about breaking changes and feature development work available on v7
- ADR for
push
Feedback
Do you have feedback or a bug report for the cf CLI v7 beta? Please file a GitHub issue, or reach out on Cloud Foundry Slack #v3-acceleration-team.
V3 Acceleration Team Core Contributors to v7 CLI beta: Reid Mitchell, Greg Cobb, Supraja Narasimhan, Mona Mohebbi, Brian Cunnie, Teal Stannard, Merric de Launey, Belinda Liu
CF CLI - v7 Feature Development Contributors: Brendan Smith, Andrew Crump, Eric Promislow, Alexander Berezovsky, Steve Taylor, Jenna Goldstrich
Services API/CLI Contributors: Oleksii Fedorov, Aditya Tripathi, George Blue, Felisia Martini
v6.49.0
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Change Log
Built with Golang 1.13
We try to keep up to date with the latest minors of Golang version, hence this upgrade.
OS support changes
We sent a message to cf-dev about the OS support changes. Because we use Go 1.13, the new minimum macOS version is 10.11, El Capitan (https://golang.org/doc/go1.12#darwin) and the new minimum windows version is Windows 7 (https://golang.org/doc/go1.13#windows).
Bug Fixes
--hostname
command line option now overrides random-route specified in manifest. Story- Commands that modify buildpacks (
update-buildpack
,rename-buildpack
,delete-buildpack
) now single-quote the name of the buildpack and stack in the error message when the buildpack is not found.
Contributors: Brendan Smith, Abby Chau, Andrew Crump, Alexander Berezovsky, Steve Taylor, Eric Promislow, Jenna Goldstrich, Joseph Palermo, Mukesh Gadiya
Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.128.0 (3.63.0). See our minimum supported version policy for more information.
v7.0.0-beta.28
⚠️ WARNING: The cf7 restage
command has a known issue in this release. It will incorrectly restage older versions of your application.
Installation
Note: V7 beta binaries will be called cf7
to allow for coexistence with V6 cf
binaries.
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Compatibility
Tested against CC API Release Candidate 1.90.0-rc.43.
Change Log for 7.0.0-beta.28
v3 CC API Resources and backing v7 beta cf CLI commands
org-users
is now backed by the v3 API storyspace-users
is now backed by the v3 API storylogs
is now backed by the v3 API storyauth
is now backed by the v3 API storyunset-space-role
is now backed by the v3 API storyunset-org-role
is now backed by the v3 API storyrestage
is now backed by the v3 API story
Enhancements:
create-org
now assigns the current user roles in the organization storycreate-space
now assigns the current user roles in the space storyset-org-role
returns an error when assigning a role to an invalid client storyapply-manifest
supports variable interpolation story
Gotchas
- "v6" plugins do not work on a v7 cf CLI because we are developing a new plugin interface which calls the v3 API.
install-plugin
will allow you to install a v6 plugin but when you attempt to run the plugin, it fails. In the next v7 cf CLI release, we will disallow installation of v6 plugins on a v7 cf CLI, and vice versa.
Bug Fixes:
delete-user
now waits for the user to be deleted in CC before deleting it in UAA [story] (https://www.pivotaltracker.com/story/show/170007083)
Documentation
- Official Cloud Foundry documentation notes for v7 beta - includes information about breaking changes and feature development work available on v7
- ADR for
push
- Additional cf CLI v7 beta release notes for releases v7.0.0-beta.23 and older
Feedback
Do you have feedback or a bug report for the cf CLI v7 beta? Please file a GitHub issue, or reach out on Cloud Foundry Slack #v3-acceleration-team.
V3 Acceleration Team Core Contributors to v7 CLI beta: Eli Wrenn, Reid Mitchell, Piyali Banerjee, Greg Cobb, Supraja Narasimhan, Abby Chau, Michelle He, Mona Mohebbi, Brian Cunnie, Teal Stannard, Merric de Launey, Seth Boyles
CF CLI - v7 Feature Development Contributors: Brendan Smith, Andrew Crump, Abby Chau, Eric Promislow, Alexander Berezovsky, Steve Taylor, Jenna Goldstrich
Services API/CLI Contributors: Oleksii Fedorov, Aditya Tripathi, George Blue, Felisia Martini
v6.48.0
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Change Log
Improve Behavior of --random-route
Flag
Increased the size of the namespace used for generating random route names from eight thousand to over five million. This reduces the odds of a name conflict. Story
Windows Installer Updates
- Fixed installer on Windows not finding custom installation location on re-installation. Story
Bug Fixes
- Fixes a bug where
cf delete app -r
did not delete routes if you had more than 50 routes associated with the app. Story - Fixes a bug where
cf create-buildpack
would return a misleading error when the buildpack name had invalid characters. Story
Contributors: Abby Chau, Brendan Smith, Andrew Crump, Alexander Berezovsky, Steve Taylor, Eric Promislow, Jenna Goldstrich, Joseph Palermo, Mukesh Gadiya
Note: The minimum version of the CC API this CF CLI release is compatible with is CC API v2.100.0 (3.35). See our minimum supported version policy for more information.
v6.47.2
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Change Log
Built with Golang 1.12.12
Golang 1.12.12 addresses security vulnerabilities and other bugs. See the Golang release summaries for details.
v7.0.0-beta.27
Installation
Note: V7 beta binaries will be called cf7
to allow for coexistence with V6 cf
binaries.
Package Manager Installation
Installers
- Debian 64 bit / 32 bit (deb)
- Redhat 64 bit / 32 bit (rpm)
- Mac OS X 64 bit (pkg)
- Windows 64 bit / 32 bit (zip)
Binaries
Compatibility
Tested against CC API Release Candidate 1.89.0-rc.4*.
Change Log for 7.0.0-beta.27
v3 CC API Resources and backing v7 beta cf CLI commands
events
is now backed by the v3 APIset-org-role
is now backed by the v3 API storyset-space-role
is now backed by the v3 API storyrename-service-broker
is backed by the v3 API story
Enhancements:
- update to
cf start
to support multiple workflows story:- Use Case: using
--no-start
to configure your app before starting it: nowcf push app --no-start
--> configure app --->cf start
works as expected - Use Case: Rolling back your app now if you've rolled back your application (using
set-droplet
, for example) and you usecf start
,start
will use the droplet you've explicitly set - Notes: If we detect that there is a new package, we will always stage the new package
- Use Case: using
- support for tagging resources: now you can use
set-label
,unset-label
, andlabels
to set metadata for thedomain
resource - now if you are running tasks and your app is not a long running process story:
cf push
supports a new--task
flag. Configure your manifest with atask
process type and then runrun-task
. Other changes for tasks:run-task
: now takes a--process
flag. If you have configured your manifest as specified above, this flag is not required, and your task will run as expected using thestart command
for the process type provided in your manifest.run-task
:start command
(previously a required arg) is not an optional flag
Built with Golang 1.12.12
Golang 1.12.12 addresses security vulnerabilities and other bugs. See the Golang release summaries for details.
Gotchas
- "v6" plugins do not work on a v7 cf CLI because we are developing a new plugin interface which calls the v3 API.
install-plugin
will allow you to install a v6 plugin but when you attempt to run the plugin, it fails. In the next v7 cf CLI release, we will disallow installation of v6 plugins on a v7 cf CLI, and vice versa. - cf7 create-org does not assign the current user roles in the org after creating, since we are waiting on development of v3 users/roles. Roles can still be assigned afterwards with cf7 set-org-role.
- cf7 create-space does not assign the current user roles in the space after creating, since we are waiting on development of v3 users/roles. Roles can still be assigned afterwards with cf7 set-space-role.
- When you use a v6 CLI to
create-service-broker
and subsequently runcf7 service-brokers
, the newly created service broker will appear asunknown
. You must usecf update-service-broker
to update the service broker. ATIP
was added toservice-brokers
to advise users about this. The Services Enablement Team will revert this change for the next release. story
Documentation
- Official Cloud Foundry documentation notes for v7 beta - includes information about breaking changes and feature development work available on v7
- ADR for
push
- Additional cf CLI v7 beta release notes for releases v7.0.0-beta.23 and older
Feedback
Do you have feedback or a bug report for the cf CLI v7 beta? Please file a GitHub issue, or reach out on Cloud Foundry Slack #v3-acceleration-team.
V3 Acceleration Team Core Contributors to v7 CLI beta: Eli Wrenn, Reid Mitchell, Piyali Banerjee, Greg Cobb, Supraja Narasimhan, Abby Chau, Mona Mohebbi, Brian Cunnie, Teal Stannard, Merric de Launey, Belinda Liu, special thanks to Connor Braa for the start
xtp work
CF CLI - v7 Feature Development Contributors: Brendan Smith, Andrew Crump, Abby Chau, Eric Promislow, Alexander Berezovsky, Steve Taylor, Jenna Goldstrich, Joseph Palermo, special thanks to Zach Robinson for the tasks pull request
Services API/CLI Contributors: Oleksii Fedorov, Aditya Tripathi, George Blue, Felisia Martini, Winna Bridgewater