Correctly handle Octavia-api service process during upgrade
Change-Id: Ia316338a2aae53b30efa7371ee47aad667b3aa3d
Related-Prod: PROD-34353
diff --git a/octavia/upgrade/service_running.sls b/octavia/upgrade/service_running.sls
index 1a6e2b7..37d807b 100644
--- a/octavia/upgrade/service_running.sls
+++ b/octavia/upgrade/service_running.sls
@@ -7,7 +7,12 @@
{%- set oservices = [] %}
{%- if api.get('enabled', false) %}
- {%- do oservices.extend(api.services) %}
+ {# Since MU 2019.2.6 Octavia-Api is under Apache #}
+ {%- if pillar.get('apache', {}).get('server', {}).get('site', {}).octavia_api is defined %}
+ {%- do oservices.append('apache2') %}
+ {%- else %}
+ {%- do oservices.extend(api.services) %}
+ {%- endif %}
{%- endif %}
{%- if manager.get('enabled', false) %}
{%- do oservices.extend(manager.services) %}
diff --git a/octavia/upgrade/service_stopped.sls b/octavia/upgrade/service_stopped.sls
index 1285647..a979f96 100644
--- a/octavia/upgrade/service_stopped.sls
+++ b/octavia/upgrade/service_stopped.sls
@@ -5,9 +5,17 @@
- text: "Running octavia.upgrade.service_stopped"
{%- set oservices = [] %}
+{%- set depcrecated_services = [] %}
{%- if api.get('enabled', false) %}
- {%- do oservices.extend(api.services) %}
+ {# Since MU 2019.2.6 Octavia-Api is under Apache, but need to stop old service anyway #}
+ {%- if pillar.get('apache', {}).get('server', {}).get('site', {}).octavia_api is defined %}
+ {%- do oservices.append('apache2') %}
+ {%- do oservices.extend(api.services) %}
+ {%- do depcrecated_services.extend(api.services) %}
+ {%- else %}
+ {%- do oservices.extend(api.services) %}
+ {%- endif %}
{%- endif %}
{%- if manager.get('enabled', false) %}
{%- do oservices.extend(manager.services) %}
@@ -16,6 +24,10 @@
{%- for oservice in oservices|unique %}
octavia_service_{{ oservice }}_stopped:
service.dead:
+ {%- if oservice in depcrecated_services %}
+ - enable: False
+ {%- else %}
- enable: True
+ {%- endif %}
- name: {{ oservice }}
{%- endfor %}