Skip to content

Releases: cloudfoundry/cli

v6.17.0

15 Apr 21:21
Compare
Choose a tag to compare

Installers

Binaries

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 and cf -v will remain offering the same functionality but are omitted from cf 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 domain
  • create-route, map-route, unmap-route, delete-route and push now support an additional option to specify a TCP route's port number
  • create-route and map-route now support an additional option to request a random port for a TCP route
  • routes output now includes the port number and type of route
  • create-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 in
  • buildpacks no longer tries to retrieve information from the CF endpoint after displaying you are not logged in
  • map-route and unmap-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 the cf help listing in favor of the new version command
  • --build, -b still display the Golang version the cf CLI was built with, but is omitted from the cf help listing as it's not relevant to most users

Updated Plugins:

v6.16.1

26 Feb 18:38
Compare
Choose a tag to compare

Installers

Binaries

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

26 Feb 16:24
Compare
Choose a tag to compare

Installers

Binaries

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 route
  • unbind-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 service
  • create-user-provided-service now accepts credential parameters in a JSON file (#650)
  • update-user-provided-service now accepts a url to create a route service
  • update-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 tags
  • login and other commands now display a tip to check HTTP proxy settings when specific network errors occur
  • login without -o option now returns faster on installations with many orgs
  • push 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 proxy
  • oauth-token now displays only the token to make it easier to embed in scripting (#752)
  • check-route now accepts a path without a slash
  • cf 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 for unlock option in help (PR from Fabio Berchtold)
  • api and login now display a more meaningful description for --skip-ssl-validation option
  • add-plugin-repo now displays arguments as mandatory in usage help
  • repo-plugins now displays correct usage help
  • install-plugin now displays correct usage help
  • remove-plugin-repo now displays argument correctly in usage help
  • delete-space-quota now displays missing -f option in usage help
  • routes now displays missing --org-level option in usage help
  • config now displays brackets around option values in usage help
  • delete and delete-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 option
    • service-auth-tokens
    • create-service-auth-token
    • update-service-auth-token
    • delete-service-auth-token

Updated & New Plugins:

CF Version v6.15.0

13 Jan 04:16
Compare
Choose a tag to compare

Installers

Binaries

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 option
  • create-route now accepts the human-readable --hostname option in addition to short -n option to set the hostname
  • create-route now clarifies in the help that the --hostname option is required for shared domains
  • delete-route now accepts the human-readable --hostname option in addition to short -n option to set the hostname
  • delete-route now allows specifying a path in a route using a new --path option
  • map-route now allows specifying a path in a route using a new --path option
  • map-route now accepts the human-readable --hostname option in addition to short -n option to set the hostname
  • unmap-route now allows specifying a path in a route using a new --path option
  • unmap-route now accepts the human-readable --hostname option in addition to short -n option to set the hostname
  • delete-route now allows specifying a path in a route using a new --path option
  • delete-route now accepts the human-readable --hostname option in addition to short -n option to set the hostname
  • routes now includes the path of a route
  • push now allows specifying a path in a route using a new --path option
  • push now accepts the human-readable --hostname option in addition to short -n option to set the hostname
  • push -p supports specifying a symlink to the directory containing the files to push (#693)
  • ssh now keeps its connection open when idle
  • config and curl now display the human-readable options consistently with double hyphens in the OPTIONS section of the help text
  • files 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 version v6.14.1

23 Dec 02:24
Compare
Choose a tag to compare

Installers

Binaries

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 option
  • ssh 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 response
  • help no longer includes redundant BUILD TIME section
  • delete-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 version v6.14.0

19 Nov 01:10
Compare
Choose a tag to compare

Installers

Binaries

Release Notes

New Commands

  • purge-service-instance for admins dealing with an unresponsive service instance, to delete it
  • router-groups for admins to list the type of router groups configured.

Updated Commands

  • create-org now assigns the org creator as its initial OrgManager automatically
  • cf -v is now semver-compliant ("6.14.0+2654a47-2015-11-18")
  • set-org-role and unset-org-role now work for Org Managers (see note below)
  • set-space-role and unset-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 and stacks (#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

16 Oct 17:31
Compare
Choose a tag to compare

Installers

Binaries

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

18 Sep 22:12
Compare
Choose a tag to compare

Installers

Binaries

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)

CF version v6.12.3

03 Sep 20:39
Compare
Choose a tag to compare

Installers

Binaries

Change Log

  • Merge pull request #544 from cloudfoundry/code-tidy Code tidy
  • Merge pull request #523 from zachgersh/master Unmarshal the extra field, get documentation url
  • add Diego to application model
  • update GATS new repo path [#98861144]
  • update jibber_jabber repo path [#98861144]
  • use go 1.4 to detect symlink file in windows [#75245040]
  • do not call GetContainerMetrics() when a diego app is stopped [#98672332]
  • Merge pull request #540 from cloudfoundry/use_go_yaml Support yaml '<<' merge type
  • complete removal of codegangsta related tests/packages [finishes #97061610 #97061532]
  • remove orphaned SetApplicationName() in requirements factory
    • func was there to partially support concourrent command calls from plugin. Currently we don't support concurrent calls.
  • improve main package's readability [#97061610]
  • remove codegangsta from plugin/rpc package - remove deprecated SetTheApp() [#97061610]
  • Merge pull request #534 from cloudfoundry/feature/commands-restart-and-create Move commands to new command pattern.
  • correct usage text in command space [finishes ##100470938]
  • update command_registry test to pass windows
  • show executable name instead of CF_NAME in usage help [finishes #100453848]
  • handles -v for cf version
  • handles usage help without codegangsta
  • help command for cmd usage
  • handle help menu printing without codegangsta - move cf/app/help into cf/help
    • handles cf help / cf --help / cf -h
  • new func Metadatas() in command_registry for returning all metas
  • commands_loader package
  • BrokerBuilder and PlanBuilder in command_registry.Dependency
  • update install-plugin to check conflicts with non-codegangsta commands
  • command_registry.CommandExists() returns false for empty string command name
  • add plugin_repo.PluginRepo to command_registry dependency
  • add StringSlice flag feature
  • add MaxCommandNameLength() to command_registry
  • Merge pull request #505 from zhang-hua/bug-93578300 Reduce API calls when CRU operations of service keys
  • Merge branch 'story-87481016' of https://github.com/zhang-hua/cli into zhang-hua-story-87481016
  • handles 'cf help ' for non-codegangsta command
  • Merge pull request #514 from HuaweiTech/hwcf-issue-34 Fix create-app-manifest only includes one host [92530254]
  • both godep and travis should use golang v.1.4.2
  • make reference to domain test suite for commands to self registered
    • Godep golang 1.4
  • use go v1.4.2 in travis
  • Fix create-app-manifest only includes one host [92530254]
  • SpaceManager and SpaceAuditor should receive 403 [#87481016]
  • Reduce API calls when CRU operations of service keys [#93578300]

CF version v6.12.2

15 Jul 23:31
Compare
Choose a tag to compare

CF version v6.12.2

Installers

Binaries

Change Log

  • implement skipFlagParsing in flags package [#97061558]
  • add tip to curl command for api doc url [#98862944]
  • improve RunCliCommand in testhelper for non-CG command [#97061558]
  • rpc server version check uses new version package [#98664206]
  • move version checking methods into utils package [#98664206]
  • move NotifyUpdateIfNeeded() into UI package [#98664206]
  • Fixed GetMinCliVersion and GetMinApiVersion to work with arbitrary version numbers. [#98664206]