Move username and password into the data model

Change-Id: Iab1d4dd3acdc6b08c81a256b146e9652c9b75481
(cherry picked from commit d1bfbd87e1d4a6f673d29391cec5bc4e7da6757e)
diff --git a/xos/models/venb.xproto b/xos/models/venb.xproto
index 413edea..e021cc7 100644
--- a/xos/models/venb.xproto
+++ b/xos/models/venb.xproto
@@ -3,6 +3,8 @@
 
 message VENBService (Service){
     option verbose_name = "Virtual eNodeB Service";
+    required string login_user = 1 [help_text = "vENB VM login user", default = "cfguser", max_length = 32, content_type = "stripped", null = False, db_index = False, blank = False];
+    required string login_password = 2 [help_text = "vENB VM login password", default = "cfguser", max_length = 32, content_type = "stripped", null = False, db_index = False, blank = False];
 }
 
 message VENBServiceInstance (TenantWithContainer){
diff --git a/xos/synchronizer/steps/roles/ts_config/tasks/main.yaml b/xos/synchronizer/steps/roles/ts_config/tasks/main.yaml
index 4374fe9..776e6a5 100644
--- a/xos/synchronizer/steps/roles/ts_config/tasks/main.yaml
+++ b/xos/synchronizer/steps/roles/ts_config/tasks/main.yaml
@@ -13,10 +13,9 @@
 # limitations under the License.
 
 ---
-# Should be in the data model, not hardcoded here...
 - name: Set SSH password
   set_fact:
-    ansible_ssh_pass: cfguser
+    ansible_ssh_pass: "{{ password }}"
 
 - name: check flat_network interface
   shell: ifconfig | grep -B1 "inet addr:{{ ts_ip }}" | awk '$1!="inet" && $1!="--" {print $1}'
diff --git a/xos/synchronizer/steps/sync_venbserviceinstance.py b/xos/synchronizer/steps/sync_venbserviceinstance.py
index 3e4a107..2e30ecd 100644
--- a/xos/synchronizer/steps/sync_venbserviceinstance.py
+++ b/xos/synchronizer/steps/sync_venbserviceinstance.py
@@ -35,11 +35,24 @@
     def __init__(self, *args, **kwargs):
         super(SyncVENBServiceInstance, self).__init__(*args, **kwargs)
 
+    def get_service(self, o):
+        if not o.owner:
+            return None
+
+        service = VENBService.objects.filter(id=o.owner.id)
+
+        if not service:
+            return None
+
+        return service[0]
+
     def get_extra_attributes(self, o):
 
         fields = {}
         fields['flat_ip'] = self.get_ip_address('flat_network', VENBServiceInstance, 'get_venb_flat_ip')
-
+        service = self.get_service(o)
+        fields['login_user'] = service.login_user
+        fields['login_password'] = service.login_password
         return fields
 
     def get_ip_address(self, network_name, service_instance, parameter):
diff --git a/xos/synchronizer/steps/venbserviceinstance_playbook.yaml b/xos/synchronizer/steps/venbserviceinstance_playbook.yaml
index 61f2c90..298d1ad 100644
--- a/xos/synchronizer/steps/venbserviceinstance_playbook.yaml
+++ b/xos/synchronizer/steps/venbserviceinstance_playbook.yaml
@@ -16,7 +16,7 @@
 - hosts: {{ instance_name }}
   gather_facts: False
   connection: ssh
-  user: cfguser
+  user: {{ login_user }}
   vars:
     - ts_ip: {{ flat_ip }}
     - ts_mask: "255.255.255.0"
@@ -24,6 +24,7 @@
     - ts_host_name: "{{ instance_name }}"
     - tas_ip: "103.0.0.100"
     - ntp_ip: "193.0.0.222"
+    - password: "{{ login_password }}"
   roles:
     - ts_config