[CORD-1866]
Support for password SSH auth

Change-Id: I8dced53e8685d8e21a18e807cb6e23bf2814b169
(cherry picked from commit 2b26e562705609f3e03d886414a0e864d76ed91e)
diff --git a/ansible/config-ssh-key.yml b/ansible/config-ssh-key.yml
new file mode 100644
index 0000000..0e31b8c
--- /dev/null
+++ b/ansible/config-ssh-key.yml
@@ -0,0 +1,43 @@
+---
+# config-ssh-key.yml - creates a ssh key on config node, has head node trust it
+
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- hosts: config
+  vars:
+    - ssh_keysize: 4096
+    - ssh_keytype: rsa
+
+  tasks:
+    - name: Create config ssh key
+      user:
+        name: "{{ ansible_user_id }}"
+        generate_ssh_key: yes
+        ssh_key_comment: cord-config-key
+        ssh_key_type: "{{ ssh_keytype }}"
+        ssh_key_bits: "{{ ssh_keysize }}"
+
+    - name: Retrieve ssh pubkey using slurp
+      slurp:
+        src: "{{ ansible_env.HOME }}/.ssh/id_{{ ssh_keytype }}.pub"
+      register: config_pubkey
+
+- hosts: head
+  tasks:
+    - name: Add config ssh key to head node
+      authorized_key:
+        user: "{{ ansible_user_id }}"
+        key: "{{ hostvars[groups['config'][0]].config_pubkey.content | b64decode }}"
+
diff --git a/ansible/roles/genconfig/templates/config.mk.j2 b/ansible/roles/genconfig/templates/config.mk.j2
index ef2351b..1a6e8a8 100644
--- a/ansible/roles/genconfig/templates/config.mk.j2
+++ b/ansible/roles/genconfig/templates/config.mk.j2
@@ -1,4 +1,3 @@
-
 {#
 Copyright 2017-present Open Networking Foundation
 
@@ -14,8 +13,6 @@
 See the License for the specific language governing permissions and
 limitations under the License.
 #}
-
-
 # config.mk - generated from ansible/roles/genconfig/templates/config.mk.j2
 # ** DO NOT EDIT THIS FILE MANUALLY! **
 # Edit the Pod Config (or Scenario) and rerun `make config` to regenerate it
@@ -55,6 +52,9 @@
 {% if vagrant_up_prereqs is defined %}
 VAGRANT_UP_PREREQS      = $(M)/{{ vagrant_up_prereqs | join(" $(M)/") }}
 {% endif %}
+{% if copy_cord_prereqs is defined %}
+COPY_CORD_PREREQS       = $(M)/{{ copy_cord_prereqs | join(" $(M)/") }}
+{% endif %}
 {% if cord_config_prereqs is defined %}
 CORD_CONFIG_PREREQS     = $(M)/{{ cord_config_prereqs | join(" $(M)/") }}
 {% endif %}