Skip to content

v1.3.0-rc.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 02 May 01:04
· 78 commits to main since this release

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 to tanzu 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, and tanzu 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 variable TANZU_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 registry projects.registry.vmware.com, run the following command to update discovery source tanzu plugin source update default -u projects.registry.vmware.com/tanzu_cli/plugins/plugin-inventory:latest. To switch back to the new default registry run the tanzu 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, and tanzu 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

Removed

Nothing has changed.