diff --git a/.travis.yml b/.travis.yml
index 03c1a7e..60015c8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -20,12 +20,6 @@
   - bundle install
 
 env:
-  - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OS_VERSION=mitaka SUITE=compute-cluster
-  - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OS_VERSION=mitaka SUITE=control-cluster
-  - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OS_VERSION=newton SUITE=compute-cluster
-  - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OS_VERSION=newton SUITE=control-cluster
-  - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OS_VERSION=ocata SUITE=compute-cluster
-  - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OS_VERSION=ocata SUITE=control-cluster
   - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=mitaka SUITE=compute-cluster
   - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=mitaka SUITE=control-cluster
   - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=newton SUITE=compute-cluster
diff --git a/nova/controller.sls b/nova/controller.sls
index 2ea0510..1fc2886 100644
--- a/nova/controller.sls
+++ b/nova/controller.sls
@@ -2,6 +2,16 @@
 
 {%- if controller.get('enabled') %}
 
+include:
+{#- Always include apache when horizon/apache formulas doesn't intersect #}
+{%- if pillar.get('apache', {}).get('server', {}).get('site', {}).nova_placement is defined %}
+ - apache
+{%- endif %}
+ - nova.db.offline_sync
+ # TODO(vsaienko) we need to run online dbsync only once after upgrade
+ # Move to appropriate upgrade phase
+ - nova.db.online_sync
+
 {%- if grains.os_family == 'Debian' %}
 debconf-set-prerequisite:
     pkg.installed:
@@ -159,6 +169,9 @@
   - template: jinja
   - require:
     - pkg: nova_controller_packages
+  - require_in:
+    - sls: nova.db.offline_sync
+    - sls: nova.db.online_sync
 
 /etc/nova/api-paste.ini:
   file.managed:
@@ -293,41 +306,6 @@
 
 {%- if controller.version not in ["juno", "kilo", "liberty", "mitaka", "newton"] %}
 
-{#- the following api_db sync --version 20 happens only if the current api_db version is < 20 #}
-
-nova_controller_api_db_sync_version_20:
-  novang.api_db_version_present:
-  - version: "20"
-  {%- if grains.get('noservices') %}
-  - onlyif: /bin/false
-  {%- endif %}
-  - require:
-    - file: /etc/nova/nova.conf
-
-{#- the following db sync --version 334 happens only if the current db version is < 334 #}
-
-nova_controller_db_sync_version_334:
-  novang.db_version_present:
-  - version: "334"
-  {%- if grains.get('noservices') %}
-  - onlyif: /bin/false
-  {%- endif %}
-  - require:
-    - file: /etc/nova/nova.conf
-
-{#- the following db online_data_migrations executes only if the current db version == 334 && api_db version == 20 #}
-
-online_data_migrations_for_apidb20_and_db334:
-  novang.online_data_migrations_present:
-  - api_db_version: "20"
-  - db_version: "334"
-  {%- if grains.get('noservices') %}
-  - onlyif: /bin/false
-  {%- endif %}
-  - require:
-    - novang: nova_controller_api_db_sync_version_20
-    - novang: nova_controller_db_sync_version_334
-
 nova_controller_map_cell0:
   cmd.run:
   - name: nova-manage cell_v2 map_cell0
@@ -335,7 +313,7 @@
   - onlyif: /bin/false
   {%- endif %}
   - require:
-    - cmd: nova_controller_syncdb
+    - sls: nova.db.offline_sync
 
 nova_cell1_create:
   cmd.run:
@@ -345,7 +323,7 @@
   {%- endif %}
   - unless: 'nova-manage cell_v2 list_cells | grep cell1'
   - require:
-    - cmd: nova_controller_syncdb
+    - sls: nova.db.offline_sync
 
 {%- if controller.get('update_cells') %}
 
@@ -417,9 +395,6 @@
 
 {%- else %}
 
-include:
- - apache
-
 nova_cleanup_configs:
   file.absent:
     - names:
@@ -450,7 +425,6 @@
   - require:
     - cmd: nova_controller_map_cell0
     - cmd: nova_cell1_create
-    - cmd: nova_controller_syncdb
 
 nova_controller_map_instances:
   novang.map_instances:
@@ -464,41 +438,6 @@
 
 {%- endif %}
 
-{%- if controller.version not in ["juno", "kilo", "liberty"] %}
-nova_controller_sync_apidb:
-  cmd.run:
-  - name: nova-manage api_db sync
-  {%- if grains.get('noservices') %}
-  - onlyif: /bin/false
-  {%- endif %}
-  - require:
-    - file: /etc/nova/nova.conf
-
-{%- endif %}
-
-nova_controller_syncdb:
-  cmd.run:
-  - names:
-    - nova-manage db sync
-  {%- if grains.get('noservices') %}
-  - onlyif: /bin/false
-  {%- endif %}
-  - require:
-    - file: /etc/nova/nova.conf
-
-{%- if controller.version not in ["juno", "kilo", "liberty"] %}
-
-nova_controller_online_data_migrations:
-  cmd.run:
-  - name: nova-manage db online_data_migrations
-  {%- if grains.get('noservices') %}
-  - onlyif: /bin/false
-  {%- endif %}
-  - require:
-    - cmd: nova_controller_syncdb
-
-{%- endif %}
-
 {%- if controller.version not in ["juno", "kilo", "liberty", "mitaka", "newton"] %}
 
 nova_apache_restart:
@@ -509,7 +448,7 @@
   - onlyif: /bin/false
   {%- endif %}
   - require:
-    - cmd: nova_controller_syncdb
+    - sls: nova.db.offline_sync
   - watch:
     - file: /etc/nova/nova.conf
     - file: /etc/nova/api-paste.ini
@@ -528,7 +467,9 @@
   - onlyif: /bin/false
   {%- endif %}
   - require:
-    - cmd: nova_controller_syncdb
+    - sls: nova.db.offline_sync
+  - require_in:
+    - sls: nova.db.online_sync
   - watch:
     - file: /etc/nova/nova.conf
     - file: /etc/nova/api-paste.ini
diff --git a/nova/db/offline_sync.sls b/nova/db/offline_sync.sls
new file mode 100644
index 0000000..71c858c
--- /dev/null
+++ b/nova/db/offline_sync.sls
@@ -0,0 +1,18 @@
+{% from "nova/map.jinja" import controller with context %}
+
+nova_controller_syncdb:
+  cmd.run:
+  - name: nova-manage db sync
+  {%- if grains.get('noservices') or controller.get('role', 'primary') == 'secondary' %}
+  - onlyif: /bin/false
+  {%- endif %}
+
+{%- if controller.version not in ["juno", "kilo", "liberty"] %}
+nova_controller_sync_apidb:
+  cmd.run:
+  - name: nova-manage api_db sync
+  {%- if grains.get('noservices') or controller.get('role', 'primary') == 'secondary' %}
+  - onlyif: /bin/false
+  {%- endif %}
+
+{%- endif %}
diff --git a/nova/db/online_sync.sls b/nova/db/online_sync.sls
new file mode 100644
index 0000000..7c13c52
--- /dev/null
+++ b/nova/db/online_sync.sls
@@ -0,0 +1,11 @@
+{% from "nova/map.jinja" import controller with context %}
+
+{%- set should_run = '/bin/false' %}
+{%- if not grains.get('noservices') and controller.version not in ["juno", "kilo", "liberty"] and controller.get('role', 'primary') == 'primary' %}
+{%- set should_run = '/bin/true' %}
+{%- endif %}
+
+nova_controller_online_data_migrations:
+  cmd.run:
+  - name: nova-manage db online_data_migrations
+  - onlyif: {{ should_run }}
