Skip to content

v1.1.0-rc.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 24 Oct 23:57
· 261 commits to main since this release

This release brings you:

  • Support for the arm64 architecture for Darwin (Mac)
    • Note: 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”.
  • UX improvements including dynamic shell completion for core CLI commands and flags
  • Bug fixes and optimizations made on top of the 1.0 release
  • Improvements in CLI context management including support for a new variant of kubernetes-based context which integrates with Cloud Services, one-way syncing of kubeconfig on context switch

Tanzu CLI Installation Instructions

If you are installing Tanzu CLI using the artifacts published as part of this release, please follow the
instructions.

✨ Features

Dynamic Shell Completion

  • Add dynamic shell completion for the commands "ceip", "version", "init", "completion", "generate-all-docs" (#519, @marckhouzam)
  • Add dynamic shell completion for the commands tanzu config command tree. (#520, @marckhouzam)
  • Add dynamic shell completion for the commands and flags under the tanzu context command tree (#501, @marckhouzam)
  • Add dynamic shell completion for the commands and flags under the tanzu plugin command tree (#513, @marckhouzam)
  • Shell completion now only suggests currently valid values for the --target flag. (#555, @marckhouzam)
  • Show a core command's short text in ActiveHelp when completing arguments (#561, @marckhouzam)

Context management

Supports new variant of kubernetes-based CLI context that integrates with CSP
Decouples plugin target from the type of CLI Context
Syncs active context in kubeconfig on CLI context switch

  • Add support to create Application Engine context (#487, @prkalle)
  • Adjust examples for "context create" (#517, @marckhouzam)
  • Decouple the Target association with the Context commands
    • The --target flag is deprecated over the newly introduced --type flag for the tanzu context list and tanzu context unset commands (#524, @anujc25)
  • Delete the kubeconfig pertained to the CLI context during "tanzu context delete" command execution. It is only applied for TAE context type deletion. (#542, @prkalle)
  • Ensure the kubernetes and application-engine current contexts are mutual exclusive (#523, @prkalle)
  • Support multi-file KUBECONFIG path in context creation and updated kubeconfig file path to use default kubeconfig path instead of $HOME/.kube-tanzu/config while creating context for TKG pinniped endpoint (#535, @prkalle)
  • Update "tanzu context create --type" UX to align "--type" options with other commands (#539, @prkalle)
  • tanzu context use of a Context that references a kubeconfig will also update the current context of the kubeconfig referenced (#505, @vuil)
  • Tanzu context list shows additional data for application-engine contexts (#510, @vuil)
  • The UX has been updated for the tanzu context delete and tanzu context unset commands to list plugins that are being deactivated. (#483, @chandrareddyp)
  • Delete the pinniped endpoint's kubecontext in the user's kubeconfig file during context delete command which was generated by CLI during context creation. (#568, @prkalle)
  • Rename 'application-engine' and 'TAE' naming references with 'tanzu' (#562, @prkalle)
  • Rename UCP names and ContextType with TAE(Tanzu Application Engine) (#514, @prkalle)
  • The tanzu contex create functionality updated, after context create, it performs the sync operation only for the newly created context, not for all active contexts.
  • The tanzu context use functionality updated, after activating the given context, it performs the sync operation only for the newly activated context, do not perform sync for all active contexts. (#521, @chandrareddyp)
  • The tanzu context use and tanzu context create commands' UX have been updated to list the plugins they're going to install. (#563, @chandrareddyp)

Support ARM64 CLI on Mac

... by falling back to install AMD64 plugins when the ARM64 version is not available

  • Allow fully using an ARM64 CLI on Mac (Darwin) by having the CLI install plugins for AMD64 when an ARM64 version of the plugin is not available. (#491, @marckhouzam)
  • Display the machine architecture of the CLI in the output of tanzu version (#540, @marckhouzam)

Plugin management improvements

  • Allow getting/installing plugins by specifying plugin-group version as vMAJOR or vMAJOR.MINOR or vMAJOR.MINOR.PATCH with tanzu plugin install --group and tanzu plugin group get commands (#494, @anujc25)
  • Mark the --uri flag as required for tanzu plugin source update. Cleanup and increase test coverage for the tanzu plugin source sub-commands. (#478, @marckhouzam)
  • Show log message on plugin installation based on various plugin installation states (#504, @anujc25)
  • Allow a user to delete all plugins of a single target using tanzu plugin delete all --target ... (#537, @marckhouzam)
  • Allow installing plugins with vMAJOR or vMAJOR.MINOR or vMAJOR.MINOR.PATCH versions with tanzu plugin install and tanzu plugin sync commands (#486, @anujc25)
  • Automatically suggest the --target flag in shell completion when a plugin name is ambiguous. (#553, @marckhouzam)
  • Enhance the output of tanzu plugin group get --all to show the type of plugins. (#526, @marckhouzam)
  • Make the --all flag of tanzu plugin group get not hidden. (#559, @marckhouzam)
  • The tanzu plugin install --group PLUGIN-GROUP-NAME command has been updated to list the plugins it's going to install. (#556, @chandrareddyp)
  • The tanzu plugin sync command user experience has been updated to list the plugins it's going to install for each active context. (#572, @chandrareddyp)
  • Update documentation for global plugins and legacy CLI versions. (#570, @marckhouzam)
  • Use the tanzu plugin uninstall command as a tanzu plugin delete alternative (#549, @anujc25)

🐛 Bug Fixes

  • Fix output text when deleting a context. (#531, @marckhouzam)
  • Fix the Catalog corruption issue (missing installed plugins) when running CLI in parallel (#472, @anujc25)
  • Fix missing target in plugin-tooling.mk file (#528, @marckhouzam)

🌱 Miscellaneous

  • Cleanup unused code around the previous use of feature flags for the context feature and the central repo feature. (#482, @marckhouzam)
  • Fix the usage section of the help text for the builder plugin. (#530, @marckhouzam)
  • Fix unit tests for "tanzu plugin delete" (#498, @marckhouzam)
  • Fix unit tests for plugin search (#481, @marckhouzam)
  • Improve unit testing for plugin lifecycle and remove unused code around the previous use of feature flags. (#484, @marckhouzam)
  • Provide a more detailed error when failing to read the central repository of plugins (#534, @marckhouzam)
  • Tanzu CLI is updated to latest go v1.21 (#490, @mpanchajanya)
  • A sample plugin with E2E test cases has been added to demonstrate the usage of the CLI E2E framework API. This addition is designed to help plugin developers quickly get started with the CLI E2E framework API. (#508, @chandrareddyp)
  • Cleanup extra file generated by unit tests. (#551, @marckhouzam)
  • Remove trailing space in example. (#522, @marckhouzam)
  • Show aliases in the help of tanzu kubernetes and tanzu tmc (#565, @marckhouzam)
  • Tanzu CLI developers can configure input data using the TANZU_CLI_E2E_INPUT_CONFIG_DATA_FILE_PATH environment variable. (#518, @chandrareddyp)
  • Update EULA and CEIP prompt messages with hint on how to avoid the interactive prompt (#548, @prkalle)
  • Updated telemetry metrics collection to account for application-engine context type. Also, fixed the issue to ignore hashing the plugin name as args in "tanzu plugin" subcommand (#550, @prkalle)
  • tanzu config set and tanzu config unset commands --help messages are updated. (#544, @chandrareddyp)

Dependencies

Added

Nothing has changed.

Changed

  • github.com/go-openapi/jsonreference: v0.20.1 → v0.20.2
  • github.com/onsi/ginkgo/v2: v2.10.0 → v2.12.0
  • github.com/onsi/gomega: v1.27.8 → v1.27.10
  • github.com/vmware-tanzu/tanzu-plugin-runtime: v1.0.0 → v1.1.0-rc.0
  • golang.org/x/crypto: v0.9.0 → v0.14.0
  • golang.org/x/mod: v0.10.0 → v0.12.0
  • golang.org/x/net: v0.10.0 → v0.17.0
  • golang.org/x/sync: v0.2.0 → v0.3.0
  • golang.org/x/sys: v0.8.0 → v0.13.0
  • golang.org/x/term: v0.8.0 → v0.13.0
  • golang.org/x/text: v0.9.0 → v0.13.0
  • golang.org/x/tools: v0.9.3 → v0.12.0
  • gotest.tools/v3: v3.0.3 → v3.3.0

Removed

Nothing has changed.

Full Changelog: v1.0.0...v1.1.0-rc.0