From d410b42e212c0ab6d22124d80d9f17cb21119424 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 09:59:00 +0000 Subject: [PATCH 1/8] Test Tools - Mock OSM NBI: - Removed unneeded dependencies - Added README.md --- src/tests/tools/mock_osm_nbi/Dockerfile | 10 +--------- src/tests/tools/mock_osm_nbi/README.md | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 9 deletions(-) create mode 100644 src/tests/tools/mock_osm_nbi/README.md diff --git a/src/tests/tools/mock_osm_nbi/Dockerfile b/src/tests/tools/mock_osm_nbi/Dockerfile index 9efd362d4..acc6dba59 100644 --- a/src/tests/tools/mock_osm_nbi/Dockerfile +++ b/src/tests/tools/mock_osm_nbi/Dockerfile @@ -14,11 +14,6 @@ FROM python:3.10.16-slim -# Install dependencies -RUN apt-get --yes --quiet --quiet update && \ - apt-get --yes --quiet --quiet install wget g++ git build-essential cmake libpcre2-dev python3-dev python3-cffi && \ - rm -rf /var/lib/apt/lists/* - # Set Python to show logs as they occur ENV PYTHONUNBUFFERED=0 @@ -30,16 +25,13 @@ RUN python3 -m pip install --upgrade pip-tools # Create component sub-folders, and copy content RUN mkdir -p /var/teraflow/mock_osm_nbi WORKDIR /var/teraflow/mock_osm_nbi -COPY src/tests/tools/mock_osm_nbi/requirements.in requirements.in +COPY src/tests/tools/mock_osm_nbi/. . # Get specific Python packages RUN pip-compile --quiet --output-file=requirements.txt requirements.in RUN python3 -m pip install -r requirements.txt -RUN python3 -m pip list - WORKDIR /var/teraflow -COPY src/tests/tools/mock_osm_nbi/. mock_osm_nbi/ # Start the service ENTRYPOINT ["python", "-m", "mock_osm_nbi"] diff --git a/src/tests/tools/mock_osm_nbi/README.md b/src/tests/tools/mock_osm_nbi/README.md new file mode 100644 index 000000000..a4f8f3390 --- /dev/null +++ b/src/tests/tools/mock_osm_nbi/README.md @@ -0,0 +1,17 @@ +# Mock OSM NBI + +Basic OSM NBI to test OSM Client component. + +## Relevant commands: + +- Build the component for testing +```bash +docker buildx build -t "mock_osm_nbi:test" -f ./src/tests/tools/mock_osm_nbi/Dockerfile . +``` + +- Run the component +```bash +docker network create -d bridge teraflowbridge +docker run --name mock_osm_nbi -d --network=teraflowbridge --env LOG_LEVEL=DEBUG --env FLASK_ENV=development mock_osm_nbi:test +docker logs mock_osm_nbi +``` -- GitLab From 47342a8b217541e114e106450579a3e20134c802 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:12:02 +0000 Subject: [PATCH 2/8] OSM Client: - Removed unneeded dependencies - Arranged commands in CI/CD pipeline - Minor improvements --- src/osm_client/.gitlab-ci.yml | 17 +++++++++-------- src/osm_client/Dockerfile | 8 +++++--- .../service/OsmClientServiceServicerImpl.py | 5 ++++- src/osm_client/service/__main__.py | 2 +- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/osm_client/.gitlab-ci.yml b/src/osm_client/.gitlab-ci.yml index 0ebb12f52..69e66d75e 100644 --- a/src/osm_client/.gitlab-ci.yml +++ b/src/osm_client/.gitlab-ci.yml @@ -74,24 +74,23 @@ unit_test osm_client: - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - docker images --filter="dangling=true" --quiet | xargs -r docker rmi - > - docker run --name $IMAGE_NAME -d -v "$PWD/src/$IMAGE_NAME/tests:/opt/results" + docker run --name $MOCK_IMAGE_NAME -d --network=teraflowbridge --env LOG_LEVEL=DEBUG --env FLASK_ENV=development - --env OSM_ADDRESS=mock_osm_nbi - $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG + $CI_REGISTRY_IMAGE/$MOCK_IMAGE_NAME:$IMAGE_TAG - > - docker run --name $MOCK_IMAGE_NAME -d + docker run --name $IMAGE_NAME -d -v "$PWD/src/$IMAGE_NAME/tests:/opt/results" --network=teraflowbridge --env LOG_LEVEL=DEBUG --env FLASK_ENV=development - $CI_REGISTRY_IMAGE/$MOCK_IMAGE_NAME:$IMAGE_TAG - - while ! docker logs $IMAGE_NAME 2>&1 | grep -q 'Configured Rules'; do sleep 1; done - - sleep 5 # Give extra time to container to get ready + --env OSM_ADDRESS=mock_osm_nbi + $CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG + - while ! docker logs $IMAGE_NAME 2>&1 | grep -q 'Running...'; do sleep 1; done - docker ps -a - docker logs $IMAGE_NAME - docker logs $MOCK_IMAGE_NAME - - docker exec -i $IMAGE_NAME bash -c "coverage run --append -m pytest --log-level=INFO --verbose $IMAGE_NAME/tests/test_unitary.py --junitxml=/opt/results/${IMAGE_NAME}_report_unitary.xml" + - docker exec -i $IMAGE_NAME bash -c "coverage run -m pytest --log-level=INFO --verbose $IMAGE_NAME/tests/test_unitary.py --junitxml=/opt/results/${IMAGE_NAME}_report_unitary.xml" - docker exec -i $IMAGE_NAME bash -c "coverage report --include='${IMAGE_NAME}/*' --show-missing" coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/' after_script: @@ -109,6 +108,8 @@ unit_test osm_client: - src/$IMAGE_NAME/Dockerfile - src/$IMAGE_NAME/tests/*.py - manifests/${IMAGE_NAME}service.yaml + - src/tests/tools/$MOCK_IMAGE_NAME/**/*.{py,in,yml} + - src/tests/tools/$MOCK_IMAGE_NAME/Dockerfile - .gitlab-ci.yml artifacts: when: always diff --git a/src/osm_client/Dockerfile b/src/osm_client/Dockerfile index 579972127..ee3fe12fb 100644 --- a/src/osm_client/Dockerfile +++ b/src/osm_client/Dockerfile @@ -16,9 +16,9 @@ FROM python:3.10.16-slim # Install dependencies -RUN apt-get --yes --quiet --quiet update -RUN apt-get --yes --quiet --quiet install wget g++ git build-essential cmake make git \ - libpcre2-dev python3-dev python3-pip python3-cffi curl software-properties-common libmagic1 libmagic-dev && \ +# Unneeded: build-essential cmake libpcre2-dev python3-dev python3-pip python3-cffi curl software-properties-common libmagic-dev +RUN apt-get --yes --quiet --quiet update && \ + apt-get --yes --quiet --quiet install wget g++ git make libmagic1 && \ rm -rf /var/lib/apt/lists/* # Set Python to show logs as they occur @@ -62,9 +62,11 @@ WORKDIR /var/teraflow/osm_client ENV OSM_CLIENT_VERSION=v16.0 RUN python3 -m pip install -r "https://osm.etsi.org/gitweb/?p=osm/IM.git;a=blob_plain;f=requirements.txt;hb=${OSM_CLIENT_VERSION}" RUN python3 -m pip install "git+https://osm.etsi.org/gerrit/osm/IM.git@${OSM_CLIENT_VERSION}#egg=osm-im" --upgrade + #Clone OsmCLient code RUN git clone https://osm.etsi.org/gerrit/osm/osmclient RUN git -C osmclient checkout ${OSM_CLIENT_VERSION} + # Install osmClient using pip RUN python3 -m pip install -r osmclient/requirements.txt RUN python3 -m pip install ./osmclient diff --git a/src/osm_client/service/OsmClientServiceServicerImpl.py b/src/osm_client/service/OsmClientServiceServicerImpl.py index f6b33052c..d30b581d1 100644 --- a/src/osm_client/service/OsmClientServiceServicerImpl.py +++ b/src/osm_client/service/OsmClientServiceServicerImpl.py @@ -16,7 +16,10 @@ import grpc, logging from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method from common.tools.grpc.Tools import grpc_message_to_json_string from common.proto.context_pb2 import (Empty) -from common.proto.osm_client_pb2 import CreateRequest, CreateResponse, NsiListResponse, GetRequest, GetResponse, DeleteRequest, DeleteResponse +from common.proto.osm_client_pb2 import ( + CreateRequest, CreateResponse, NsiListResponse, GetRequest, GetResponse, + DeleteRequest, DeleteResponse +) from common.proto.osm_client_pb2_grpc import OsmServiceServicer from osmclient import client from osmclient.common.exceptions import ClientException diff --git a/src/osm_client/service/__main__.py b/src/osm_client/service/__main__.py index 4285b945a..8eca38a8a 100644 --- a/src/osm_client/service/__main__.py +++ b/src/osm_client/service/__main__.py @@ -53,7 +53,7 @@ def main(): grpc_service = OsmClientService() grpc_service.start() - LOGGER.debug('Configured Rules:') + LOGGER.info('Running...') # Wait for Ctrl+C or termination signal while not terminate.wait(timeout=1.0): pass -- GitLab From 31fb847da94600d2d885fbc311bb2c63dac9d59e Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:33:17 +0000 Subject: [PATCH 3/8] OSM Client && Mock OSM NBI: - Fixed CI/CD --- src/osm_client/.gitlab-ci.yml | 63 +++++++++++---------- src/tests/.gitlab-ci.yml | 1 + src/tests/tools/mock_osm_nbi/.gitlab-ci.yml | 38 +++++++++++++ 3 files changed, 73 insertions(+), 29 deletions(-) create mode 100644 src/tests/tools/mock_osm_nbi/.gitlab-ci.yml diff --git a/src/osm_client/.gitlab-ci.yml b/src/osm_client/.gitlab-ci.yml index 69e66d75e..d35793259 100644 --- a/src/osm_client/.gitlab-ci.yml +++ b/src/osm_client/.gitlab-ci.yml @@ -20,17 +20,14 @@ build osm_client: IMAGE_TAG: 'latest' # tag of the container image (production, development, etc) stage: build before_script: + - docker image prune --force - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY script: - docker buildx build -t "$IMAGE_NAME:$IMAGE_TAG" -f ./src/$IMAGE_NAME/Dockerfile . - docker tag "$IMAGE_NAME:$IMAGE_TAG" "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - docker push "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - # Build mock images - - docker buildx build -t "$MOCK_IMAGE_NAME:$IMAGE_TAG" -f ./src/tests/tools/$MOCK_IMAGE_NAME/Dockerfile . - - docker tag "$MOCK_IMAGE_NAME:$IMAGE_TAG" "$CI_REGISTRY_IMAGE/$MOCK_IMAGE_NAME:$IMAGE_TAG" - - docker push "$CI_REGISTRY_IMAGE/$MOCK_IMAGE_NAME:$IMAGE_TAG" after_script: - - docker images --filter="dangling=true" --quiet | xargs -r docker rmi + - docker image prune --force rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' @@ -41,8 +38,9 @@ build osm_client: - src/$IMAGE_NAME/Dockerfile - src/$IMAGE_NAME/tests/*.py - manifests/${IMAGE_NAME}service.yaml - - src/tests/tools/$MOCK_IMAGE_NAME/**/*.{py,in,yml} - - src/tests/tools/$MOCK_IMAGE_NAME/Dockerfile + - src/tests/tools/mock_osm_nbi/**/*.{py,in,yml,yaml,yang,sh,json} + - src/tests/tools/mock_osm_nbi/Dockerfile + - src/tests/.gitlab-ci.yml - .gitlab-ci.yml # Apply unit test to the component @@ -54,31 +52,29 @@ unit_test osm_client: stage: unit_test needs: - build osm_client + - build mock_osm_nbi before_script: + # Do Docker cleanup + - docker ps --all --quiet | xargs --no-run-if-empty docker stop + - docker container prune --force + - docker ps --all --quiet | xargs --no-run-if-empty docker rm --force + - docker image prune --force + - docker network prune --force + - docker volume prune --all --force + - docker buildx prune --force + + # Login Docker repository - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY - - docker ps -aq | xargs -r docker rm -f - - > - if docker network list | grep teraflowbridge; then - echo "teraflowbridge is already created"; - else - docker network create -d bridge teraflowbridge; - fi - - > - if docker container ls | grep $IMAGE_NAME; then - docker rm -f $IMAGE_NAME; - else - echo "$IMAGE_NAME image 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-osm-nbi:$IMAGE_TAG" - docker images --filter="dangling=true" --quiet | xargs -r docker rmi - > - docker run --name $MOCK_IMAGE_NAME -d + docker run --name mock_osm_nbi -d --network=teraflowbridge --env LOG_LEVEL=DEBUG --env FLASK_ENV=development - $CI_REGISTRY_IMAGE/$MOCK_IMAGE_NAME:$IMAGE_TAG + $CI_REGISTRY_IMAGE/mock-osm-nbi:$IMAGE_TAG - > docker run --name $IMAGE_NAME -d -v "$PWD/src/$IMAGE_NAME/tests:/opt/results" --network=teraflowbridge @@ -89,15 +85,23 @@ unit_test osm_client: - while ! docker logs $IMAGE_NAME 2>&1 | grep -q 'Running...'; do sleep 1; done - docker ps -a - docker logs $IMAGE_NAME - - docker logs $MOCK_IMAGE_NAME + - docker logs mock_osm_nbi - docker exec -i $IMAGE_NAME bash -c "coverage run -m pytest --log-level=INFO --verbose $IMAGE_NAME/tests/test_unitary.py --junitxml=/opt/results/${IMAGE_NAME}_report_unitary.xml" - docker exec -i $IMAGE_NAME bash -c "coverage report --include='${IMAGE_NAME}/*' --show-missing" coverage: '/TOTAL\s+\d+\s+\d+\s+(\d+%)/' after_script: - docker logs $IMAGE_NAME - - docker rm -f $IMAGE_NAME - - docker rm -f $MOCK_IMAGE_NAME - - docker network rm teraflowbridge + - docker logs mock_osm_nbi + + # Do Docker cleanup + - docker ps --all --quiet | xargs --no-run-if-empty docker stop + - docker container prune --force + - docker ps --all --quiet | xargs --no-run-if-empty docker rm --force + - docker image prune --force + - docker network prune --force + - docker volume prune --all --force + - docker buildx prune --force + rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' @@ -108,8 +112,9 @@ unit_test osm_client: - src/$IMAGE_NAME/Dockerfile - src/$IMAGE_NAME/tests/*.py - manifests/${IMAGE_NAME}service.yaml - - src/tests/tools/$MOCK_IMAGE_NAME/**/*.{py,in,yml} - - src/tests/tools/$MOCK_IMAGE_NAME/Dockerfile + - src/tests/tools/mock_osm_nbi/**/*.{py,in,yml,yaml,yang,sh,json} + - src/tests/tools/mock_osm_nbi/Dockerfile + - src/tests/.gitlab-ci.yml - .gitlab-ci.yml artifacts: when: always diff --git a/src/tests/.gitlab-ci.yml b/src/tests/.gitlab-ci.yml index 4b7af45a0..67f3b5692 100644 --- a/src/tests/.gitlab-ci.yml +++ b/src/tests/.gitlab-ci.yml @@ -29,3 +29,4 @@ include: - local: '/src/tests/tools/mock_tfs_nbi_dependencies/.gitlab-ci.yml' - local: '/src/tests/tools/mock_qkd_node/.gitlab-ci.yml' + - local: '/src/tests/tools/mock_osm_nbi/.gitlab-ci.yml' diff --git a/src/tests/tools/mock_osm_nbi/.gitlab-ci.yml b/src/tests/tools/mock_osm_nbi/.gitlab-ci.yml new file mode 100644 index 000000000..a47bb15eb --- /dev/null +++ b/src/tests/tools/mock_osm_nbi/.gitlab-ci.yml @@ -0,0 +1,38 @@ +# Copyright 2022-2025 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/) +# +# 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. + +# Build, tag, and push the Docker image to the GitLab Docker registry +build mock_osm_nbi: + stage: build + before_script: + - docker image prune --force + - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + script: + - docker buildx build -t "$CI_REGISTRY_IMAGE/mock-osm-nbi:test" -f ./src/tests/tools/mock_osm_nbi/Dockerfile ./src/tests/tools/mock_osm_nbi + - docker push "$CI_REGISTRY_IMAGE/mock-osm-nbi:test" + after_script: + - docker image prune --force + rules: + - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' + - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' + - changes: + - src/common/**/*.py + - proto/*.proto + - src/tests/tools/mock_osm_nbi/**/*.{py,in,yml,yaml,yang,sh,json} + - src/tests/tools/mock_osm_nbi/Dockerfile + - src/tests/.gitlab-ci.yml + - src/osm_client/**/*.{py,in,yml} + - src/osm_client/Dockerfile + - src/osm_client/tests/*.py + - .gitlab-ci.yml -- GitLab From ebf4a4257bcbf1b18d3ad37d86d7cc0c1c99bd48 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:33:57 +0000 Subject: [PATCH 4/8] Mock QKD Node: - Minor improvements in CI/CD pipeline --- src/tests/tools/mock_qkd_node/.gitlab-ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tests/tools/mock_qkd_node/.gitlab-ci.yml b/src/tests/tools/mock_qkd_node/.gitlab-ci.yml index 593283591..c43c75b2e 100644 --- a/src/tests/tools/mock_qkd_node/.gitlab-ci.yml +++ b/src/tests/tools/mock_qkd_node/.gitlab-ci.yml @@ -16,12 +16,13 @@ build mock_qkd_node: stage: build before_script: + - docker image prune --force - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY script: - docker buildx build -t "$CI_REGISTRY_IMAGE/mock-qkd-node:test" -f ./src/tests/tools/mock_qkd_node/Dockerfile ./src/tests/tools/mock_qkd_node - docker push "$CI_REGISTRY_IMAGE/mock-qkd-node:test" after_script: - - docker images --filter="dangling=true" --quiet | xargs -r docker rmi + - docker image prune --force rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && ($CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "develop" || $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH)' - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "develop"' @@ -30,6 +31,7 @@ build mock_qkd_node: - proto/*.proto - src/src/tests/tools/mock_qkd_node/**/*.{py,in,yml,yaml,yang,sh,json} - src/src/tests/tools/mock_qkd_node/Dockerfile + - src/src/tests/.gitlab-ci.yml - src/device/**/*.{py,in,yml} - src/device/Dockerfile - src/device/tests/*.py -- GitLab From 2f4f7418ac46f3310066fa096f99fb4989d3ad06 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:39:22 +0000 Subject: [PATCH 5/8] Mock OSM NBI: - Fixed Dockerfile --- src/tests/tools/mock_osm_nbi/Dockerfile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/tests/tools/mock_osm_nbi/Dockerfile b/src/tests/tools/mock_osm_nbi/Dockerfile index acc6dba59..cfa00f7b2 100644 --- a/src/tests/tools/mock_osm_nbi/Dockerfile +++ b/src/tests/tools/mock_osm_nbi/Dockerfile @@ -17,21 +17,21 @@ FROM python:3.10.16-slim # Set Python to show logs as they occur ENV PYTHONUNBUFFERED=0 -# Get generic Python packages +# Get Python dependencies RUN python3 -m pip install --upgrade pip RUN python3 -m pip install --upgrade setuptools wheel RUN python3 -m pip install --upgrade pip-tools # Create component sub-folders, and copy content -RUN mkdir -p /var/teraflow/mock_osm_nbi -WORKDIR /var/teraflow/mock_osm_nbi -COPY src/tests/tools/mock_osm_nbi/. . +RUN mkdir -p /var/mock_osm_nbi +WORKDIR /var/mock_osm_nbi +COPY ./* ./* # Get specific Python packages RUN pip-compile --quiet --output-file=requirements.txt requirements.in RUN python3 -m pip install -r requirements.txt -WORKDIR /var/teraflow +WORKDIR /var # Start the service ENTRYPOINT ["python", "-m", "mock_osm_nbi"] -- GitLab From 239f46fd4d80ad90990dacb842eaca89bf2d7715 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:45:20 +0000 Subject: [PATCH 6/8] Mock OSM NBI: - Fixed Dockerfile - Fixed README.md --- src/tests/tools/mock_osm_nbi/Dockerfile | 3 ++- src/tests/tools/mock_osm_nbi/README.md | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/tests/tools/mock_osm_nbi/Dockerfile b/src/tests/tools/mock_osm_nbi/Dockerfile index cfa00f7b2..36e0f1cc4 100644 --- a/src/tests/tools/mock_osm_nbi/Dockerfile +++ b/src/tests/tools/mock_osm_nbi/Dockerfile @@ -25,7 +25,8 @@ RUN python3 -m pip install --upgrade pip-tools # Create component sub-folders, and copy content RUN mkdir -p /var/mock_osm_nbi WORKDIR /var/mock_osm_nbi -COPY ./* ./* +COPY ./*.py . +COPY ./*.in . # Get specific Python packages RUN pip-compile --quiet --output-file=requirements.txt requirements.in diff --git a/src/tests/tools/mock_osm_nbi/README.md b/src/tests/tools/mock_osm_nbi/README.md index a4f8f3390..005ce8311 100644 --- a/src/tests/tools/mock_osm_nbi/README.md +++ b/src/tests/tools/mock_osm_nbi/README.md @@ -6,7 +6,7 @@ Basic OSM NBI to test OSM Client component. - Build the component for testing ```bash -docker buildx build -t "mock_osm_nbi:test" -f ./src/tests/tools/mock_osm_nbi/Dockerfile . +docker buildx build -t "mock-osm-nbi:test" -f ./src/tests/tools/mock_osm_nbi/Dockerfile ./src/tests/tools/mock_osm_nbi ``` - Run the component -- GitLab From b9cf98a3d7c028bbe9d98c0f62619d36142ace46 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:49:04 +0000 Subject: [PATCH 7/8] OSM Client: - Fixed CI/CD pipeline --- src/osm_client/.gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/osm_client/.gitlab-ci.yml b/src/osm_client/.gitlab-ci.yml index d35793259..853b765ef 100644 --- a/src/osm_client/.gitlab-ci.yml +++ b/src/osm_client/.gitlab-ci.yml @@ -67,14 +67,14 @@ unit_test osm_client: - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY script: - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - - docker pull "$CI_REGISTRY_IMAGE/mock-osm-nbi:$IMAGE_TAG" + - docker pull "$CI_REGISTRY_IMAGE/mock-osm-nbi:test" - docker images --filter="dangling=true" --quiet | xargs -r docker rmi - > docker run --name mock_osm_nbi -d --network=teraflowbridge --env LOG_LEVEL=DEBUG --env FLASK_ENV=development - $CI_REGISTRY_IMAGE/mock-osm-nbi:$IMAGE_TAG + $CI_REGISTRY_IMAGE/mock-osm-nbi:test - > docker run --name $IMAGE_NAME -d -v "$PWD/src/$IMAGE_NAME/tests:/opt/results" --network=teraflowbridge -- GitLab From d18222a984483bb36786a3b944d40951187231b6 Mon Sep 17 00:00:00 2001 From: gifrerenom Date: Fri, 18 Jul 2025 10:51:41 +0000 Subject: [PATCH 8/8] OSM Client: - Fixed CI/CD pipeline --- src/osm_client/.gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/osm_client/.gitlab-ci.yml b/src/osm_client/.gitlab-ci.yml index 853b765ef..2a0cfbb7e 100644 --- a/src/osm_client/.gitlab-ci.yml +++ b/src/osm_client/.gitlab-ci.yml @@ -68,7 +68,7 @@ unit_test osm_client: script: - docker pull "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$IMAGE_TAG" - docker pull "$CI_REGISTRY_IMAGE/mock-osm-nbi:test" - - docker images --filter="dangling=true" --quiet | xargs -r docker rmi + - docker network create -d bridge teraflowbridge - > docker run --name mock_osm_nbi -d --network=teraflowbridge -- GitLab