Releases: cloudfoundry/cli
v6.18.0
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
Org Quota for Reserved Route Ports
Org quota related commands have been enhanced to allow CF admins to set, update and retrieve the limit on the total number of reserved ports that can be used to create routes within an organization. This can be used to distribute a limited number of available ports over multiple organizations for use in TCP routes.
This feature requires the target CF release to be v236 (CC API v2.55.0) or higher.
Color Output Enabled by Default on Windows
CLI output coloring on Windows, introduced in the previous release, is now enabled by default (it can be toggled with cf config --color true|false
), and resolves a bug where ansi codes were displayed in cf help and trace output.
Updated Commands
create-quota
,update-quota
,quotas
andquota
now take an argument to set/update the reserved route port quota, or display it.quotas
,space-quotas
now display shorter table headers in most locales to reduce the total width of the table.delete-orphaned-routes
now displays the port of TCP routes that are about to be deleted.
v6.17.1
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
HTTPS for CF-Community plugin repo
The "CF-Community" plugin repo that is registered with the CLI by default now uses HTTPS.
Unless your local ~/.cf/config.json is removed, the "CF-Community" repo's URL displayed in cf list-plugin-repos
will continue to start with "http://", but actual calls to it will be made securely. To update the displayed URL, either delete ~/.cf/config.json and re-login, or update it manually (cf remove-plugin-repo CF-Community && cf add-plugin-repo CF-Community https://plugins.cloudfoundry.org
).
Windows Installer
The 64 bit and 32 bit Windows installers are now digitally signed with a Cloud Foundry Foundation certificate, so no more warnings popping up that it is not trusted because it has no publisher.
Windows Coloring
The CLI can now display messages in colors on Windows, as it has on Linux and Mac OS. Use cf config --color true
to enable it. Note that it has a side-effect of adding ansi codes in the trace log. That will be addressed in a next release.
Linux 64 bit Static Linking
The Linux 64 bit release is now statically linked (the 32 bit one was already), allowing it to run on alternative distributions such as Alpine.
NOAA client library
The CLI now uses the NOAA client library (https://github.com/cloudfoundry/noaa) instead of Loggregator Consumer (https://github.com/cloudfoundry/loggregator_consumer) to obtain application log messages and metrics. This should not affect CLI users other than that it fixes a regression in cf CLI 6.17.0 with pushing multiple applications defined in an app manifest.
Error Handling for CF_HOME
The CLI will no longer try to create a directory for its local config.json file if the path that environment variable CF_HOME points to does not exist; instead it will return a meaningful error message.
v6.17.0
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
Built with Golang 1.6.1 which addresses two security vulnerabilities
Golang 1.6.1 has just been released, addressing two vulnerabilities that could affect cf CLI users.
See https://groups.google.com/forum/#!topic/golang-nuts/9eqIHqaWvck for details.
TCP Routing
Various commands have been enhanced to support TCP routes for apps deployed to the Diego runtime.
This feature requires the target CF release to be v234 (CC API v2.53.0) or higher and Diego and the Routing API to be enabled.
App Instance Quotas
Quota related commands have been enhanced to expose app instance quotas.
This feature requires the target CF release to be v214 (CC API v2.33.0) or higher for org quotas and v221 (CC API v2.40.0) or higher for space quotas.
Native build on Mac OS
Prevents a fatal runtime error on certain Mac OS versions and Anti-Virus/Security software. See #783, #789
New Commands
cf router-groups
lists the router groups available to your targeted Cloud Foundry. Once an admin creates a new shared domain associated with a TCP router group, developers may create TCP routes from this domain.cf version
shows the cf CLI version.cf --version
andcf -v
will remain offering the same functionality but are omitted fromcf help
's GLOBAL OPTIONS section in favor of the new command.
Updated Commands
create-shared-domain
now accepts a router group to create a domain for (http://cli.cloudfoundry.org/en-US/cf/create-shared-domain.html)domains
now displays the routing type of each domaincreate-route
,map-route
,unmap-route
,delete-route
andpush
now support an additional option to specify a TCP route's port numbercreate-route
andmap-route
now support an additional option to request a random port for a TCP routeroutes
output now includes the port number and type of routecreate-space
help output now doesn't incorrectly indicate there is a default space quota (#774)create-space
now correctly looks for the specified quota in the specified org (#775)create-service-broker
now has an alias,csb
curl
now defaults to performing a POST when the-d
option is specified (#788)curl
no longer displays a message that you should be logged inbuildpacks
no longer tries to retrieve information from the CF endpoint after displaying you are not logged inmap-route
andunmap-route
now map and unmap routes with paths correctly (#792)app
now reports the correct URL when using routes with paths (#809)create-app-manifest
now doesn't wrap an extra set of quotes around environment variables (#800)copy-source
usage in its help page now correctly reflects that specification of a space also requires specification of the space's org
Updated Global Options
-h
is now accepted also after the command to display help, e.g.cf push myapp -h
-v
when used with a command, e.g.cf apps -v
, prints API request diagnostics. This makes enabling trace for a single command much easier, particularly on Windows--version
and-v
when used by themselves still display the CLI version, but are omitted from thecf help
listing in favor of the newversion
command--build
,-b
still display the Golang version the cf CLI was built with, but is omitted from thecf help
listing as it's not relevant to most users
Updated Plugins:
- cf willitconnect v1.1.0: https://github.com/gambtho/cf_will_it_connect_plugin
- Diego Enabler v1.1.0: http://github.com/cloudfoundry-incubator/Diego-Enabler
- Usage Report v1.3.0: http://github.com/krujos/usagereport-plugin
v6.16.1
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
Regression in cf ssh-code
command
Recently released cf CLI v6.16.0 introduced a regression: ssh-code
command returns oauth-token instead of ssh code. This release fixes that regression. No other changes have been made.
Thank you Chris Selzo for catching the issue and notifying us so promptly!
Updated Commands
ssh-code
now displays the correct code (#780)
v6.16.0
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
Route Services
Various commands have been enhanced to support route services.
Route services are services such as filters and content transformations for applications. Examples include rate limiting, metering, authorization, and caching.
This feature requires the target CF release to be v231 (CC API v2.51.0) or greater.
Space-Scoped Service Brokers
create-service-broker
now enables a Space Developer to create a service broker with service plans scoped to the space.
This feature requires the target CF release to be v228 (CC API v2.47.0) or greater.
New Commands
bind-route-service
allows binding of a route service instance to a routeunbind-route-service
allows unbinding of a route service instance from a route
Updated Commands
create-user-provided-service
now accepts a url to create a route servicecreate-user-provided-service
now accepts credential parameters in a JSON file (#650)update-user-provided-service
now accepts a url to create a route serviceupdate-user-provided-service
now accepts credential parameters in a JSON file (#650)curl
now supports reading HTTP request data from a file (#629)service
now also displays service tagslogin
and other commands now display a tip to check HTTP proxy settings when specific network errors occurlogin
without-o
option now returns faster on installations with many orgspush
no longer fails with an invalid query parameter error when targeting CC 2.24.0 or older (#744, #768)push
no longer fails on Windows with >260 character paths (#728)push
no longer errors when invalid path is supplied (with -p) and --no-start is specified (#733)push
now returns a better error message when failing to create a temporary file while preparing for the upload of app bits (#741)create-app-manifest
now produces a valid manifest with 'no-host' attribute for apps with routes with no host (#767)create-app-manifest
now includes the disk quota of the application in the generated manifest (#771)create-app-manifest
now includes the stack the application is deployed on in the generated manifest (#772)copy-source
to another space now works (#762)ssh-code
no longer fails when run behind a configured HTTP proxyoauth-token
now displays only the token to make it easier to embed in scripting (#752)check-route
now accepts a path without a slashcf config --locale
error message (when invalid code is specified) now displays locale codes with a hyphen as per RFC 5646 (codes with underscores are still accepted)update-buildpack
now has correct name forunlock
option in help (PR from Fabio Berchtold)api
andlogin
now display a more meaningful description for--skip-ssl-validation
optionadd-plugin-repo
now displays arguments as mandatory in usage helprepo-plugins
now displays correct usage helpinstall-plugin
now displays correct usage helpremove-plugin-repo
now displays argument correctly in usage helpdelete-space-quota
now displays missing-f
option in usage helproutes
now displays missing--org-level
option in usage helpconfig
now displays brackets around option values in usage helpdelete
anddelete-space
now display a single hyphen for short options in help- Warnings returned in the
X-Cf-Warnings
header by CC APIs are now displayed - Command help now lists options in alphabetical order (#730)
- Japanese help text updated for all commands (PR from Hiroyuki Kaneko)
Deprecated Commands
- The following commands now return an error when targeting CF v228 (CC API version 2.47.0) or greater, which removes deprecated features that these commands exposed:
migrate-service-instances
purge-service-offering
's-p
optionservice-auth-tokens
create-service-auth-token
update-service-auth-token
delete-service-auth-token
Updated & New Plugins:
- Download Droplet v1.0.1: https://github.com/krujos/download_droplet_plugin
- Doctor v1.0.2: https://github.com/emirozer/cf-doctor-plugin
- Fastpush v1.0.0: https://github.com/xiwenc/cf-fastpush-plugin
CF Version v6.15.0
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
Routes with Paths
Various commands have been enhanced to allow you to set a path for your route. This allows you to map a route with a path (e.g. myapp.example.com/foo) to your app.
This feature requires the target CF release to be v218 (CC API v2.36.0) or higher.
Updated Translations
IBM has contributed translations for all CLI help text and messages in 9 languages: de_DE, es_ES, fr_FR, it_IT, ja_JP, ko_KR, pt_BR, zh_Hans and zh_Hant.
We are brainstorming on ways to keep them up to date. Until that's worked out, you may find new or updated messages untranslated. We welcome PRs for this.
Updated Commands
create-route
now allows specifying a path in a route using a new--path
optioncreate-route
now accepts the human-readable--hostname
option in addition to short-n
option to set the hostnamecreate-route
now clarifies in the help that the--hostname
option is required for shared domainsdelete-route
now accepts the human-readable--hostname
option in addition to short-n
option to set the hostnamedelete-route
now allows specifying a path in a route using a new--path
optionmap-route
now allows specifying a path in a route using a new--path
optionmap-route
now accepts the human-readable--hostname
option in addition to short-n
option to set the hostnameunmap-route
now allows specifying a path in a route using a new--path
optionunmap-route
now accepts the human-readable--hostname
option in addition to short-n
option to set the hostnamedelete-route
now allows specifying a path in a route using a new--path
optiondelete-route
now accepts the human-readable--hostname
option in addition to short-n
option to set the hostnameroutes
now includes the path of a routepush
now allows specifying a path in a route using a new--path
optionpush
now accepts the human-readable--hostname
option in addition to short-n
option to set the hostnamepush -p
supports specifying a symlink to the directory containing the files to push (#693)ssh
now keeps its connection open when idleconfig
andcurl
now display the human-readable options consistently with double hyphens in the OPTIONS section of the help textfiles
now documents in its help that it only supports apps running on the DEA backend, and fails with a clear message when the backend is Diego (#724)- All commands that print a table (e.g.
apps
,routes
) now correctly align the table headers containing non-latin characters (e.g. Japanese) (#723)
Updated Plugins:
- CF Doctor Plugin: https://github.com/emirozer/cf-doctor-plugin
- Firehose Plugin: http://github.com/cloudfoundry/firehose-plugin
CF version v6.14.1
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
Install Experience Improvements
- Mac OS X installer is now digitally signed with a Foundation certificate, so CLI can be installed without needing to bypass security features. (Similar experience on Windows will be addressed soon.)
- Mac OS X installer now includes the correct CLI release version and package size in distribution manifest
- Debian installer now denotes the correct package size
Updated Commands
push
now deploys apps with jars generated with Spring Boot 1.3.0 that embed a script at the start of the jar file (#411)push
now deploys apps with >64KB read-only files (#685)push
no longer fails on Windows with >260 character paths that are specified in .cfignore (#564)push
no longer continues traversing folders specified in .cfignore (#564)push
now displays a user friendly message when no application files found (#687)push
now uses a CF Foundation buildpack as example in help text for-b
optionssh
no longer swallows execution result when invoked repeatedly with-c
option (#702)auth
now displays an error message in case of a 502 HTTP error responsehelp
no longer includes redundant BUILD TIME sectiondelete-quota
now displays correct help text for-f
option (#715)purge-service-instance
now returns a meaningful error message when targeting a CF release that does not support purging service instances (#690)
Plugin Framework Changes
- The
Domain
field of the application model returned by GetApp is now properly populated (#699)
New Plugins:
- CF Doctor Plugin: https://github.com/emirozer/cf-doctor-plugin
CF version v6.14.0
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Release Notes
New Commands
purge-service-instance
for admins dealing with an unresponsive service instance, to delete itrouter-groups
for admins to list the type of router groups configured.
Updated Commands
create-org
now assigns the org creator as its initial OrgManager automaticallycf -v
is now semver-compliant ("6.14.0+2654a47-2015-11-18")set-org-role
andunset-org-role
now work for Org Managers (see note below)set-space-role
andunset-space-role
now work for Org Managers and Space Managers (see note below)
Note that the set/unset role commands require the target CF release to be v219 (CC API v2.37.0) or higher and the feature flags set_roles_by_username
and unset_roles_by_username
to be enabled (use cf feature-flags
to check) to be used by Org/SpaceManagers. Without these conditions they will continue to work only for admins.
Bug Fixes
- Fixed issues in help and usage of
stack
andstacks
(#635) - Fixed issues in help examples of
create-service
(#107628656) - Fixed issue with plugins with long command names (#653)
push
did not upload empty folders, causing an issue with the Java buildpack not recognizing a valid Web application with an empty WEB-INF folder (#107835158)- When pushing apps under 1KB with
push
, the "B" unit is now present in the upload status message (#108280642) - Plugin API commands no longer leak file descriptors (#108012132)
User Experience Improvements
- Added better error message when trying to create a user with
create-user
and passing in an invalid username (#66201062) - Added better error message when passing more arguments than the required app name argument to
ssh
(#638) - Fixed typo in
space
help text. (#672) - Updated the bug report template to request more details (#106902332)
Plugin Framework Changes
- Tokens are now refreshed automatically when the AccessToken plugin method is called (#597)
- Added documentation and coding examples around libraries available for TDD plugin development (#107137824)
- MinCliVersion in PluginMetadata now works for patch releases (e.g. 6.12.1) (#103468700)
- Field PackageUpdatedAt in GetApp response is now populated instead of always being nil (#107859114)
CF version v6.13.0
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
- Exclude resource_matches we didn't request [#104364496]
- Improved message when 0 users are found per role in 'cf space-users' [#63224944]
- Improved message when 0 users are found per role in 'org-users' [#63224896]
- Add tip for listening on CF port when app start timeout [#97340332]
- Merge pull request #609 from cloudfoundry/update-go
- Move to go 1.5.1 [#104131294]
- Add a --build flag to show Go compiler version
- Add command disallow-space-ssh [#102295832]
- Add command allow-space-ssh [#102295832]
- Add ssh-enabled command [#102394414]
- Add disable-ssh command [#102394414]
- Add enable-ssh command [#102394414]
- Add --docker-image flag to cf push [#102218860]
- Add --health-check-type/-u flag to cf push [#101729532]
- Add support for health-check-type attribute in manifest [#101729532]
- Add get-health-check command [#100320472]
- Add user confirmation prompt before installing a plugin [#97265950]
- Remove one newline after domain TIPs [#104341944]
- Add more detail to delete-shared-domain error [#104341944]
- Add more detail to delete-domain error [#104341944]
- Add note about generating language resources [#100446378]
- Merge pull request #596 from SrinivasChilveri/Issue_68736518 [#68736518]
- Don't show help twice [#103916670]
- Merge pull request #590 from Zouuup/bug/555 [#101509044]
- Merge pull request #581 from mcowger/master [#103453190]
- Allow scaling an app to 0 instances [#97749342]
CF version v6.12.4
Installers
- Debian 32 bit
- Debian 64 bit
- Redhat 32 bit
- Redhat 64 bit
- Mac OS X 64 bit
- Windows 32 bit
- Windows 64 bit
Binaries
- Linux 32 bit binary
- Linux 64 bit binary
- Mac OS X 64 bit binary
- Windows 32 bit binary
- Windows 64 bit binary
Change Log
- Provide usage on unadorned push [#103419480]
- Update dependencies away from code.google.com [#103336616]
- Improve error message when app fail to start with "NoAppDetectedError"
- diego app not to use noaa for metrics [#103051454]
- populate organization name in security-group and security-groups [#102282206]
- create-app-manifest includes command attribute [#102135048]
- Merge pull request #572 from zachgersh/fix-extra-parsing Account for null being passed in extra
- Account for null being passed in extra - fixes #570 (fix panic in
cf marketplace
with v1 services) - handles cf --version [#102641456]
- fix panic in create-app-manifest [#101367528]
- remove inappropriate error message (#566)