Fix bug 557 about ssh keys
[osm/osmclient.git] / osmclient / sol005 / ns.py
index c60baa0..58be4e4 100644 (file)
@@ -124,16 +124,10 @@ class Ns(object):
         #ns['userdata']['key2']='value2'
 
         if ssh_keys is not None:
-            # ssh_keys is comma separate list
-            # ssh_keys_format = []
-            # for key in ssh_keys.split(','):
-            #     ssh_keys_format.append({'key-pair-ref': key})
-            #
-            # ns['ssh-authorized-key'] = ssh_keys_format
-            ns['ssh-authorized-key'] = []
+            ns['ssh_keys'] = []
             for pubkeyfile in ssh_keys.split(','):
                 with open(pubkeyfile, 'r') as f:
-                    ns['ssh-authorized-key'].append(f.read())
+                    ns['ssh_keys'].append(f.read())
         if config:
             ns_config = yaml.load(config)
             if "vim-network-name" in ns_config:
@@ -159,6 +153,11 @@ class Ns(object):
             self._apiResource = '/ns_instances_content'
             self._apiBase = '{}{}{}'.format(self._apiName,
                                             self._apiVersion, self._apiResource)
+            headers = self._client._headers
+            headers['Content-Type'] = 'application/yaml'
+            http_header = ['{}: {}'.format(key,val)
+                          for (key,val) in list(headers.items())]
+            self._http.set_http_header(http_header)
             http_code, resp = self._http.post_cmd(endpoint=self._apiBase,
                                        postfields_dict=ns)
             #print 'HTTP CODE: {}'.format(http_code)