Merge branch 'master' of github.com:open-cloud/xos
diff --git a/xos/observers/vcpe/steps/sync_vcpetenant.yaml b/xos/observers/vcpe/steps/sync_vcpetenant.yaml
index 3593020..a280b33 100644
--- a/xos/observers/vcpe/steps/sync_vcpetenant.yaml
+++ b/xos/observers/vcpe/steps/sync_vcpetenant.yaml
@@ -57,24 +57,31 @@
    
   - name: dnsmasq config
     template: src=/opt/xos/observers/vcpe/templates/dnsmasq_servers.j2 dest=/etc/dnsmasq.d/servers.conf owner=root group=root
+    notify:
+    - restart vcpe
 
   - name: networking info
     template: src=/opt/xos/observers/vcpe/templates/vlan_sample.j2 dest=/etc/vlan_sample owner=root group=root
 
   - name: firewall info
     template: src=/opt/xos/observers/vcpe/templates/firewall_sample.j2 dest=/etc/firewall_sample owner=root group=root
+    notify:
+    - restart vcpe
 
   - name: Disable resolvconf updates (to avoid overwriting /etc/resolv.conf on host)
     shell: service resolvconf disable-updates
 
   - name: vCPE startup script
     template: src=/opt/xos/observers/vcpe/templates/start-vcpe.sh.j2 dest=/usr/local/sbin/start-vcpe.sh mode=0755
+    notify:
+    - restart vcpe
 
   - name: vCPE upstart
     copy: src=/opt/xos/observers/vcpe/files/vcpe.conf dest=/etc/init/vcpe.conf
 
-  - name: Make sure vCPE service not running (reload configuration)
-    service: name=vcpe state=stopped
-
-  - name: Start vCPE service
+  - name: Make sure vCPE service is running 
     service: name=vcpe state=started
+
+  handlers:
+  - name: restart vcpe
+    shell: service vcpe stop; sleep 1; service vcpe start