Skip to content
This repository has been archived by the owner on Oct 10, 2023. It is now read-only.

Discover Plugins from all active contexts and Support Plugin Name conflicts across different Targets #3961

Merged
merged 24 commits into from
Nov 30, 2022

Conversation

anujc25
Copy link
Contributor

@anujc25 anujc25 commented Nov 21, 2022

What this PR does / why we need it

  • Discover Plugins from all active contexts:

    • Before this change, Tanzu CLI only discovers plugins based on the current (currentServer) field. But with targets implementation, we can have one active context per target. Meaning, we need to discover plugins from multiple active contexts.
    • Changes are made in pluginmanager APIs to not take serverName as parameter but fetch the active contexts as part of internal DiscoverServerPlugins function and provide the result based on the active contexts instead of just single current (currentServer) field.
  • Support Plugin Name conflicts across different Targets

    • Before this change, Tanzu CLI uniquely identifies plugins based on just the PluginName irrespective of whether it is context-scoped plugin, standalone plugin or belongs to a different target group. Meaning, only one plugin of a name can be installed at a time. However, there is expectation that there can be different plugins of the same name (regardless of how they are discovered), each associated with a different target level.
    • This change, addresses this issue by identifying uniqueness based on PluginName and Target of the plugin. This means, plugin names must be Unique per Target Level.

Below are the high-level summary of the changes:

  • Add Target field in CLIPlugin CR for determining Target of the standalone plugins
  • Update Catalog to use PluginName_Target as a key to store plugin details in the map
  • Update plugin-manager lifecycle APIs to not accept ServerName as input but find the current server information as part of DiscoverServerPlugins API. If the context-target feature-flag is enabled, DiscoverServerPlugins API will return plugin discovered through all active contexts.
  • Add target flag for plugin lifecycle commands to uniquely identify the plugins incase of name conflicts.
  • Add target information for standalone plugins CR defined under standalone-plugins package
  • Shortened format handling for k8s targeted plugins when there is name conflict between <none> targeted plugin and k8s targeted plugin.
    • Special handling of k8s target plugins is needed here as both the plugins can be treated as same plugins
  • Update implementation of builder plugin to accept target information with the plugin name and to generate CLIPlugin resource containing target information
  • Add/Update some of the docs

TODO:

  • Update Context-Type in ClientConfig API to Target. (This will be done as part of follow-up PR)

Which issue(s) this PR fixes

Related to #3714

Describe testing done for PR

Plugin Install Tests

List the plugins before installing any

~/.c/tanzu-plugins $ tanzu plugin list
Standalone Plugins
  NAME                DESCRIPTION                                                        TARGET      DISCOVERY      VERSION      STATUS         
  login               Login to the platform                                                          default-local  v0.28.0-dev  not installed  
  pinniped-auth       Pinniped authentication operations (usually not directly invoked)              default-local  v0.28.0-dev  not installed  
  management-cluster  Kubernetes management cluster operations                           kubernetes  default-local  v0.28.0-dev  not installed  
  package             Tanzu package management                                           kubernetes  default-local  v0.28.0-dev  not installed  
  secret              Tanzu secret management                                            kubernetes  default-local  v0.28.0-dev  not installed  
  telemetry           configure cluster-wide settings for vmware tanzu telemetry         kubernetes  default-local  v0.28.0-dev  not installed  

Plugins from Context:  kind-test-cluster
  NAME                DESCRIPTION                           TARGET      VERSION      STATUS         
  cluster             Kubernetes cluster operations         kubernetes  v0.28.0-dev  not installed  
  feature             Operate on features and featuregates  kubernetes  v0.28.0-dev  not installed  
  kubernetes-release  Kubernetes release operations         kubernetes  v0.28.0-dev  not installed  

