Fix: INF-254 o2service cannot recover 62/7562/2
authorZhang Rong(Jon) <rong.zhang@windriver.com>
Sat, 15 Jan 2022 02:31:46 +0000 (10:31 +0800)
committerZhang Rong(Jon) <rong.zhang@windriver.com>
Sat, 15 Jan 2022 03:32:10 +0000 (11:32 +0800)
1. Change boot order of helm chart, make the sequence like postgres->redis->pubsub->watcher->api.
2. Add the parameter checkfirst for sqlalchemy create metadata.

Issue-ID: INF-254
Signed-off-by: Zhang Rong(Jon) <rong.zhang@windriver.com>
Change-Id: Ib72ceb963d5e1f7e4d7b111cff2ef76710bc4c8a

charts/templates/deployment.yaml
o2dms/adapter/orm.py
o2ims/adapter/orm.py

index 357823e..bdfe964 100644 (file)
@@ -50,40 +50,35 @@ spec:
           volumeMounts:\r
             - name: scripts\r
               mountPath: /opt\r
-        - name: o2api\r
-          image: "{{ .Values.o2ims.image.repository }}:{{ .Values.o2ims.image.tag }}"\r
+        - name: redis\r
+          image: redis:alpine\r
           ports:\r
-            - containerPort: 80\r
+            - containerPort: 6379\r
+        - name: o2pubsub\r
+          image: "{{ .Values.o2ims.image.repository }}:{{ .Values.o2ims.image.tag }}"\r
+          command: ["/bin/bash", "/opt/o2pubsub_start.sh"]\r
           env:\r
-            - name: API_HOST\r
-              value: api\r
             - name: DB_HOST\r
               value: postgres\r
             - name: DB_PASSWORD\r
               value: o2ims123\r
-            - name: FLASK_APP\r
-              value: /root/o2/o2app/entrypoints/flask_application.py\r
-            - name: FLASK_DEBUG\r
-              value: {{ .Values.o2ims.logginglevel }}\r
             - name: LOGGING_CONFIG_LEVEL\r
               value: {{ .Values.o2ims.logginglevel }}\r
             - name: OS_AUTH_URL\r
+              value: {{ .Values.ocloud.OS_AUTH_URL }}\r
             - name: OS_PASSWORD\r
+              value: {{ .Values.ocloud.OS_PASSWORD }}\r
             - name: OS_USERNAME\r
+              value: {{ .Values.ocloud.OS_USERNAME }}\r
             - name: PYTHONDONTWRITEBYTECODE\r
               value: "1"\r
-            - name: PYTHONUNBUFFERED\r
-              value: "1"\r
             - name: REDIS_HOST\r
               value: redis\r
-          command: ["/bin/bash", "/opt/o2api_start.sh"]\r
+            - name: K8S_KUBECONFIG\r
+              value: {{ .Values.ocloud.K8S_KUBECONFIG }}\r
           volumeMounts:\r
             - name: scripts\r
               mountPath: /opt\r
-        - name: redis\r
-          image: redis:alpine\r
-          ports:\r
-            - containerPort: 6379\r
         - name: watcher\r
           image: "{{ .Values.o2ims.image.repository }}:{{ .Values.o2ims.image.tag }}"\r
           command: ["/bin/bash", "/opt/o2watcher_start.sh"]\r
@@ -107,28 +102,33 @@ spec:
           volumeMounts:\r
             - name: scripts\r
               mountPath: /opt\r
-        - name: o2pubsub\r
+        - name: o2api\r
           image: "{{ .Values.o2ims.image.repository }}:{{ .Values.o2ims.image.tag }}"\r
-          command: ["/bin/bash", "/opt/o2pubsub_start.sh"]\r
+          ports:\r
+            - containerPort: 80\r
           env:\r
+            - name: API_HOST\r
+              value: api\r
             - name: DB_HOST\r
               value: postgres\r
             - name: DB_PASSWORD\r
               value: o2ims123\r
+            - name: FLASK_APP\r
+              value: /root/o2/o2app/entrypoints/flask_application.py\r
+            - name: FLASK_DEBUG\r
+              value: {{ .Values.o2ims.logginglevel }}\r
             - name: LOGGING_CONFIG_LEVEL\r
               value: {{ .Values.o2ims.logginglevel }}\r
             - name: OS_AUTH_URL\r
-              value: {{ .Values.ocloud.OS_AUTH_URL }}\r
             - name: OS_PASSWORD\r
-              value: {{ .Values.ocloud.OS_PASSWORD }}\r
             - name: OS_USERNAME\r
-              value: {{ .Values.ocloud.OS_USERNAME }}\r
             - name: PYTHONDONTWRITEBYTECODE\r
               value: "1"\r
+            - name: PYTHONUNBUFFERED\r
+              value: "1"\r
             - name: REDIS_HOST\r
               value: redis\r
-            - name: K8S_KUBECONFIG\r
-              value: {{ .Values.ocloud.K8S_KUBECONFIG }}\r
+          command: ["/bin/bash", "/opt/o2api_start.sh"]\r
           volumeMounts:\r
             - name: scripts\r
               mountPath: /opt\r
index 6bf5e55..1fa808b 100644 (file)
@@ -98,4 +98,4 @@ def start_o2dms_mappers(engine=None):
     mapper(dmsModel.NfOCloudVResource, nfOCloudVResource)\r
 \r
     if engine is not None:\r
-        metadata.create_all(engine)\r
+        metadata.create_all(engine, checkfirst=True)\r
index f59a235..0e03727 100644 (file)
@@ -186,4 +186,4 @@ def start_o2ims_mappers(engine=None):
     mapper(confModel.Configuration, configuration)\r
 \r
     if engine is not None:\r
-        metadata.create_all(engine)\r
+        metadata.create_all(engine, checkfirst=True)\r