diff options
author | Bin Yang <bin.yang@windriver.com> | 2019-07-17 01:54:06 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2019-07-17 01:54:06 +0000 |
commit | 71a2a9c8b8c77cee67571549a06c96ceb3781077 (patch) | |
tree | 0c99ee3688f7fd819e3273d6148525b03db5ac26 | |
parent | a21d70037b5c3bf0e21d4f0d71a2682a5e2f3c77 (diff) | |
parent | 2313ea3cc0730e076bdbc822991534c904570857 (diff) |
Merge "Remove kubeconfigdir. Use a tempfile instead"
-rw-r--r-- | src/k8splugin/internal/app/client.go | 4 | ||||
-rw-r--r-- | src/k8splugin/internal/config/config.go | 2 | ||||
-rw-r--r-- | src/k8splugin/internal/connection/connection.go | 17 |
3 files changed, 12 insertions, 11 deletions
diff --git a/src/k8splugin/internal/app/client.go b/src/k8splugin/internal/app/client.go index 4fdce599..8d2af297 100644 --- a/src/k8splugin/internal/app/client.go +++ b/src/k8splugin/internal/app/client.go @@ -18,7 +18,6 @@ import ( "os" "time" - "github.com/onap/multicloud-k8s/src/k8splugin/internal/config" "github.com/onap/multicloud-k8s/src/k8splugin/internal/connection" "github.com/onap/multicloud-k8s/src/k8splugin/internal/helm" "github.com/onap/multicloud-k8s/src/k8splugin/internal/plugin" @@ -45,8 +44,9 @@ type KubernetesClient struct { // getKubeConfig uses the connectivity client to get the kubeconfig based on the name // of the cloudregion. This is written out to a file. func (k *KubernetesClient) getKubeConfig(cloudregion string) (string, error) { + conn := connection.NewConnectionClient() - kubeConfigPath, err := conn.Download(cloudregion, config.GetConfiguration().KubeConfigDir) + kubeConfigPath, err := conn.Download(cloudregion) if err != nil { return "", pkgerrors.Wrap(err, "Downloading kubeconfig") } diff --git a/src/k8splugin/internal/config/config.go b/src/k8splugin/internal/config/config.go index dc3f7a11..90204c99 100644 --- a/src/k8splugin/internal/config/config.go +++ b/src/k8splugin/internal/config/config.go @@ -37,7 +37,6 @@ type Configuration struct { EtcdCert string `json:"etcd-cert"` EtcdKey string `json:"etcd-key"` EtcdCAFile string `json:"etcd-ca-file"` - KubeConfigDir string `json:"kube-config-dir"` OVNCentralAddress string `json:"ovn-central-address"` ServicePort string `json:"service-port"` } @@ -86,7 +85,6 @@ func defaultConfiguration() *Configuration { EtcdCert: "etcd.cert", EtcdKey: "etcd.key", EtcdCAFile: "etcd-ca.cert", - KubeConfigDir: cwd, OVNCentralAddress: "127.0.0.1", ServicePort: "9015", } diff --git a/src/k8splugin/internal/connection/connection.go b/src/k8splugin/internal/connection/connection.go index adb1e992..df1400b5 100644 --- a/src/k8splugin/internal/connection/connection.go +++ b/src/k8splugin/internal/connection/connection.go @@ -20,8 +20,6 @@ import ( "encoding/base64" "encoding/json" "io/ioutil" - "log" - "path/filepath" "github.com/onap/multicloud-k8s/src/k8splugin/internal/db" @@ -149,7 +147,6 @@ func (v *ConnectionClient) GetConnectivityRecordByName(connectionName string, } for _, value := range conn.OtherConnectivityList.ConnectivityRecords { - log.Println(value) if connectivityRecordName == value["connectivity-record-name"] { return value, nil } @@ -173,7 +170,7 @@ func (v *ConnectionClient) Delete(name string) error { // Download the connection information onto a kubeconfig file // The file is named after the name of the connection and will // be placed in the provided parent directory -func (v *ConnectionClient) Download(name string, parentdir string) (string, error) { +func (v *ConnectionClient) Download(name string) (string, error) { conn, err := v.Get(name) if err != nil { @@ -186,11 +183,17 @@ func (v *ConnectionClient) Download(name string, parentdir string) (string, erro return "", pkgerrors.Wrap(err, "Converting from base64") } - target := filepath.Join(parentdir, conn.CloudRegion) - err = ioutil.WriteFile(target, kubeContent, 0644) + //Create temp file to write kubeconfig + //Assume this file will be deleted after usage by the consumer + tempF, err := ioutil.TempFile("", "kube-config-temp-") + if err != nil { + return "", pkgerrors.Wrap(err, "Creating temp file") + } + + _, err = tempF.Write(kubeContent) if err != nil { return "", pkgerrors.Wrap(err, "Writing kubeconfig to file") } - return target, nil + return tempF.Name(), nil } |