Plugins from Context:  tmc-unstable
  NAME                DESCRIPTION                                                     TARGET           VERSION  STATUS         
  account             Account for tmc resources                                       mission-control  v0.0.1   not installed  
  apply               Create/Update a resource with a resource file                   mission-control  v0.0.1   not installed  
  audit               Run an audit request on an org                                  mission-control  v0.0.1   not installed  
  cluster                                                                             mission-control  v0.0.1   not installed  
  clustergroup        A group of Kubernetes clusters                                  mission-control  v0.0.1   not installed  
  data-protection     Data protection for tmc resources                               mission-control  v0.0.1   not installed  
  ekscluster                                                                          mission-control  v0.0.1   not installed  
  events              Events for any meaningful user activity or system state change  mission-control  v0.0.1   not installed  
  iam                 IAM Policies for tmc resources                                  mission-control  v0.0.1   not installed  
  inspection          Inspection for tmc resources                                    mission-control  v0.0.1   not installed  
  integration         Get available integrations and their information from registry  mission-control  v0.0.1   not installed  
  management-cluster  A TMC registered Management cluster                             mission-control  v0.0.1   not installed  
  policy              Policy for tmc resources                                        mission-control  v0.0.1   not installed  
  workspace           A group of Kubernetes namespaces                                mission-control  v0.0.1   not installed  

Different Plugin Name conflict scenarios

~/.c/tanzu-plugins $ tanzu plugin install login
ℹ  Installing plugin 'login:v0.28.0-dev'
✔  successfully installed 'login' plugin

~/.c/tanzu-plugins $ tanzu plugin install cluster
✖  unable to uniquely identify plugin 'cluster'. Please specify correct Target(kubernetes[k8s]/mission-control[tmc]) of the plugin with `--target` flag 

~/.c/tanzu-plugins [1]$ tanzu plugin install cluster --target k8s
ℹ  Installing plugin 'cluster:v0.28.0-dev' with target 'kubernetes'
✔  successfully installed 'cluster' plugin

Check tanzu --help to see the cluster command is available under root tanzu cli command as well as under kubernetes target with tanzu kubernetes --help

~/.c/tanzu-plugins $ tanzu 
Tanzu CLI

Usage:
  tanzu [command]

Available command groups:

  Run
    cluster                 Kubernetes cluster operations 

  System
    completion              Output shell completion code 
    config                  Configuration for the CLI 
    context                 Configure and manage contexts for the Tanzu CLI 
    init                    Initialize the CLI 
    plugin                  Manage CLI plugins 
    update                  Update the CLI 
    version                 Version information 

  Target
    kubernetes              Tanzu CLI plugins that target a Kubernetes cluster 
    mission-control         Tanzu CLI plugins that target a Tanzu Mission Control endpoint 
~/.c/tanzu-plugins $ tanzu cluster info
{"name":"cluster","description":"Kubernetes cluster operations","version":"v0.28.0-dev","buildSHA":"522e7a192-dirty","digest":"","group":"Run","docURL":"","completionType":0,"aliases":["cl","clusters"],"installationPath":"","discovery":"","scope":"","status":"","discoveredRecommendedVersion":"","target":"","defaultFeatureFlags":{"features.cluster.custom-nameservers":false,"features.cluster.dual-stack-ipv4-primary":false,"features.cluster.dual-stack-ipv6-primary":false},"pluginRuntimeVersion":"v0.28.0-dev"}
~/.c/tanzu-plugins $ tanzu k8s --help
Tanzu CLI plugins that target a Kubernetes cluster

Usage:
  tanzu kubernetes [command]

Available command groups:

  Run
    cluster                 Kubernetes cluster operations 

~/.c/tanzu-plugins $ tanzu k8s cluster info
{"name":"cluster","description":"Kubernetes cluster operations","version":"v0.28.0-dev","buildSHA":"522e7a192-dirty","digest":"","group":"Run","docURL":"","completionType":0,"aliases":["cl","clusters"],"installationPath":"","discovery":"","scope":"","status":"","discoveredRecommendedVersion":"","target":"","defaultFeatureFlags":{"features.cluster.custom-nameservers":false,"features.cluster.dual-stack-ipv4-primary":false,"features.cluster.dual-stack-ipv6-primary":false},"pluginRuntimeVersion":"v0.28.0-dev"}

