Releases: vmware-tanzu/tanzu-cli
v1.4.0
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the instructions.
Users are advised to uninstall older pre-release versions of the Tanzu CLI prior to installing this version.
Changes by Kind
✨ Features
- Add official support for the
asdf
package manager (MacOS and Linux) (#787, @marckhouzam) - Add support to update the CSP issuer to TCSP (#793, @prkalle)
- Deprecate the plugin invocation form
tanzu kubernetes <plugin>
in favor of the shorter and more consistenttanzu <plugin>
(#781, @marckhouzam) - Hide the
tanzu init
command which is no longer performing any actual initialization. (#773, @marckhouzam) - Respect command mapping for the help command for plugins (#777, @marckhouzam)
- Support Activating plugins on Plugin Group Publish/Activation (#794, @anujc25)
- Support entry-specific active context type check in command mapping (#783, @vuil)
📄 Documentation
- Document details about ARM64 support. (#776, @marckhouzam)
- Update
packages.vmware.com
topackages-prod.broadcom.com
(#780, @marckhouzam)
🐛 Bug Fixes
- Show the description of the latest (instead of oldest) version of a plugin in the
tanzu plugin search
output. (#769, @marckhouzam) - Respect command mapping for the help command for plugins (#777, @marckhouzam)
Dependencies
Added
- github.com/alexflint/go-filemutex: v1.3.0
- github.com/anujc25/tablewriter: v0.0.1
- github.com/r3labs/sse/v2: v2.10.0
- gopkg.in/cenkalti/backoff.v1: v1.1.0
Changed
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.3.0 → v1.4.1
Removed
- github.com/juju/fslock: 4d5c94c
New Contributors
- @warango4 made their first contribution in #705
- @mshipkovenski made their first contribution in #784
Full Changelog: v1.3.0...v1.4.0
v1.4.0-rc.0
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
Changes by Kind
✨ Features
- Add official support for the
asdf
package manager (MacOS and Linux) (#787, @marckhouzam) - Support entry-specific active context type check in command mapping (#783, @vuil)
🐛 Bug Fixes
- Respect command mapping for the help command for plugins (#777, @marckhouzam)
- Show the description of the latest (instead of oldest) version of a plugin in the
tanzu plugin search
output. (#769, @marckhouzam)
♻️ Deprecations
- Deprecate the plugin invocation form
tanzu kubernetes <plugin>
in favour of the shorter and more consistenttanzu <plugin>
(#781, @marckhouzam) - Hide the
tanzu init
command which is no longer performing any actual initialization. (#773, @marckhouzam)
📄 Documentation
- Document details about ARM64 support. (#776, @marckhouzam)
- Update
packages.vmware.com
topackages-prod.broadcom.com
(#780, @marckhouzam)
Dependencies
Added
- github.com/alexflint/go-filemutex: v1.3.0
- github.com/anujc25/tablewriter: v0.0.1
- github.com/r3labs/sse/v2: v2.10.0
- gopkg.in/cenkalti/backoff.v1: v1.1.0
Changed
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.3.0 → v1.4.0
Removed
Nothing has changed.
New Contributors
- @warango4 made their first contribution in #705
- @mshipkovenski made their first contribution in #784
Full Changelog: v1.3.0...v1.4.0-rc.0
v1.3.0
This release brings you the following notable features:
tanzu login
streamlines connecting to Tanzu Platform. It supports interactive mode as well as non-interactive mode (via a supplied API token). A Tanzu CLI context will be automatically created on successful authentication.tanzu context current
is a convenient command to show information about the current active CLI contexttanzu context current --short
produces a more compact output that can be used, for instance, to customize one's shell prompt- Version notification. Users of this 1.3.0 version of the CLI will now get notifications when newer versions of the CLI become available
- Support flexible relocation of plugin commands, which, among other uses, enables a single plugin to offer more than one top-level command/command group.
- Plugin lifecycle management
- Adds support for individual plugin download with the tanzu plugin download-bundle command (for internet-restricted environments)
- Simplify context-scoped plugin installation, usability experience and UX enhancements
- Improve support for authenticate registries
- Usability improvements
- Updates context use and context list commands to show addition details
- Adds support to check if the Tanzu Organization associated with a CLI context of type “tanzu” is enabled for Tanzu Platform
- Transition to use projects.packages.broadcom.com as the public plugin registry
- Tanzu CLI context and kube context management
- tanzu contexts created via
tanzu login
ortanzu context create
will be stored in an alternate location. (tanzu context current
can be used to show that location) - The name of the kube context will be updated on
project use
/space use
- tanzu contexts created via
- Adds support for TMC endpoint in 'tanzu' type CLI context
- Enable plugins to be offered under the “operations” command group
- Laid groundwork for receiving CLI metadata updates between CLI releases.
- The EULA has been updated to use the Broadcom Foundation Agreement, hence users will be prompted to accept it again.
- Various bug fixes and optimizations made on top of the 1.2 release.
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the instructions.
Users are advised to uninstall older pre-release versions of the Tanzu CLI prior to installing this version.
Changes by Kind
✨ Features
- Add support for individual plugin download with
tanzu plugin download-bundle
command (#725, @anujc25) - Implement "global initializers" and use them to fix the plugin cache if the
central_config.yaml
file is missing. (#723, @marckhouzam) - On execution, the CLI will notify the user of an available new version of the CLI itself, at most once every 24 hours. (#707, @marckhouzam)
- Provide a
--refresh-configuration-only
flag totanzu plugin download-bundle
to allow refreshing the plugin inventory and central configuration without adding any plugins to the air-gap repository. (#728, @marckhouzam) - Add a new
tanzu context current [--short]
command to easily show the current context. (#750, @marckhouzam) - Add the new target
operations
(#679, @anujc25) - Update the UX for "context use" and "context list" commands to show ProjectID details (#721, @prkalle)
- Associate TMC endpoint (tanzuMissionControlEndpoint) with AdditionalMetadata of Tanzu Context (#680, @anujc25)
- Add the new target
operations
(#679, @anujc25) - Provide a documentation link when notifying users of the availability of a new CLI version. (#727, @marckhouzam)
- tanzu login command to log in to Tanzu Platform SaaS (#715, @prkalle)
Usability improvements
- Print the reason the CLI aborts even when installing essential plugins (#712, @marckhouzam)
- Ignore command PreRun logic for the tanzu context get-token command (#754, @prkalle)
- Updates to
tanzu plugin list
, andtanzu plugin sync
user experience. All plugins are installed as standalone plugins. (#698, @anujc25) - Use internal Kubeconfig file ($HOME/.kube-tanzu/config) instead of default kubeconfig to store kubecontext for TAP SaaS (#747, @prkalle)
📄 Documentation
- Document the CLI environment variables used for testing (#716, @marckhouzam)
- Document the user-facing CLI environment variables. (#714, @marckhouzam)
- Cleanup essential plugins installation logic (#704, @marckhouzam)
- Fix the documentation for ActiveHelp (#713, @marckhouzam)
- Document the new flag
tanzu plugin download-bundle --refresh-configuration-only
. (#745, @marckhouzam) - Update kubecontext name associated with
tanzu
CLI Context when active resource is updated. User can skip this kubecontext name update by setting the environment variableTANZU_CLI_USE_STABLE_KUBE_CONTEXT_NAME
to "true" (#746, @prkalle)
🐛 Bug Fixes
builder
plugin: Add empty plugin version validation to the PluginGroup Publishing step (#686, @anujc25)- Tanzu CLI doesn't attempt to install Essential plugins for tanzu plugin source commands (#692, @mpanchajanya)
- Tanzu CLI will only allow boolean true or false feature flag values (#685, @mpanchajanya)
🌱 Miscellaneous
- Add a global initializer to ensure the command-remapping information is properly stored in the catalog cache. (#738, @marckhouzam)
- Add crd package build script, and e2e tests for deploying built package (#672, @vuil)
- Add support for mapping of a plugin at a command-level or plugin-level (#736, #687, #753, @vuil)
- Add support for the Authenticated Registry to host Tanzu CLI plugin images (#744, @anujc25)
- Add support to check if the selected org is Tanzu Application platform enabled. User can skip the TAP scopes validation by setting the environment variable "TANZU_CLI_SKIP_TAP_SCOPES_VALIDATION_ON_TANZU_CONTEXT" to true (#731, @prkalle)
- Allow turning off go's
buildvcs
when building the CLI. (#743, @marckhouzam) - Update message when rejecting the Broadcom Foundation Agreement (#760, @marckhouzam)
- Experimental: Configure the Tanzu Hub endpoint when creating the
tanzu
context (#734, @anujc25) - Experimental: Get the Tanzu Hub Endpoint based on the Central Config Metadata (#764, @anujc25)
- Fix generate-all-docs to account for installed plugins with mapped commands. (#752, @vuil)
- Fixed the tanzu context missing TMC endpoint details in context additionalMetadata and also add support to update the context with projectID along with project name (#708, @prkalle)
- Include a new cosign public key to verify the images (#761, @anujc25)
- More unit tests (#732, @marckhouzam)
- Switch the default discovery source registry to
projects.packages.broadcom.com
. For any reason, if the user wants to switch back to the old registryprojects.registry.vmware.com
, run the following command to update discovery sourcetanzu plugin source update default -u projects.registry.vmware.com/tanzu_cli/plugins/plugin-inventory:latest
. To switch back to the new default registry run thetanzu plugin source init
command. (#755, @anujc25) - The signal handling logic has been refactored and moved to a centralized location for reuse across all use cases. (#735, @chandrareddyp)
- Unless features.global.plugin-override-on-active-context-type is set to true, and plugin-level mapping is performed unconditionally, possibly overriding some other existing CLI command group. However, when said flag is set, mapping that would override an existing command is only be allowed if the active context's type matches one of the types that this mapping supports. (#753, @vuil)
- Update test central repo with some test Central Configuration (#700, @marckhouzam)
Dependencies
Added
- github.com/Khan/genqlient: v0.7.0
- github.com/alexflint/go-arg: v1.4.2
- github.com/alexflint/go-scalar: v1.0.0
- github.com/vektah/gqlparser/v2: v2.5.11
- golang.org/x/telemetry: b75ee88
Changed
- github.com/docker/docker: v24.0.7+incompatible → v24.0.9+incompatible
- github.com/google/uuid: v1.3.0 → v1.6.0
- github.com/stretchr/testify: v1.8.3 → v1.8.4
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.2.0 → v1.3.0
- golang.org/x/crypto: v0.17.0 → v0.21.0
- golang.org/x/mod: v0.12.0 → v0.15.0
- golang.org/x/net: v0.17.0 → v0.23.0
- golang.org/x/sync: v0.3.0 → v0.6.0
- golang.org/x/sys: v0.15.0 → v0.18.0
- golang.org/x/term: v0.15.0 → v0.18.0
- golang.org/x/tools: v0.12.0 → v0.18.0
- google.golang.org/protobuf: v1.30.0 → v1.33.0
Removed
Nothing has changed.
Full Changelog: v1.3.0-dev...v1.3.0
v1.3.0-rc.0
NOTE: This pre-release version of the Tanzu CLI is recommended if one is expected to install and use any CLI plugin that leverages an experimental feature in to specify how to map the plugin or its command to an alternate location.
Usability improvements in several commands including tanzu plugin list
, and tanzu plugin sync
user experience.
Versions of plugins discovered via a CLI context will be shown as "Recommended" version in the plugin list.
There are several updates in the area of context management including a repurposed interactive tanzu login
command, better handling of kubeconfig file and kube context associated with tanzu
CLI contexts and not intuitive command to display active CLI context.
Other enhancements include new CL version detection, support for authenticated plugin registry, experiement support for interacting with Tanzu Hub, and more!
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
For installing the Tanzu CLI through various package managers, please follow the appropriate "Installing a Pre-Release" sections on the same page.
Changes by Kind
Feature
- Add support for individual plugin download with
tanzu plugin download-bundle
command (#725, @anujc25) - Implement "global initializers" and use them to fix the plugin cache if the
central_config.yaml
file is missing. (#723, @marckhouzam) - On execution, the CLI will notify the user of an available new version of the CLI itself, at most once every 24 hours. (#707, @marckhouzam)
- Provide a
--refresh-configuration-only
flag totanzu plugin download-bundle
to allow refreshing the plugin inventory and central configuration without adding any plugins to the air-gap repository. (#728, @marckhouzam) - Add experimental support for mapping of a plugin at a command-level (#736, @vuil)
- Adds experimental functionality to remap in the CLI commands at an entire plugin level. (#687, @vuil)
- On execution, the CLI will notify the user of an available new version of the CLI itself, at most once every 24 hours. (#707, @marckhouzam)
- Add support to check if the selected org is Tanzu Application platform enabled. User can skip the TAP scopes validation by setting the environment variable "TANZU_CLI_SKIP_TAP_SCOPES_VALIDATION_ON_TANZU_CONTEXT" to true (#731, @prkalle)
- Repurpose the deprecated tanzu login command to log in to TAP SaaS (#715, @prkalle)
- Update the UX for "context use" and "context list" commands to show ProjectID details (#721, @prkalle)
- Updates to the
tanzu plugin list
, andtanzu plugin sync
user experience. All plugins are installed as standalone plugins. (#698, @anujc25) - Add a global initializer to ensure the command-remapping information is properly stored in the catalog cache. (#738, @marckhouzam)
- Add a new
tanzu context current [--short]
command to easily show the current context. (#750, @marckhouzam) - Add support for the Authenticated Registry to host Tanzu CLI plugin images (#744, @anujc25)
- Experimental: Configure the Tanzu Hub endpoint when creating the
tanzu
context (#734, @anujc25) - Update kubecontext name associated with
tanzu
CLI Context when active resource is updated. User can skip this kubecontext name update by setting the environment variableTANZU_CLI_USE_STABLE_KUBE_CONTEXT_NAME
to "true" (#746, @prkalle)
Documentation
- Document the CLI environment variables used for testing (#716, @marckhouzam)
- Document the user-facing CLI environment variables. (#714, @marckhouzam)
- Fix generate-all-docs to account for installed plugins with mapped commands. (#752, @vuil)
- Provide a documentation link when notifying users of the availability of a new CLI version. (#727, @marckhouzam)
Bug or Regression
builder
plugin: Add empty plugin version validation to the PluginGroup Publishing step (#686, @anujc25)- Tanzu CLI doesn't attempt to install Essential plugins for tanzu plugin source commands (#692, @mpanchajanya)
- Tanzu CLI will only allow boolean true or false feature flag values (#685, @mpanchajanya)
- The signal handling logic has been refactored and moved to a centralized location for reuse across all use cases. (#735, @chandrareddyp)
Other (Cleanup or Flake)
- Cleanup essential plugins installation logic (#704, @marckhouzam)
- Fix the documentation for ActiveHelp (#713, @marckhouzam)
- Print the reason the CLI aborts even when installing essential plugins (#712, @marckhouzam)
- Switch the default discovery source registry to
projects.packages.broadcom.com
.
For any reason, if the user wants to switch back to the old registryprojects.registry.vmware.com
, run the following command to update discovery sourcetanzu plugin source update default -u projects.registry.vmware.com/tanzu_cli/plugins/plugin-inventory:latest
. To switch back to the new default registry run thetanzu plugin source init
command. (#755, @anujc25) - Unless features.global.plugin-override-on-active-context-type is set to true, plugin-level mapping is performed unconditionally, possibly overriding some another existing CLI command group. However, when said flag is set, mapping that would override an existing command is only allowed if the active context's type matches one of the types that this mapping supports. (#753, @vuil)
- Use internal Kubeconfig file ($HOME/.kube-tanzu/config) instead of default kubeconfig to store kubecontext for TAP SaaS (#747, @prkalle)
- Update test central repo with some test Central Configuration (#700, @marckhouzam)
- Update the UX for "context use" and "context list" commands to show ProjectID details (#721, @prkalle)
- Updates to
tanzu plugin list
, andtanzu plugin sync
user experience. All plugins are installed as standalone plugins. (#698, @anujc25) - Add crd package build script, and e2e tests for deploying built package (#672, @vuil)
- Add support to check if the selected org is Tanzu Application platform enabled. User can skip the TAP scopes validation by setting the environment variable "TANZU_CLI_SKIP_TAP_SCOPES_VALIDATION_ON_TANZU_CONTEXT" to true (#731, @prkalle)
- Add the new target
operations
(#679, @anujc25) - Allow turning off go's
buildvcs
when building the CLI. (#743, @marckhouzam) - Associate TMC endpoint (tanzuMissionControlEndpoint) with AdditionalMetadata of Tanzu Context (#680, @anujc25)
- Fixed the tanzu context missing TMC endpoint details in context additionalMetadata and also add support to update the context with projectID along with project name (#708, @prkalle)
- Ignore command PreRun logic for the tanzu context get-token command (#754, @prkalle)
- More unit tests (#732, @marckhouzam)
Dependencies
Added
- github.com/99designs/gqlgen: v0.17.44
- github.com/Khan/genqlient: v0.7.0
- github.com/alexflint/go-arg: v1.4.2
- github.com/alexflint/go-scalar: v1.0.0
- github.com/andreyvit/diff: c7f18ee
- github.com/arbovm/levenshtein: 48b4e1c
- github.com/bradleyjkemp/cupaloy/v2: v2.6.0
- github.com/dgryski/trifles: dd97f9a
- github.com/hashicorp/golang-lru/v2: v2.0.7
- github.com/pkg/diff: 20ebb0f
- github.com/sosodev/duration: v1.2.0
- github.com/vektah/gqlparser/v2: v2.5.11
- golang.org/x/telemetry: b75ee88
Changed
- github.com/chzyer/logex: v1.1.10 → v1.2.0
- github.com/chzyer/test: a1ea475 → 0614579
- github.com/docker/docker: v24.0.7+incompatible → v24.0.9+incompatible
- github.com/google/uuid: v1.3.0 → v1.6.0
- github.com/stretchr/testify: v1.8.3 → v1.8.4
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.2.0 → ad724a2
- golang.org/x/crypto: v0.17.0 → v0.21.0
- golang.org/x/mod: v0.12.0 → v0.15.0
- golang.org/x/net: v0.17.0 → v0.23.0
- golang.org/x/sync: v0.3.0 → v0.6.0
- golang.org/x/sys: v0.15.0 → v0.18.0
- golang.org/x/term: v0.15.0 → v0.18.0
- golang.org/x/tools: v0.12.0 → v0.18.0
- google.golang.org/protobuf: v1.30.0 → v1.33.0
Removed
Nothing has changed.
v1.3.0-alpha.3
NOTE: This pre-release version of the Tanzu CLI is recommended if one is expected to install and use any CLI plugin that leverages an experimental feature in v1.3.0-alpha.1 version of the tanzu plugin runtime to specify how to map the plugin's command to an alternate location. New in alpha.3 is that the CLI now supports mapping not just the entire group of commands of the plugin, but specific subcommands as well.
Usability improvements in several commands including tanzu plugin list
, and tanzu plugin sync
user experience.
Versions of plugins discovered via a CLI context will be shown as "Recommended" version in the plugin list.
Last but not least, user of the previous alpha.2 pre-release should receive a notitification to update to a this release.
This update notication will become a mainstay in future pre-releases and releases as well.
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
For installing the Tanzu CLI through various package managers, please follow the appropriate "Installing a Pre-Release" sections on the same page.
Changes by Kind
Feature
- Add support for individual plugin download with
tanzu plugin download-bundle
command (#725, @anujc25) - Implement "global initializers" and use them to fix the plugin cache if the
central_config.yaml
file is missing. (#723, @marckhouzam) - On execution, the CLI will notify the user of an available new version of the CLI itself, at most once every 24 hours. (#707, @marckhouzam)
- Provide a
--refresh-configuration-only
flag totanzu plugin download-bundle
to allow refreshing the plugin inventory and central configuration without adding any plugins to the air-gap repository. (#728, @marckhouzam) - Add support for mapping of a plugin at a command-level (#736, @vuil)
- Adds experimental functionality to remap in the CLI commands at an entire plugin level. (#687, @vuil)
- Add support to check if the selected org is Tanzu Application platform enabled. User can skip the TAP scopes validation by setting the environment variable "TANZU_CLI_SKIP_TAP_SCOPES_VALIDATION_ON_TANZU_CONTEXT" to true (#731, @prkalle)
- Repurpose the deprecated tanzu login command to log in to TAP SaaS (#715, @prkalle)
- Update the UX for "context use" and "context list" commands to show ProjectID details (#721, @prkalle)
- Updates to the
tanzu plugin list
, andtanzu plugin sync
user experience. All plugins are installed as standalone plugins. (#698, @anujc25) - Add a global initializer to ensure the command-remapping information is properly stored in the catalog cache. (#738, @marckhouzam)
Documentation
- Document the CLI environment variables used for testing (#716, @marckhouzam)
- Document the user-facing CLI environment variables. (#714, @marckhouzam)
- Fix the documentation for ActiveHelp (#713, @marckhouzam)
Miscellaneous or From Previous Alpha Release
- Add crd package build script, and e2e tests for deploying built package (#672, @vuil)
- Add the new target
operations
(#679, @anujc25) - Associate TMC endpoint (tanzuMissionControlEndpoint) with AdditionalMetadata of Tanzu Context (#680, @anujc25)
- Fixed the tanzu context missing TMC endpoint details in context additionalMetadata and also add support to update the context with projectID along with project name (#708, @prkalle)
- More unit tests (#732, @marckhouzam)
- Provide a documentation link when notifying users of the availability of a new CLI version. (#727, @marckhouzam)
- Tanzu CLI doesn't attempt to install Essential plugins for tanzu plugin source commands (#692, @mpanchajanya)
- Tanzu CLI will only allow boolean true or false feature flag values (#685, @mpanchajanya)
- The signal handling logic has been refactored and moved to a centralized location for reuse across all use cases. (#735, @chandrareddyp)
- Update test central repo with some test Central Configuration (#700, @marckhouzam)
- Cleanup essential plugins installation logic (#704, @marckhouzam)
- Print the reason the CLI aborts even when installing essential plugins (#712, @marckhouzam)
builder
plugin: Add empty plugin version validation to the PluginGroup Publishing step (#686, @anujc25)
Dependencies
Added
Nothing has changed.
Changed
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.2.0 → v1.3.0-alpha.3
- google.golang.org/protobuf: v1.30.0 → v1.33.0
Removed
Nothing has changed.
v1.3.0-alpha.2
NOTE: This pre-release version of the Tanzu CLI is recommended if one is expected to install and use any CLI plugin that leverages an experimental feature in v1.3.0-alpha.1 version of the tanzu plugin runtime to specific how to map the plugin's command to an alternate location.
This release is also required to interact with tanzu-type contexts connecting to environment that exposes both Project names and IDs.
Last but not least, this release lays the groundwork for receiving CLI metadata update between CLI releases. In particular, users with at least 1.3.0-alpha.2 version of the CLI installed may now receive a message to upgraded to a new CLI version should one become available.
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
For installing the Tanzu CLI through various package managers, please follow the appropriate "Installing a Pre-Release" sections on the same page.
Changes by Kind
Bug or Regression
builder
plugin: Add empty plugin version validation to the PluginGroup Publishing step (#686, @anujc25)
Miscellaneous
- Add crd package build script, and e2e tests for deploying built package (#672, @vuil)
- Add the new target
operations
(#679, @anujc25) - Adds experimental functionality to remap in the CLI commands at an entire plugin level. (#687, @vuil)
- Associate TMC endpoint (tanzuMissionControlEndpoint) with AdditionalMetadata of Tanzu Context (#680, @anujc25)
- Cleanup essential plugins installation logic (#704, @marckhouzam)
- Fixed the tanzu context missing TMC endpoint details in context additionalMetadata and also add support to update the context with projectID along with project name (#708, @prkalle)
- On execution, the CLI will notify the user of an available new version of the CLI itself, at most once every 24 hours. (#707, @marckhouzam)
- Print the reason the CLI aborts even when installing essential plugins (#712, @marckhouzam)
- Tanzu CLI doesn't attempt to install Essential plugins for tanzu plugin source commands (#692, @mpanchajanya)
- Tanzu CLI will only allow boolean true or false feature flag values (#685, @mpanchajanya)
- Update test central repo with some test Central Configuration (#700, @marckhouzam)
Dependencies
Added
Nothing has changed.
Changed
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.2.0 → v1.3.0-alpha.2
- google.golang.org/protobuf: v1.30.0 → v1.33.0
Removed
Nothing has changed.
v1.3.0-alpha.1
NOTE: This pre-release version of the Tanzu CLI is recommended if one is expected to install and use any CLI plugin that leverages an experimental feature in v1.3.0-alpha.1 version of the tanzu plugin runtime to specific how to map the plugin's command to an alternate location.
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
For installing the Tanzu CLI through various package managers, please follow the appropriate "Installing a Pre-Release" sections on the same page.
Changes by Kind
Bug or Regression
builder
plugin: Add empty plugin version validation to the PluginGroup Publishing step (#686, @anujc25)
Miscellaneous
- Add crd package build script, and e2e tests for deploying built package (#672, @vuil)
- Add the new target
operations
(#679, @anujc25) - Adds experimental functionality to remap in the CLI commands at an entire plugin level. (#687, @vuil)
- Associate TMC endpoint (tanzuMissionControlEndpoint) with AdditionalMetadata of Tanzu Context (#680, @anujc25)
Dependencies
Added
Nothing has changed.
Changed
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.2.0 → v1.3.0-alpha.1
Removed
Nothing has changed.
v1.3.0-alpha.0
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
For installing the Tanzu CLI through various package managers, please follow the appropriate "Installing a Pre-Release" sections on the same page.
Changes by Kind
Miscellaneous
- Add crd package build script, and e2e tests for deploying built package (#672, @vuil)
- Add the new target
operations
(#679, @anujc25) - Associate TMC endpoint (tanzuMissionControlEndpoint) with AdditionalMetadata of Tanzu Context (#680, @anujc25)
Dependencies
Added
Nothing has changed.
Changed
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.2.0 → v1.3.0-alpha.0
Removed
Nothing has changed.
v1.2.0
This release brings you:
- Interactive login for TAP SaaS through Cloud Services, including support for CLI environments with no web browser support. What used to take a dozen steps and the user interacting directly with the Cloud Services UI can now be accomplished with a single command.
- Support for the arm64 architecture for Windows (starting with Windows 11).
- Reminder: Unlike for Windows and Darwin (Mac), the Linux CLI binary for arm64 is only available as part of the release to allow testing plugins built for arm64. This build is not yet meant for production and is therefore marked as “unstable”.
- Usability improvements including but not limited to:
- 30% size reduction of the
tanzu
binary by removing debug symbols - 30% size reduction of plugins built using the
builder
pluginv1.2.0
Note: If you need to re-enable debug symbols for your plugin binary, please refer to this documentation. - use of a spinner when downloading plugins to indicate progress
- improved responsiveness for plugin life-cycle commands through enhanced caching
- automatic daily check and installation of any updated Essential Plugins
- hiding of a target subcommand (
kubernetes
ormission-control
) that does not have any plugins installed - proper sorting of all output
- 30% size reduction of the
- Various bug fixes and optimizations made on top of the 1.1 release.
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the instructions.
Changes by Kind
✨ Features
Interactive login support
- Add interactive(browser) login support for 'tanzu' context creation (#627, @prkalle)
- Add support for interactive login on terminal based hosts for creating 'tanzu' context. User can choose the local listener port for callback URL during OAuth authorization flow by setting the TANZU_CLI_OAUTH_LOCAL_LISTENER_PORT environment variable. (#645, @prkalle)
Plugin management improvements
- For plugin installation, an in-progress spinner has been added for a better user experience. (#641, @chandrareddyp)
- Implement automatic refresh of database repository cache (#637, @mpanchajanya)
- Improve CLI responsiveness for plugin life-cycle commands by introducing a time-to-live of 30 minutes for the plugin inventory cache (can be changed through the environment variable
TANZU_CLI_PLUGIN_DB_CACHE_TTL_SECONDS
). To force a plugin inventory cache refresh thetanzu plugin source init
command can be used. (#605, @marckhouzam) - Update the plugin inventory DB on a
tanzu plugin source init
(#604, @marckhouzam)
ARM64 Support
- Add support to install the Windows ARM64 CLI through Chocolatey. (#617, @marckhouzam)
- Allow building the CLI for Windows ARM64. (#610, @marckhouzam)
- Allow to install all plugins on Windows 11 running on ARM64 by installing the AMD64 version if the ARM64 version of the plugin is not available. (#615, @marckhouzam)
- The
builder
plugin can now build for Windows ARM64. Thebuilder
andtest
plugins are themselves built for Windows ARM64. New plugin projects will default to including a build for Windows ARM64. (#611, @marckhouzam)
Usability improvements
- Reduce binary size by around 30% by building CLI and plugins without debug symbols. (#596, @marckhouzam)
- Setup shell completion when installing with Chocolatey (#614, @marckhouzam)
- Support configuring ClusterGroup with the
tanzu context update tanzu-active-resource
command using--clustergroup
flag (#621, @anujc25) - Support context-scoped plugin discovery for the
tanzu
contexts (This functionality is behind feature-flag and disabled by default) (#651, @anujc25) - The
tanzu config get
command now prints a note to the user if environment variables from the tanzu config are being shadowed by environment variables set in the current shell. (#622, @marckhouzam) - The
tanzu context list
outputs is now sorted by context names. (#650, @chandrareddyp) - UX updates to
tanzu context list
andtanzu context use
command outputs (#628, @anujc25) - Clear all the local metrics data when user opt out of CEIP (#652, @prkalle)
📄 Documentation
- Add documentation on how to use package managers to upgrade the CLI (#608, @marckhouzam)
- Document running
brew tap vmware-tanzu/tanzu
to simplifybrew
operations. (#607, @marckhouzam) - Improve documentation to mention that the
vmware-tanzucli/essentials
plugin group is automatically included in anytanzu plugin download-bundle
command (#656, @marckhouzam) - Update the CLI development README. (#609, @marckhouzam)
🐛 Bug Fixes
- A shell variable set to an empty value is no longer ignored by the CLI and takes precedence over a similar variable present in the tanzu config, as expected. (#624, @marckhouzam)
- Allow listing the CLIPlugins resources even if the CRD discovery API returns an error for the kubernetes context (#642, @anujc25)
- Fixes
tanzu plugin download-bundle
when the same plugin is part of multiple plugin-groups that the user has requested to download (#630, @anujc25) - Logger verbosity can be changed by setting TANZU_CLI_LOG_LEVEL environment variable. (#670, @mpanchajanya)
- Only show and install the latest version of the context-scoped plugin when the discovery source returns multiple CLIPlugin resources with the same name. (#632, @anujc25)
- Provide proper help for
tanzu k8s
andtanzu tmc
commands when no plugins are installed for such a target. (#626, @marckhouzam) - Tanzu config cert options
--ca-cert
and--skip-cert-verify
are mutually exclusive (#663, @mpanchajanya) - The
tanzu plugin download-bundle --to-tar
command now prevents overwriting an existing output file. (#666, @chandrareddyp) - The plugin installation spinner termination issue on Windows has been fixed. (#665, @chandrareddyp)
🌱 Miscellaneous
- Don't disable flag parsing on the root command. (#600, @marckhouzam)
- Added note in
tanzu plugin group search
about using--show-details
to see all versions of groups (#649, @vuil) - Enable
nakedret
,revive
,unparam
,gosec
linters. (#647, @mpanchajanya) - Fix indentation in usage line of help text of leaf commands (#612, @marckhouzam)
- Fix main README to remove obsolete note about an alpha release. (#602, @marckhouzam)
- Remove trailing period in some short help texts. (#603, @marckhouzam)
- Remove usage of deprecated Configuration APIs like StoreClientConfig (#616, @mpanchajanya)
- Removed commands
tanzu builder cli compile
,tanzu builder publish
,tanzu config server
(and its sub commands) (#643, @mpanchajanya) - Update to Cobra v1.8.0 (#594, @marckhouzam)
- Use proper help format for
tanzu completion
(#613, @marckhouzam) - Merge
plugin_group_manifest.yaml
automatically when building individual plugins with the builder plugin (#644, @anujc25) - The
tanzu plugin list
andtanzu plugin search
outputs are now sorted by plugin names instead of by targets. (#646, @chandrareddyp)
Dependencies
Added
Nothing has changed.
Changed
- github.com/cloudflare/circl: v1.3.3 → v1.3.7
- github.com/cpuguy83/go-md2man/v2: v2.0.2 → v2.0.3
- github.com/spf13/cobra: v1.7.0 → v1.8.0
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.1.0 → v1.2.0
- golang.org/x/crypto: v0.14.0 → v0.17.0
- golang.org/x/sys: v0.13.0 → v0.15.0
- golang.org/x/term: v0.13.0 → v0.15.0
- golang.org/x/text: v0.13.0 → v0.14.0
Removed
Nothing has changed.
New Contributors
- @shaheerkootteeri made their first contribution in #546
Full Changelog: v1.2.0-dev...v1.2.0
v1.2.0-rc.0
Tanzu CLI Installation Instructions
If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.
For installing the Tanzu CLI through various package managers, please follow the appropriate "Installing a Pre-Release" sections on the same page.
Changes by Kind
✨ Feature
- Add interactive(browser) login support for 'tanzu' context creation (#627, @prkalle)
- Add support to install the Windows ARM64 CLI through Chocolatey. (#617, @marckhouzam)
- Added note in "tanzu plugin group search" about using --show-details to see all versions of groups (#649, @vuil)
- Allow building the CLI for Windows ARM64. (#610, @marckhouzam)
- Allow to install all plugins on Windows 11 running on ARM64 by installing the AMD64 version if the ARM64 version of the plugin is not available. (#615, @marckhouzam)
- Clear all the local metrics data when user opt out of CEIP (#652, @prkalle)
- For plugin installation, an in-progress spinner has been added for a better user experience. (#641, @chandrareddyp)
- Implement automatic refresh of database repository cache (#637, @mpanchajanya)
- Improve CLI responsiveness for plugin life-cycle commands by introducing a time-to-live of 30 minutes for the plugin inventory cache (can be changed through the environment variable
TANZU_CLI_PLUGIN_DB_CACHE_TTL_SECONDS
). To force a plugin inventory cache refresh thetanzu plugin source init
command can be used. (#605, @marckhouzam) - Reduce binary size by around 30% by building CLI and plugins without debug symbols. (#596, @marckhouzam)
- Setup shell completion when installing with Chocolatey (#614, @marckhouzam)
- Support configuring ClusterGroup with the
tanzu context update tanzu-active-resource
command using--clustergroup
flag (#621, @anujc25) - Support context-scoped plugin discovery for the
tanzu
contexts (This functionality is behind feature-flag and disabled by default) (#651, @anujc25) - The
builder
plugin can now build for Windows ARM64. Thebuilder
andtest
plugins are themselves built for Windows ARM64. New plugin projects will default to including a build for Windows ARM64. (#611, @marckhouzam) - The
tanzu config get
command now prints a note to the user if environment variables from the tanzu config are being shadowed by environment variables set in the current shell. (#622, @marckhouzam) - The
tanzu context list
outputs is now sorted by context names. (#650, @chandrareddyp) - UX updates to
tanzu context list
andtanzu context use
command outputs (#628, @anujc25) - Update the plugin inventory DB on a
tanzu plugin source init
(#604, @marckhouzam)
📄 Documentation
- Add documentation on how to use package managers to upgrade the CLI (#608, @marckhouzam)
- Add support for interactive login on terminal based hosts for creating 'tanzu' context. User can choose the local listener port for callback URL during OAuth authorization flow by setting the TANZU_CLI_OAUTH_LOCAL_LISTENER_PORT environment variable. (#645, @prkalle)
- Document running
brew tap vmware-tanzu/tanzu
to simplifybrew
operations. (#607, @marckhouzam) - Improve documentation to mention that the
vmware-tanzucli/essentials
plugin group is automatically included in anytanzu plugin download-bundle
command (#656, @marckhouzam) - Update the CLI development README. (#609, @marckhouzam)
🐛 Bug or Regression
- A shell variable set to an empty value is no longer ignored by the CLI and takes precedence over a similar variable present in the tanzu config, as expected. (#624, @marckhouzam)
- Allow listing the CLIPlugins resources even if the CRD discovery API returns an error for the kubernetes context (#642, @anujc25)
- Fixes
tanzu plugin download-bundle
when the same plugin is part of multiple plugin-groups that the user has requested to download (#630, @anujc25) - Only show and install the latest version of the context-scoped plugin when the discovery source returns multiple CLIPlugin resources with the same name. (#632, @anujc25)
- Provide proper help for
tanzu k8s
andtanzu tmc
commands when no plugins are installed for such a target. (#626, @marckhouzam)
Other (Cleanup or Flake)
- Don't disable flag parsing on the root command. (#600, @marckhouzam)
- Enable nakedret, revive unparam, gosec linters. (#647, @mpanchajanya)
- Fix indentation in usage line of help text of leaf commands (#612, @marckhouzam)
- Fix main README to remove obsolete note about an alpha release. (#602, @marckhouzam)
- Remove trailing period in some short help texts. (#603, @marckhouzam)
- Remove usage of deprecated Configuration APIs like StoreClientConfig (#616, @mpanchajanya)
- Removed commands tanzu builder cli compile, tanzu builder publish, tanzu config server (and its sub commands) (#643, @mpanchajanya)
- Update to Cobra v1.8.0 (#594, @marckhouzam)
- Use proper help format for "tanzu completion" (#613, @marckhouzam)
🌱 Miscellaneous
- Merge
plugin_group_manifest.yaml
automatically when building individual plugins with the builder plugin (#644, @anujc25) - The
tanzu plugin list
andtanzu plugin search
outputs are now sorted by plugin names instead of by targets. (#646, @chandrareddyp) - Update tanzu-plugin-runtime to v1.1.0. (#601, @marckhouzam)
- Excluded test/e2e/framework tags from CLI and plugin builds (#598, @mpanchajanya)
Dependencies
Added
- github.com/pkg/diff: 20ebb0f
Changed
- github.com/chzyer/logex: v1.1.10 → v1.2.0
- github.com/chzyer/test: a1ea475 → 0614579
- github.com/cloudflare/circl: v1.3.3 → v1.3.7
- github.com/cpuguy83/go-md2man/v2: v2.0.2 → v2.0.3
- github.com/spf13/cobra: v1.7.0 → v1.8.0
- github.com/vmware-tanzu/tanzu-plugin-runtime: v1.1.0 → v1.2.0-rc.0
- golang.org/x/crypto: v0.14.0 → v0.17.0
- golang.org/x/sys: v0.13.0 → v0.15.0
- golang.org/x/term: v0.13.0 → v0.15.0
- golang.org/x/text: v0.13.0 → v0.14.0
Removed
Nothing has changed.
New Contributors
- @shaheerkootteeri made their first contribution in #546
Full Changelog: v1.1.0...v1.2.0-rc.0