diff --git a/src/analytics/frontend/requirements.in b/src/analytics/frontend/requirements.in
index 6363d8a97cf22b9ef0531647df4f841140c27f9c..5e8904d71042e5cd5cf192888bb63a41c807f3c1 100644
--- a/src/analytics/frontend/requirements.in
+++ b/src/analytics/frontend/requirements.in
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-apscheduler==3.10.1
+apscheduler>=3.10.4
 confluent-kafka==2.3.*
 psycopg2-binary==2.9.*
 SQLAlchemy==1.4.*
diff --git a/src/automation/requirements.in b/src/automation/requirements.in
index 0f291eca8b84f4965c6832b9c4b691380dfcb75e..5e8904d71042e5cd5cf192888bb63a41c807f3c1 100644
--- a/src/automation/requirements.in
+++ b/src/automation/requirements.in
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-apscheduler==3.10.4
+apscheduler>=3.10.4
 confluent-kafka==2.3.*
 psycopg2-binary==2.9.*
 SQLAlchemy==1.4.*
diff --git a/src/kpi_value_api/requirements.in b/src/kpi_value_api/requirements.in
index 6addbfdfd961ee238b2ca44e78de87f735379673..ab6bc5a0a0279e08d4a10bb609000071d0823b00 100644
--- a/src/kpi_value_api/requirements.in
+++ b/src/kpi_value_api/requirements.in
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+apscheduler>=3.10.4
 confluent-kafka==2.3.*
-requests==2.27.*
 prometheus-api-client==0.5.3
-apscheduler==3.10.1
+requests==2.27.*
diff --git a/src/nbi/.gitlab-ci.yml b/src/nbi/.gitlab-ci.yml
index f8aa68726828c90ebcb04979a374b47acdf6075f..141d87c26af3220457c9d3fea42b50192bae21f0 100644
--- a/src/nbi/.gitlab-ci.yml
+++ b/src/nbi/.gitlab-ci.yml
@@ -61,9 +61,25 @@ unit_test nbi:
       else
         echo "$IMAGE_NAME image is not in the system";
       fi
+    - if docker container ls | grep kafka; then docker rm -f kafka; else echo "Kafka container is not in the system"; fi
+    - docker container prune -f
   script:
     - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG"
     - docker pull "$CI_REGISTRY_IMAGE/mock_tfs_nbi_dependencies:test"
+    - docker pull "bitnami/kafka:latest"
+    - >
+      docker run --name kafka -d --network=teraflowbridge -p 9092:9092 -p 9093:9093
+      --env KAFKA_CFG_NODE_ID=1
+      --env KAFKA_CFG_PROCESS_ROLES=controller,broker
+      --env KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
+      --env KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,CONTROLLER:PLAINTEXT
+      --env KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
+      --env KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@kafka:9093
+      bitnami/kafka:latest
+    - sleep 20 # Wait for Kafka to start
+    - docker inspect kafka --format "{{.NetworkSettings.Networks}}"
+    - KAFKA_IP=$(docker inspect kafka --format "{{.NetworkSettings.Networks.teraflowbridge.IPAddress}}")
+    - echo $KAFKA_IP
     - >
       docker run --name mock_tfs_nbi_dependencies -d -p 10000:10000
       --network=teraflowbridge
@@ -77,9 +93,11 @@ unit_test nbi:
       --env LOG_LEVEL=DEBUG
       --env FLASK_ENV=development
       --env IETF_NETWORK_RENDERER=LIBYANG
+      --env "KFK_SERVER_ADDRESS=${KAFKA_IP}:9092"
       $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG
     - sleep 30
     - docker ps -a
+    - docker logs kafka
     - docker logs mock_tfs_nbi_dependencies
     - docker logs $IMAGE_NAME
     - docker exec -i $IMAGE_NAME bash -c "coverage run --append -m pytest --log-level=DEBUG -o log_cli=true --verbose $IMAGE_NAME/tests/test_core.py --junitxml=/opt/results/${IMAGE_NAME}_report_core.xml"
@@ -92,7 +110,10 @@ unit_test nbi:
   coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/'
   after_script:
     - docker logs mock_tfs_nbi_dependencies
+    - docker logs $IMAGE_NAME
+    - docker logs kafka
     - docker rm -f mock_tfs_nbi_dependencies $IMAGE_NAME
+    - docker rm -f kafka
     - docker network rm teraflowbridge
   rules:
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)'