Continue installing plugin from tmc target:

~/.c/tanzu-plugins $ tanzu plugin install cluster --target tmc
ℹ  Installing plugin 'cluster:v0.0.1' with target 'mission-control'
✔  successfully installed 'cluster' plugin

Verify the help to see the cluster command is available under tmc target

~/.c/tanzu-plugins $ tanzu tmc --help
Tanzu CLI plugins that target a Tanzu Mission Control endpoint

Usage:
  tanzu mission-control [command]

Available command groups:

  Manage
    cluster                 A TMC managed Kubernetes cluster 
~/.c/tanzu-plugins $ tanzu tmc cluster info
{"name":"cluster","description":"A TMC managed Kubernetes cluster","version":"v0.0.1","buildSHA":"9d6682aa","digest":"","group":"Manage","docURL":"","completionType":0,"installationPath":"","discovery":"","scope":"","status":"","discoveredRecommendedVersion":""}

List the plugins after installing few plugins.

~/.c/tanzu-plugins $ tanzu plugin list
Standalone Plugins
  NAME                DESCRIPTION                                                        TARGET      DISCOVERY      VERSION      STATUS         
  login               Login to the platform                                                          default-local  v0.28.0-dev  installed      
  pinniped-auth       Pinniped authentication operations (usually not directly invoked)              default-local  v0.28.0-dev  not installed  
  management-cluster  Kubernetes management cluster operations                           kubernetes  default-local  v0.28.0-dev  not installed  
  package             Tanzu package management                                           kubernetes  default-local  v0.28.0-dev  not installed  
  secret              Tanzu secret management                                            kubernetes  default-local  v0.28.0-dev  not installed  
  telemetry           configure cluster-wide settings for vmware tanzu telemetry         kubernetes  default-local  v0.28.0-dev  not installed  

Plugins from Context:  kind-test-cluster
  NAME                DESCRIPTION                           TARGET      VERSION      STATUS         
  cluster             Kubernetes cluster operations         kubernetes  v0.28.0-dev  installed      
  feature             Operate on features and featuregates  kubernetes  v0.28.0-dev  not installed  
  kubernetes-release  Kubernetes release operations         kubernetes  v0.28.0-dev  not installed  

Plugins from Context:  tmc-unstable
  NAME                DESCRIPTION                                                     TARGET           VERSION  STATUS         
  account             Account for tmc resources                                       mission-control  v0.0.1   not installed  
  apply               Create/Update a resource with a resource file                   mission-control  v0.0.1   not installed  
  audit               Run an audit request on an org                                  mission-control  v0.0.1   not installed  
  cluster                                                                             mission-control  v0.0.1   installed      
  clustergroup        A group of Kubernetes clusters                                  mission-control  v0.0.1   not installed  
  data-protection     Data protection for tmc resources                               mission-control  v0.0.1   not installed  
  ekscluster                                                                          mission-control  v0.0.1   not installed  
  events              Events for any meaningful user activity or system state change  mission-control  v0.0.1   not installed  
  iam                 IAM Policies for tmc resources                                  mission-control  v0.0.1   not installed  
  inspection          Inspection for tmc resources                                    mission-control  v0.0.1   not installed  
  integration         Get available integrations and their information from registry  mission-control  v0.0.1   not installed  
  management-cluster  A TMC registered Management cluster                             mission-control  v0.0.1   not installed  
  policy              Policy for tmc resources                                        mission-control  v0.0.1   not installed  
  workspace           A group of Kubernetes namespaces                                mission-control  v0.0.1   not installed  
  • Plugin Upgrade Tests

Different Plugin Name conflict scenarios

