aboutsummaryrefslogtreecommitdiffstats
path: root/docker-compose
diff options
context:
space:
mode:
authorhalil.cakal <halil.cakal@est.tech>2024-06-17 09:24:59 +0100
committerhalil.cakal <halil.cakal@est.tech>2024-07-01 15:40:54 +0100
commit3a9613f75519176efb2eb50bde88f268535e0ca9 (patch)
tree96a3faf44c9ea0b91d99848988b67d93ee014fa0 /docker-compose
parentb8c88b9c157fac8b165cf955483649f76e19fd35 (diff)
Setup automated tests with two replicas of cps-and-ncmp
- this change for two test suits: CSIT and K6 - increase cps-and-ncmp replicas to 2 - introduce nginx as load-balancer - set proxies inside nginx for the cps-and-ncmp URI paths - upgrade hazelcast-spring to 5.3.7 Issue-ID: CPS-2038 Change-Id: If1b6c1e1218af16b24cc061507ea9b25d277d143 Signed-off-by: halil.cakal <halil.cakal@est.tech>
Diffstat (limited to 'docker-compose')
-rw-r--r--docker-compose/docker-compose.yml18
-rw-r--r--docker-compose/nginx.conf52
-rw-r--r--docker-compose/proxy_params4
3 files changed, 69 insertions, 5 deletions
diff --git a/docker-compose/docker-compose.yml b/docker-compose/docker-compose.yml
index 5620c4c17e..f75915ae04 100644
--- a/docker-compose/docker-compose.yml
+++ b/docker-compose/docker-compose.yml
@@ -43,11 +43,7 @@ services:
memory: 3G
cps-and-ncmp:
- container_name: cps-and-ncmp
image: ${DOCKER_REPO:-nexus3.onap.org:10003}/onap/cps-and-ncmp:${CPS_VERSION:-latest}
- ports:
- - ${CPS_CORE_PORT:-8883}:8080
- # - ${CPS_CORE_DEBUG_PORT:-5005}:5005
environment:
CPS_USERNAME: ${CPS_CORE_USERNAME:-cpsuser}
CPS_PASSWORD: ${CPS_CORE_PASSWORD:-cpsr0cks!}
@@ -58,11 +54,11 @@ services:
DMI_PASSWORD: ${DMI_PASSWORD:-cpsr0cks!}
KAFKA_BOOTSTRAP_SERVER: kafka:29092
notification.enabled: 'true'
- # JAVA_TOOL_OPTIONS: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005
restart: unless-stopped
depends_on:
- dbpostgresql
deploy:
+ replicas: 2
resources:
reservations:
cpus: '2'
@@ -71,6 +67,18 @@ services:
cpus: '3'
memory: 3G
+ nginx:
+ container_name: nginx-loadbalancer
+ image: nginx:latest
+ ports:
+ - ${CPS_CORE_PORT:-8883}:80
+ depends_on:
+ - cps-and-ncmp
+ volumes:
+ - ./nginx.conf:/etc/nginx/nginx.conf
+ - ./proxy_params:/etc/nginx/proxy_params
+ - ../csit/nginx-log:/var/log/nginx
+
### if kafka is not required comment out zookeeper and kafka ###
zookeeper:
image: confluentinc/cp-zookeeper:6.2.1
diff --git a/docker-compose/nginx.conf b/docker-compose/nginx.conf
new file mode 100644
index 0000000000..17fad1b876
--- /dev/null
+++ b/docker-compose/nginx.conf
@@ -0,0 +1,52 @@
+# ============LICENSE_START===============================================
+# Copyright (C) 2024 Nordix Foundation. All rights reserved.
+# ========================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=================================================
+
+events { }
+
+http {
+
+ # Add more server entries here for scaling or load balancing
+ upstream cps-and-ncmp {
+ server cps-and-ncmp:8080;
+ }
+
+ server {
+ listen 80;
+
+ # Root location proxying
+ location / {
+ proxy_pass http://cps-and-ncmp;
+ include /etc/nginx/proxy_params; # Include common proxy parameters
+ }
+
+ location /swagger-ui/ { # Swagger UI location
+ proxy_pass http://cps-and-ncmp/swagger-ui/;
+ }
+
+ location /v3/api-docs/ { # API docs location
+ proxy_pass http://cps-and-ncmp/v3/api-docs/;
+ }
+
+ location /actuator/health { # Actuator health endpoint
+ proxy_pass http://cps-and-ncmp/actuator/health;
+ }
+
+ location /actuator/health/readiness { # Actuator readiness endpoint
+ proxy_pass http://cps-and-ncmp/actuator/health/readiness;
+ }
+
+ }
+}
diff --git a/docker-compose/proxy_params b/docker-compose/proxy_params
new file mode 100644
index 0000000000..ab092a98f3
--- /dev/null
+++ b/docker-compose/proxy_params
@@ -0,0 +1,4 @@
+proxy_set_header Host $host;
+proxy_set_header X-Real-IP $remote_addr;
+proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+proxy_set_header X-Forwarded-Proto $scheme; \ No newline at end of file