CORD-1729 Use corddev VM as build machine

Change-Id: I458c380729ee668f5a371bef9281c3e89c7122b3
diff --git a/prep-buildnode-playbook.yml b/prep-buildnode-playbook.yml
index 57e2cc9..32f3bd6 100644
--- a/prep-buildnode-playbook.yml
+++ b/prep-buildnode-playbook.yml
@@ -27,6 +27,11 @@
         - "profile_manifests/{{ cord_profile }}.yml"
         - profile_manifests/local_vars.yml
 
+- name: Install ansible on build node
+  hosts: build
+  roles:
+    - { role: ansible-install, become: yes }
+
 - name: Install docker on buildnode, configure
   hosts: build
   roles:
diff --git a/roles/ansible-install/defaults/main.yml b/roles/ansible-install/defaults/main.yml
new file mode 100644
index 0000000..64ff4ac
--- /dev/null
+++ b/roles/ansible-install/defaults/main.yml
@@ -0,0 +1,25 @@
+
+# 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.
+
+
+---
+# ansible-install/defaults/main.yml
+
+use_maas: false
+
+ssh_pki_dir: "{{ playbook_dir }}/ssh_pki"
+ssh_keytype: rsa
+pod_sshkey_name: "headnode"
+
diff --git a/roles/ansible-install/files/ansible.cfg b/roles/ansible-install/files/ansible.cfg
new file mode 100644
index 0000000..7fa4a86
--- /dev/null
+++ b/roles/ansible-install/files/ansible.cfg
@@ -0,0 +1,4 @@
+[defaults]
+host_key_checking = false
+forks=20
+
diff --git a/roles/ansible-install/tasks/main.yml b/roles/ansible-install/tasks/main.yml
new file mode 100644
index 0000000..fc66b18
--- /dev/null
+++ b/roles/ansible-install/tasks/main.yml
@@ -0,0 +1,47 @@
+
+# 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.
+
+
+---
+# file: ansible-install/tasks/main.yml
+
+- name:  Install prerequisites for using PPA repos
+  apt:
+    name: "{{ item }}"
+    update_cache: yes
+    cache_valid_time: 3600
+  with_items:
+    - python-pycurl
+    - software-properties-common
+    - python-netaddr
+
+- name: Add Ansible PPA
+  apt_repository:
+    repo={{ item }}
+  with_items:
+    - "{{ ansible_apt_repo | default('ppa:ansible/ansible') }}"
+  register: result
+  until: result | success
+  retries: 3
+  delay: 10
+
+- name: Make sure Ansible is newest version
+  apt:
+    name: "ansible"
+    state: latest
+    update_cache: yes
+    cache_valid_time: 3600
+  tags:
+    - skip_ansible_lint # ansible-lint complains about latest, need this as distro provided 1.5.x version may be used if already installed.
\ No newline at end of file
diff --git a/roles/docker-install/templates/default_docker.j2 b/roles/docker-install/templates/default_docker.j2
index dde0b36..5c4845f 100644
--- a/roles/docker-install/templates/default_docker.j2
+++ b/roles/docker-install/templates/default_docker.j2
@@ -1,4 +1,3 @@
-
 {#
 Copyright 2017-present Open Networking Foundation