~/.c/tanzu-plugins $ tanzu plugin upgrade login
ℹ  Installing plugin 'login:v0.28.0-dev'
✔  successfully upgraded plugin 'login' to version 'v0.28.0-dev'

~/.c/tanzu-plugins $ tanzu plugin upgrade cluster
✖  unable to uniquely identify plugin 'cluster'. Please specify correct Target(kubernetes[k8s]/mission-control[tmc]) of the plugin with `--target` flag 

~/.c/tanzu-plugins [1]$ tanzu plugin upgrade cluster --target k8s
ℹ  Installing plugin 'cluster:v0.28.0-dev' with target 'kubernetes'
✔  successfully upgraded plugin 'cluster' to version 'v0.28.0-dev'

~/.c/tanzu-plugins $ tanzu plugin install cluster --target tmc
ℹ  Installing plugin 'cluster:v0.0.1' with target 'mission-control'
✔  successfully upgraded plugin 'cluster' to version 'v0.0.1'
  • Plugin Describe Tests
~/.c/tanzu-plugins [1]$ tanzu plugin describe login
... <shows correct output>

~/.c/tanzu-plugins $ tanzu plugin describe cluster
✖  unable to uniquely identify plugin 'cluster'. Please specify correct Target(kubernetes[k8s]/mission-control[tmc]) of the plugin with `--target` flag 

~/.c/tanzu-plugins [1]$ tanzu plugin describe cluster --target k8s
... <shows correct output>

~/.c/tanzu-plugins [1]$ tanzu plugin describe cluster --target tmc
... <shows correct output>
  • Plugin Delete Tests
~/.c/tanzu-plugins $ tanzu plugin delete login
Deleting Plugin 'login'. Are you sure? [y/N]: y
✔  successfully deleted plugin 'login

~/.c/tanzu-plugins $ tanzu plugin delete cluster
✖  unable to uniquely identify plugin 'cluster'. Please specify correct Target(kubernetes[k8s]/mission-control[tmc]) of the plugin with `--target` flag 

~/.c/tanzu-plugins [1]$ tanzu plugin delete cluster --target kubernetes
Deleting Plugin 'cluster'. Are you sure? [y/N]: y
✔  successfully deleted plugin 'cluster'

~/.c/tanzu-plugins $ tanzu plugin delete cluster --target tmc
Deleting Plugin 'cluster'. Are you sure? [y/N]: y
✔  successfully deleted plugin 'cluster'
  • Context List
~/.c/tanzu-plugins $ tanzu context list 
Target:  k8s
  NAME               ISACTIVE  ENDPOINT  KUBECONFIGPATH             KUBECONTEXT        
  kind-test-cluster  true                /Users/anujc/.kube/config  kind-test-cluster  
Target:  tmc
  NAME          ISACTIVE  ENDPOINT                               
  tmc           false     unstable-dev.tmc.cloud.vmware.com:443  
  tmc-unstable  true      unstable.tmc-dev.cloud.vmware.com:443 

Release note

Support Plugin Name conflicts across different Targets

Additional information

Special notes for your reviewer

@codecov
Copy link

codecov bot commented Nov 21, 2022

Codecov Report

Merging #3961 (992f974) into main (69bb600) will decrease coverage by 0.64%.
The diff coverage is 48.71%.

@@            Coverage Diff             @@
##             main    #3961      +/-   ##
==========================================
- Coverage   48.22%   47.57%   -0.65%     
==========================================
  Files         433      457      +24     
  Lines       43122    44740    +1618     
