Skip to content

Commit

Permalink
Add antctl join command
Browse files Browse the repository at this point in the history
Signed-off-by: hujiajing <hjiajing@vmware.com>
  • Loading branch information
hjiajing committed Jul 28, 2022
1 parent 80e570a commit cd8d492
Show file tree
Hide file tree
Showing 18 changed files with 862 additions and 840 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ func NewRemoteCommonArea(clusterID common.ClusterID, clusterSetID common.Cluster
scheme *runtime.Scheme, localClusterClient client.Client, clusterSetNamespace string, localNamespace string) (RemoteCommonArea, error) {
klog.InfoS("Create a RemoteCommonArea", "cluster", clusterID)

crtData, token, err := getSecretCACrtAndToken(secret)
crtData, token, err := GetSecretCACrtAndToken(secret)
if err != nil {
return nil, err
}
Expand Down Expand Up @@ -189,9 +189,9 @@ func NewRemoteCommonArea(clusterID common.ClusterID, clusterSetID common.Cluster
}

/**
* getSecretCACrtAndToken returns the access credentials from Secret.
* GetSecretCACrtAndToken returns the access credentials from Secret.
*/
func getSecretCACrtAndToken(secretObj *v1.Secret) ([]byte, []byte, error) {
func GetSecretCACrtAndToken(secretObj *v1.Secret) ([]byte, []byte, error) {
caData, found := secretObj.Data[v1.ServiceAccountRootCAKey]
if !found {
return nil, nil, fmt.Errorf("ca.crt data not found in Secret %v", secretObj.GetName())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -352,27 +352,3 @@ func (r *MemberClusterSetReconciler) GetRemoteCommonAreaAndLocalID() (commonarea
}
return nil, "", errors.New("no connected remote Common Area")
}

func (r *MemberClusterSetReconciler) deleteMemberAnnounce() error {
commonArea, ok := r.remoteCommonAreaManager.GetRemoteCommonAreas()[r.remoteCommonAreaManager.GetElectedLeaderClusterID()]
if !ok {
return fmt.Errorf("no Common Area for ClusetSet %s", r.clusterSetID)
}

namespace := commonArea.GetNamespace()
name := "member-announce-from-" + string(r.clusterID)

memberClusterAnnounce := &multiclusterv1alpha1.MemberClusterAnnounce{
ObjectMeta: metav1.ObjectMeta{
Namespace: namespace,
Name: name,
},
}

klog.InfoS("Deleting MemberClusterAnnounce", "name", name, "Namespace", namespace)
if err := commonArea.Delete(context.TODO(), memberClusterAnnounce); err != nil {
return fmt.Errorf("failed to delete MemberClusterAnnounce: %v", err)
}

return nil
}
Original file line number Diff line number Diff line change
Expand Up @@ -326,10 +326,7 @@ func (r *MemberClusterAnnounceReconciler) addMemberToClusterSet(memberClusterAnn
}

exist := false
<<<<<<< HEAD
// ClusterSet ID of MemberClusterAnnounce cannot change. It is guaranteed by the MemberClusterAnnounce webhook.
=======
>>>>>>> 6aec3fe5 (Auto update ClusterSet in leader cluster)
for _, member := range clusterSet.Spec.Members {
if member.ClusterID == memberClusterAnnounce.ClusterID {
exist = true
Expand Down Expand Up @@ -366,18 +363,11 @@ func (r *MemberClusterAnnounceReconciler) removeMemberFromClusterSet(memberClust
}
}
if !found {
<<<<<<< HEAD
klog.InfoS("Member cluster not found in ClusterSet", "ClusterSet", clusterSetID, "cluster", memberClusterAnnounce.ClusterID)
return nil
}

klog.InfoS("Removing member cluster from the ClusterSet", "cluster", memberClusterAnnounce.ClusterID, "ClusterSet", klog.KObj(clusterSet))
=======
klog.InfoS("Member cluster not found in ClusterSet", "ClusterSet", clusterSetID, "Member", memberClusterAnnounce.ClusterID)
return nil
}

>>>>>>> 6aec3fe5 (Auto update ClusterSet in leader cluster)
if err := r.Update(context.TODO(), clusterSet); err != nil {
klog.ErrorS(err, "Failed to update ClusterSet in leader cluster", "ClusterSet", clusterSetID, "Namespace", clusterSet.Namespace)
return err
Expand Down
20 changes: 16 additions & 4 deletions pkg/antctl/antctl.go
Original file line number Diff line number Diff line change
Expand Up @@ -598,25 +598,37 @@ $ antctl get podmulticaststats pod -n namespace`,
commandGroup: mc,
},
{
cobraCommand: multicluster.AddCmd,
cobraCommand: multicluster.CreateCmd,
supportAgent: false,
supportController: false,
commandGroup: mc,
},
{
cobraCommand: multicluster.CreateCmd,
cobraCommand: multicluster.DeployCmd,
supportAgent: false,
supportController: false,
commandGroup: mc,
},
{
cobraCommand: multicluster.DeleteCmd,
cobraCommand: multicluster.JoinCmd,
supportAgent: false,
supportController: false,
commandGroup: mc,
},
{
cobraCommand: multicluster.DeployCmd,
cobraCommand: multicluster.LeaveCmd,
supportAgent: false,
supportController: false,
commandGroup: mc,
},
{
cobraCommand: multicluster.InitCmd,
supportAgent: false,
supportController: false,
commandGroup: mc,
},
{
cobraCommand: multicluster.DestroyCmd,
supportAgent: false,
supportController: false,
commandGroup: mc,
Expand Down
115 changes: 0 additions & 115 deletions pkg/antctl/raw/multicluster/add/member_cluster.go

This file was deleted.

23 changes: 5 additions & 18 deletions pkg/antctl/raw/multicluster/commands.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,7 @@ package multicluster
import (
"github.com/spf13/cobra"

"antrea.io/antrea/pkg/antctl/raw/multicluster/add"
"antrea.io/antrea/pkg/antctl/raw/multicluster/create"
deleteCmd "antrea.io/antrea/pkg/antctl/raw/multicluster/delete"
"antrea.io/antrea/pkg/antctl/raw/multicluster/deploy"
"antrea.io/antrea/pkg/antctl/raw/multicluster/get"
)
Expand All @@ -34,32 +32,21 @@ var CreateCmd = &cobra.Command{
Short: "Create multi-cluster resources",
}

var AddCmd = &cobra.Command{
Use: "add",
Short: "Add a new member cluster to a ClusterSet",
}

var DeleteCmd = &cobra.Command{
Use: "delete",
Short: "Delete multi-cluster resources",
}

var DeployCmd = &cobra.Command{
Use: "deploy",
Short: "Deploy Antrea Multi-cluster Controller to a leader or member cluster",
}

var JoinCmd = NewJoinCommand()
var LeaveCmd = NewLeaveCommand()
var InitCmd = NewInitCommand()
var DestroyCmd = NewDestroyCommand()

func init() {
GetCmd.AddCommand(get.NewClusterSetCommand())
GetCmd.AddCommand(get.NewResourceImportCommand())
GetCmd.AddCommand(get.NewResourceExportCommand())
CreateCmd.AddCommand(create.NewClusterClaimCmd())
CreateCmd.AddCommand(create.NewAccessTokenCmd())
CreateCmd.AddCommand(create.NewClusterSetCmd())
DeleteCmd.AddCommand(deleteCmd.NewMemberClusterCmd())
DeleteCmd.AddCommand(deleteCmd.NewClusterSetCmd())
DeleteCmd.AddCommand(deleteCmd.NewClusterClaimCmd())
AddCmd.AddCommand(add.NewMemberClusterCmd())
DeployCmd.AddCommand(deploy.NewLeaderClusterCmd())
DeployCmd.AddCommand(deploy.NewMemberClusterCmd())
}
Loading

0 comments on commit cd8d492

Please sign in to comment.