Skip to content

Commit

Permalink
Merge pull request #54 from spectrocloud/PLT-678
Browse files Browse the repository at this point in the history
PLT-678:Admin kube config sdk support
  • Loading branch information
nikchern authored Sep 22, 2023
2 parents b7bf98c + 0109f02 commit 16c6a64
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 3 deletions.
1 change: 1 addition & 0 deletions client/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ type V1Client struct {
// Cluster generic
GetClusterWithoutStatusFn func(string) (*models.V1SpectroCluster, error)
GetClusterFn func(scope, uid string) (*models.V1SpectroCluster, error)
GetClusterAdminConfigFn func(uid string) (string, error)
GetClusterKubeConfigFn func(uid string) (string, error)
GetClusterBackupConfigFn func(uid string) (*models.V1ClusterBackup, error)
GetClusterScanConfigFn func(uid string) (*models.V1ClusterComplianceScan, error)
Expand Down
31 changes: 31 additions & 0 deletions client/cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,37 @@ func (h *V1Client) GetClusterKubeConfig(uid, ClusterContext string) (string, err
return builder.String(), nil
}

func (h *V1Client) GetClusterAdminKubeConfig(uid, ClusterContext string) (string, error) {
if h.GetClusterAdminConfigFn != nil {
return h.GetClusterAdminConfigFn(uid)
}
client, err := h.GetClusterClient()
if err != nil {
return "", err
}

var params *clusterC.V1SpectroClustersUIDAdminKubeConfigParams
switch ClusterContext {
case "project":
params = clusterC.NewV1SpectroClustersUIDAdminKubeConfigParamsWithContext(h.Ctx).WithUID(uid)
case "tenant":
params = clusterC.NewV1SpectroClustersUIDAdminKubeConfigParams().WithUID(uid)
default:
return "", errors.New("invalid cluster scope specified")
}

builder := new(strings.Builder)
_, err = client.V1SpectroClustersUIDAdminKubeConfig(params, builder)
if err != nil {
if herr.IsNotFound(err) {
return "", nil
}
return "", err
}

return builder.String(), nil
}

func (h *V1Client) GetClusterImportManifest(uid string) (string, error) {
client, err := h.GetClusterClient()
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ require (
github.com/go-openapi/strfmt v0.20.0
github.com/pkg/errors v0.9.1
github.com/spectrocloud/gomi v1.14.1-0.20230412095143-b0595c6c6f08
github.com/spectrocloud/hapi v1.14.1-0.20230904110035-ed2b1df599dc
github.com/spectrocloud/hapi v1.14.1-0.20230921130725-2afc79a3ea05
github.com/stretchr/testify v1.7.0
)

Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,8 @@ github.com/spectrocloud/hapi v1.14.1-0.20230809113851-e533537baa55 h1:0V4LeAlh+/
github.com/spectrocloud/hapi v1.14.1-0.20230809113851-e533537baa55/go.mod h1:O/Bkbw92QPSGPNQPqKt7Qlkn+9BKK/a22KTUlk76KHI=
github.com/spectrocloud/hapi v1.14.1-0.20230814141242-394093e7fedb h1:Y/TDXfEZ6GJbYi4bKxFS0HFvmOL6Xs653BoxuZjuKEQ=
github.com/spectrocloud/hapi v1.14.1-0.20230814141242-394093e7fedb/go.mod h1:O/Bkbw92QPSGPNQPqKt7Qlkn+9BKK/a22KTUlk76KHI=
github.com/spectrocloud/hapi v1.14.1-0.20230904110035-ed2b1df599dc h1:3dC4+8RimiF6hlVPdA6fgMeEUIYEbE1Z08ad4f9153Q=
github.com/spectrocloud/hapi v1.14.1-0.20230904110035-ed2b1df599dc/go.mod h1:O/Bkbw92QPSGPNQPqKt7Qlkn+9BKK/a22KTUlk76KHI=
github.com/spectrocloud/hapi v1.14.1-0.20230921130725-2afc79a3ea05 h1:QHuGuSItjNA0iVda1OCvHlWDjps6NR1X1/pjlYmIOp8=
github.com/spectrocloud/hapi v1.14.1-0.20230921130725-2afc79a3ea05/go.mod h1:aI54jbfaSec1ikHSMOJQ7mMOTaRKpQTRCoMKamhBE9s=
github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
Expand Down

0 comments on commit 16c6a64

Please sign in to comment.