==========================================
+ Hits        20795    21287     +492     
- Misses      20343    21448    +1105     
- Partials     1984     2005      +21     
Impacted Files Coverage Δ
cli/core/pkg/cli/cmd.go 0.00% <ø> (ø)
cli/core/pkg/command/config.go 41.07% <0.00%> (+0.89%) ⬆️
cli/core/pkg/command/context.go 6.51% <0.00%> (-0.46%) ⬇️
cli/core/pkg/command/discovery_source.go 40.90% <0.00%> (-0.38%) ⬇️
cli/core/pkg/command/doc.go 3.07% <0.00%> (ø)
cli/core/pkg/command/init.go 5.55% <0.00%> (+0.67%) ⬆️
cli/core/pkg/command/plugin_manager.go 8.22% <0.00%> (+0.64%) ⬆️
cli/core/pkg/command/root.go 0.00% <0.00%> (ø)
cli/core/pkg/config/discovery.go 74.07% <ø> (-0.93%) ⬇️
cli/runtime/apis/config/v1alpha1/clientconfig.go 32.53% <0.00%> (-5.43%) ⬇️
... and 46 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@anujc25 anujc25 changed the title WIP: Support Plugin Name conflicts across different Targets WIP: Discover Plugins from all active contexts and Support Plugin Name conflicts across different Targets Nov 21, 2022
Copy link
Contributor

@marckhouzam marckhouzam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the change @anujc25, I'm starting with reviewing the docs and posting comments immediately to go faster

cli/core/docs/cli/cli-architecture.md Outdated Show resolved Hide resolved
cli/core/docs/cli/cli-architecture.md Outdated Show resolved Hide resolved
cli/core/docs/cli/cli-architecture.md Outdated Show resolved Hide resolved
cli/core/docs/cli/cli-architecture.md Outdated Show resolved Hide resolved
@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch 3 times, most recently from e63f022 to 5900ad4 Compare November 22, 2022 09:49
@anujc25 anujc25 changed the title WIP: Discover Plugins from all active contexts and Support Plugin Name conflicts across different Targets Discover Plugins from all active contexts and Support Plugin Name conflicts across different Targets Nov 22, 2022
@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch from 5900ad4 to 7bd4954 Compare November 22, 2022 17:20
Copy link
Contributor

@marckhouzam marckhouzam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Continuing the review. Things are coming together 😄
Here are some comments/questions for things I was wondering.
Will continue to review.

cli/core/pkg/command/root.go Outdated Show resolved Hide resolved
cli/core/pkg/command/root.go Outdated Show resolved Hide resolved
cli/core/pkg/command/root.go Show resolved Hide resolved
cli/core/pkg/pluginmanager/manager_test.go Outdated Show resolved Hide resolved
apis/cli/v1alpha1/cliplugin_types.go Outdated Show resolved Hide resolved
cli/core/pkg/pluginmanager/manager.go Outdated Show resolved Hide resolved
cli/runtime/config/contexts.go Outdated Show resolved Hide resolved
cli/core/pkg/pluginmanager/manager.go Outdated Show resolved Hide resolved
cli/core/pkg/pluginmanager/manager.go Outdated Show resolved Hide resolved
cli/core/pkg/pluginmanager/manager.go Show resolved Hide resolved
@marckhouzam
Copy link
Contributor

I noticed that tanzu context create ... seems to trigger plugins to be installed for all active contexts, meaning the new one I created, but also for the other target. I wonder if this is right?

Say I use a TMC target and remove some plugins I don't want to use (tanzu plugin delete); then I create a context to point to a TKG cluster but then all my TMC plugins get re-installed.

cli/core/pkg/pluginmanager/manager.go Outdated Show resolved Hide resolved
cli/core/pkg/pluginmanager/manager.go Outdated Show resolved Hide resolved
Copy link
Contributor

@marckhouzam marckhouzam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One thing I have trouble understanding: if I write my own standalone plugin, where do I specify the target it applies to? Should I set the "Target" field in the PluginDescriptor?

cli/core/pkg/plugin/types.go Show resolved Hide resolved
cli/core/pkg/plugin/types.go Outdated Show resolved Hide resolved
@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch from 7bd4954 to e8c1f3b Compare November 23, 2022 07:51
@anujc25
Copy link
Contributor Author

anujc25 commented Nov 23, 2022

