diff options
author | wutianwei <wutianwei1@huawei.com> | 2018-08-22 10:49:56 +0800 |
---|---|---|
committer | wutianwei <wutianwei1@huawei.com> | 2018-09-05 09:03:26 +0800 |
commit | 8371ccd29229c418dd8bb534fda3d28184c4e986 (patch) | |
tree | c08d9deca85364ef3b1d33ab4078aa3d488ae4cc /clover/cloverctl/src/cloverctl/cmd/get_docker_registry.go | |
parent | e35bd25993a9bce37f17cf4353f0aa97d20e9c13 (diff) |
Spinnaker as a Service
JIRA: CLOVER-52
1. Add mainfest to install the spinnaker in kubernetes cluster
2. after using mainfest to install spinnaker,
we can interacte with the halyard daemon with its REST API
and we can add/delete/list the dockerRegistry/kubernetes accounts.
3. Add the cloverctl to interate with the halyard daemon
Change-Id: I71bc5977f2d65aab88fa55f7d7a53ab75eb6a46b
Signed-off-by: wutianwei <wutianwei1@huawei.com>
Diffstat (limited to 'clover/cloverctl/src/cloverctl/cmd/get_docker_registry.go')
-rw-r--r-- | clover/cloverctl/src/cloverctl/cmd/get_docker_registry.go | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/clover/cloverctl/src/cloverctl/cmd/get_docker_registry.go b/clover/cloverctl/src/cloverctl/cmd/get_docker_registry.go new file mode 100644 index 0000000..93c1b3e --- /dev/null +++ b/clover/cloverctl/src/cloverctl/cmd/get_docker_registry.go @@ -0,0 +1,59 @@ +// Copyright (c) Authors of Clover +// +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Apache License, Version 2.0 +// which accompanies this distribution, and is available at +// http://www.apache.org/licenses/LICENSE-2.0 + +package cmd + +import ( + "fmt" + "strings" + "encoding/json" + + "gopkg.in/resty.v1" + "github.com/spf13/cobra" +) + + +var getdockerregistry = &cobra.Command{ + Use: "docker-registry", + Short: "Get docker registry from spinnaker", + Long: ``, + Run: func(cmd *cobra.Command, args []string) { + getdocker() + }, +} + +func init() { + providergetCmd.AddCommand(getdockerregistry) +} + +func getdocker() { + url := controllerIP + "/halyard/account" + + var provider = map[string]string{"name": "dockerRegistry"} + out_json, err := json.Marshal(provider) + if err != nil { + fmt.Println("json.Marshal failed:", err) + return + } + resp, err := resty.SetAllowGetMethodPayload(true).R(). + SetHeader("Content-Type", "application/json"). + SetBody(out_json). + Get(url) + if err != nil { + panic(err.Error()) + } + if resp.StatusCode() != 200 { + fmt.Printf("\n%v\n", resp) + return + } + + accounts := strings.Split(resp.String(), ":") + fmt.Printf("\n") + for index, account := range accounts{ + fmt.Printf("%d. %v\n",index + 1, account) + } +} |