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
Plugin installation improvements
This release incorporates various community requested improvements around plugin installation and management, mainly having the ability to check which plugins have a newer version out in a repo, and upgrading a plugin in one step.
Also, the styling of the CF community plugin site has been updated.
Private Docker repositories
This release implements community feedback from the survey on how to support authentication for private Docker repositories in a non-interactive way with cf push
.
This feature requires a target CF release of v260 (CC API v2.82.0) onwards.
$ env CF_DOCKER_PASSWORD=$(pass docker/image) cf push dockerapp --docker-image docker/image --docker-username johndoe
Using docker repository password from environment variable CF_DOCKER_PASSWORD.
Creating app dockerapp in org myorg / space dev as john...
...
The interactive use case is targeted for implementation in a subsequent release.
DEA End of Life Impact
It remains the cf CLI team’s aim to deliver a CLI that can be used by all Cloud Foundry users; a single tool to talk to all your Cloud Foundry deployments. (See our policy here.)
As such, cf CLI releases (in the v6.* stream) can be expected to keep working with CF releases with DEAs.
That said, the cross-project phase-out of DEAs does entail the following, starting with this cf CLI release:
- cf CLI releases are tested on Diego backed CF releases only.
- Feature requests for the cf CLI relating to DEAs and not applicable to Diego are no longer considered.
- Reported issues with the cf CLI relating to DEAs are still considered but given less attention.
- The Diego-Enabler plugin is no longer supported and will be removed from the CF-Community plugin repo.
Built with Golang 1.8.3
Golang 1.8 addresses an issue that could cause problems when pushing files with long paths on Windows. (#1158)
Tab completion of ~/
All commands and options taking paths now also tab complete on paths starting with ~/
.
Fixed regressions
cf-unset-space-role
failed with a no such host error when feature flag "unset_roles_by_username" was disabled. (#1134)
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 and (English) table and key-value headers displayed in lowercase.
As we iterate through the list of commands, we are also focusing on improving performance and stability.
Please review your scripts if they depend on the output of these commands.
List of improved commands in this release:
- plugins
- install-plugin
- uninstall-plugin
- add-plugin-repo
- auth
- bind-service
Updated commands
plugins
introduces a flag--outdated
to inspect all registered plugin repos and search for later versions to currently installed plugins. (#924)plugins
now includes a tip to usecf repo-plugins
to view plugins available in registered plugin repos.plugins
,help
and other plugin commands now first check environment variables$CF_PLUGINS_HOME
, then$CF_HOME
and then$HOME
for the user's custom plugins storage folder. (#1137)install-plugin
now displays a progress indicator when downloading a plugin binary.install-plugin
now searches all registered plugin repositories when specifying a plugin name without a repository.install-plugin
now uninstalls the current plugin when installing a same-named plugin when confirmation is disabled (-f
), or when installing from a plugin repo.install-plugin
now installs a plugin successfully even if its binary does not have execute permissions.install-plugin
now supports tab completion of local files. (#1099)install-plugin
now aborts installation when the checksum of a downloaded plugin binary does not match the checksum reported by the repo.install-plugin
now aborts when specifying a non-existing repository name.install-plugin
now aborts when a binary of the right platform is not available in the plugin repository.uninstall-plugin
now resumes uninstallation if it cannot remove the plugin binary, enabling the user to manually resolve the issue.uninstall-plugin
now accepts a case insensitive plugin name, aligned withinstall-plugin
.add-plugin-repo
now returns with exit code 0 when attempting to add a plugin repo that is already registered, so scripts do not fail on re-runs.add-plugin-repo
now respects the casing of the URL specified (#1058)ssh
now prints a better error message when there is no app instance at the specified index (#1131)ssh
help now clarifies that the default app instance is 0 (i.e. instance counter starts at zero) (#1130)create-org
now adds double quotes around the org name in the tip to usecf target
to target the org, enabling easy copy & pasting when the org contains spaces. (#1149)start
,delete-org
and other refactored commands that poll the API endpoint until it has completed its operation now have a reduced polling interval of 3 seconds (was 5s), making them slightly faster in some cases.