One thing I have trouble understanding: if I write my own standalone plugin, where do I specify the target it applies to? Should I set the "Target" field in the PluginDescriptor?

Currently, we do not provide Target information as part of PluginDescriptor.
We do provide that information as part of discovery using CLIPlugin CR for the plugin.

The reason is, Target information is needed by Core CLI even before we install the plugin during discovery phase. Hence, putting the Target information in the PluginDescriptor is not sufficient because PluginDescriptor is only available to the Core CLI once the plugin binary is downloaded.

@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch from e8c1f3b to 70fdd6f Compare November 23, 2022 09:52
@marckhouzam
Copy link
Contributor

Currently, we do not provide Target information as part of PluginDescriptor.

Ah ok. We don't provide it, but the PR does add a new Target field to the plugin descriptor. But I understand that it is used to pass data around, not to be filled by the plugin itself.

We do provide that information as part of discovery using CLIPlugin CR for the plugin.

The reason is, Target information is needed by Core CLI even before we install the plugin during discovery phase. Hence, putting the Target information in the PluginDescriptor is not sufficient because PluginDescriptor is only available to the Core CLI once the plugin binary is downloaded.

Aha, yes that makes sense (I'm still wrapping my brain around the subtle details of this change).

So, if I create a standalone plugin that targets TMC, and I list and eventually install it using the --local flag, how would I specify the Target? If this is not supported by the PR, I think it is fine, but maybe we'll need to track it for a future fix?

Copy link
Contributor

@chandrareddyp chandrareddyp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch 2 times, most recently from 204974e to 69c2550 Compare November 23, 2022 20:47
cli/core/pkg/pluginmanager/manager_test.go Outdated Show resolved Hide resolved
cli/core/pkg/command/root.go Show resolved Hide resolved
cli/core/Makefile Show resolved Hide resolved
cli/core/pkg/command/discovery_source.go Show resolved Hide resolved
cli/core/pkg/command/root.go Outdated Show resolved Hide resolved
cli/core/pkg/command/root.go Show resolved Hide resolved
matchedCmd := findSubCommand(RootCmd, cmd)
if matchedCmd == nil { // If the subcommand for the plugin doesn't exist add the command
RootCmd.AddCommand(cmd)
} else if plugins[i].Scope == common.PluginScopeContext && isStandalonePluginCommand(matchedCmd) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the use case we specifically worry about here, that requires this logic?

I'm asking because I'm trying to see if we need similar logic in addPluginsToCtxType()

cli/core/pkg/command/plugin_manager.go Outdated Show resolved Hide resolved
cli/core/pkg/command/plugin_manager.go Show resolved Hide resolved
@marckhouzam
Copy link
Contributor

@anujc25 I think we should hold off on adding the top commit "Update helptext template to update group name with plugins".

That commit is unrelated to this PR but more importantly it makes a user-visible change that I think requires a bit of discussion. I personally would open an issue about it and post it as an independent PR so that it can get the proper attention and discussion.

@marckhouzam
Copy link
Contributor

Deleting a plugin that has a target has some issues.
As a user:

tanzu plugin delete management-cluster
✖  could not get plugin path for plugin "management-cluster"

It works if I specify the -target flag. We should probably print the same message as for other commands when the user does not specify the target.

@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch from 2abeea4 to 646046b Compare November 28, 2022 17:15
This is required because of k8s targeted plugin still relies on
`current` field and we do not want to update that field when context for
tmc targeted context changes.

Scenario:

1. config.yaml looks like below
```
current: kind-test-cluster-2
currentContext:
    tmc: tmc-unstable
    k8s: kind-test-cluster-2
```
2. tanzu tkr get or tanzu k8s tkr get talks to kind-test-cluster-2
   and returns the result.
3. tanzu tmc iam command should use currentContext.tmc and talk to
   tmc-unstable endpoint.
4. If user does, tanzu context use tmc-dev to point to new tmc dev
   endpoint, based on the existing behavior it will update the
   currentContext.tmc as well as current to point to tmc-dev .
```
current: tmc-dev
currentContext:
    tmc: tmc-dev
    k8s: kind-test-cluster-2
```
5. Because, old tkr plugin still uses current to determine the
   cluster to talk to tanzu k8s tkr get will not work anymore as
   it is pointing to tmc endpoint.
@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch from ee56daa to f466a62 Compare November 30, 2022 01:18
@anujc25
Copy link
Contributor Author

anujc25 commented Nov 30, 2022

/test install-vc7

@github-actions
Copy link

Cluster Generation A/B Results:
https://storage.googleapis.com/tkg-clustergen/3961/20221130012655/clustergen.diff.txt
Author/reviewers:
Please review to verify that the effects on the generated cluster configurations are exactly what the PR intended, and give a thumbs-up if so.

@alfredthenarwhal
Copy link
Collaborator

@anujc25: /test install-vc7
Commit: f466a62

Build failed! Build no: 3397

@github-actions
Copy link

Cluster Generation A/B Results:
https://storage.googleapis.com/tkg-clustergen/3961/20221130055124/clustergen.diff.txt
Author/reviewers:
Please review to verify that the effects on the generated cluster configurations are exactly what the PR intended, and give a thumbs-up if so.

@anujc25
Copy link
Contributor Author

anujc25 commented Nov 30, 2022

/test install-vc7

@github-actions
Copy link

Cluster Generation A/B Results:
https://storage.googleapis.com/tkg-clustergen/3961/20221130084034/clustergen.diff.txt
Author/reviewers:
Please review to verify that the effects on the generated cluster configurations are exactly what the PR intended, and give a thumbs-up if so.

@alfredthenarwhal
Copy link
Collaborator

@anujc25: /test install-vc7
Commit: 4cabafc

Tests failed! Build no: 3403

@anujc25
Copy link
Contributor Author

anujc25 commented Nov 30, 2022

/test install-vc7

@github-actions
Copy link

Cluster Generation A/B Results:
https://storage.googleapis.com/tkg-clustergen/3961/20221130164012/clustergen.diff.txt
Author/reviewers:
Please review to verify that the effects on the generated cluster configurations are exactly what the PR intended, and give a thumbs-up if so.

@anujc25 anujc25 force-pushed the support-plugin-name-conflicts branch from 5221503 to fea415e Compare November 30, 2022 17:10
@alfredthenarwhal
Copy link
Collaborator

@anujc25: /test install-vc7
Commit: 5221503

Tests canceled! Build no: 3408

@anujc25
Copy link
Contributor Author

anujc25 commented Nov 30, 2022

/test install-vc7

@github-actions
Copy link

Cluster Generation A/B Results:
https://storage.googleapis.com/tkg-clustergen/3961/20221130172329/clustergen.diff.txt
Author/reviewers:
Please review to verify that the effects on the generated cluster configurations are exactly what the PR intended, and give a thumbs-up if so.

@marckhouzam
Copy link
Contributor

@anujc25 I think tanzu config init is broken. I believe it has a double request to locking the config file.

@github-actions
Copy link

Cluster Generation A/B Results:
https://storage.googleapis.com/tkg-clustergen/3961/20221130205354/clustergen.diff.txt
Author/reviewers:
Please review to verify that the effects on the generated cluster configurations are exactly what the PR intended, and give a thumbs-up if so.

@alfredthenarwhal
Copy link
Collaborator

@anujc25: /test install-vc7
Commit: fea415e

Tests passed! Build no: 3411

@vuil vuil added area/core-cli ok-to-merge PRs should be labelled with this before merging labels Nov 30, 2022
Copy link
Contributor

@vuil vuil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, thanks!

@anujc25 anujc25 merged commit fa9b65e into vmware-tanzu:main Nov 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area/core-cli cla-not-required ok-to-merge PRs should be labelled with this before merging
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants