From ab617ffefa2663085634e0ce21d5e33496d07b68 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Sun, 28 Dec 2025 20:51:46 +0100 Subject: [PATCH 1/8] Add args to be able to pish the image to the i2cat's container registry --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 1f5859f..1cf3455 100644 --- a/Dockerfile +++ b/Dockerfile @@ -40,8 +40,9 @@ RUN apt-get update && apt-get install -y \ # Copy application code COPY . . +ARG PIP_INDEX_URL # Install Python dependencies -RUN python -m pip install --no-cache-dir -r requirements.txt +RUN python -m pip install --no-cache-dir -r requirements.txt --extra-index-url ${PIP_INDEX_URL} --trusted-host gitlab.i2cat.net # Set working directory for application execution WORKDIR /usr/app/src/ -- GitLab From 570a5b3613abb9971bf529bc518985d0d56f4bdd Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Sun, 28 Dec 2025 20:51:55 +0100 Subject: [PATCH 2/8] Add new TF-SDK version --- requirements.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements.txt b/requirements.txt index f512ac6..4fd66b5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ attrs==23.1.0 Authlib==1.2.1 certifi==2023.11.17 -cffi==1.16.0 +cffi==2.0.0 charset-normalizer==3.3.2 click==8.1.7 clickclick==20.10.2 @@ -27,7 +27,7 @@ MarkupSafe==2.1.3 mongoengine==0.29.1 packaging==23.2 pkgutil-resolve-name==1.3.10 -pycparser==2.21 +pycparser==2.23 PyJWT==2.8.0 pymongo==4.13.2 python-dateutil==2.9.0 @@ -36,7 +36,7 @@ referencing==0.32.0 requests==2.32.4 rpds-py==0.13.2 six==1.16.0 -sunrise6g-opensdk==1.0.8 +sunrise6g-opensdk==1.0.21 swagger-ui-bundle==0.0.9 urllib3==2.1.0 Werkzeug==2.2.3 -- GitLab From afa0ffa1c39aa979837dd4ecf6b143c1d16018a6 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Mon, 29 Dec 2025 07:49:26 +0100 Subject: [PATCH 3/8] Revert "Add new TF-SDK version" This reverts commit 570a5b3613abb9971bf529bc518985d0d56f4bdd. --- requirements.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements.txt b/requirements.txt index 4fd66b5..f512ac6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ attrs==23.1.0 Authlib==1.2.1 certifi==2023.11.17 -cffi==2.0.0 +cffi==1.16.0 charset-normalizer==3.3.2 click==8.1.7 clickclick==20.10.2 @@ -27,7 +27,7 @@ MarkupSafe==2.1.3 mongoengine==0.29.1 packaging==23.2 pkgutil-resolve-name==1.3.10 -pycparser==2.23 +pycparser==2.21 PyJWT==2.8.0 pymongo==4.13.2 python-dateutil==2.9.0 @@ -36,7 +36,7 @@ referencing==0.32.0 requests==2.32.4 rpds-py==0.13.2 six==1.16.0 -sunrise6g-opensdk==1.0.21 +sunrise6g-opensdk==1.0.8 swagger-ui-bundle==0.0.9 urllib3==2.1.0 Werkzeug==2.2.3 -- GitLab From 40cdfbc19c0c4219d931c922c7398ba247527b08 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Mon, 29 Dec 2025 07:49:38 +0100 Subject: [PATCH 4/8] Revert "Add args to be able to pish the image to the i2cat's container registry" This reverts commit ab617ffefa2663085634e0ce21d5e33496d07b68. --- Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 1cf3455..1f5859f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -40,9 +40,8 @@ RUN apt-get update && apt-get install -y \ # Copy application code COPY . . -ARG PIP_INDEX_URL # Install Python dependencies -RUN python -m pip install --no-cache-dir -r requirements.txt --extra-index-url ${PIP_INDEX_URL} --trusted-host gitlab.i2cat.net +RUN python -m pip install --no-cache-dir -r requirements.txt # Set working directory for application execution WORKDIR /usr/app/src/ -- GitLab From 211566852cb72b065f63be2fab651c45a81b3150 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Tue, 17 Feb 2026 12:06:09 +0100 Subject: [PATCH 5/8] chore: use public TF SDK sources --- Dockerfile | 3 +-- Dockerfile.dev | 4 +--- requirements.txt | 2 +- src/test/local-deployment/docker-compose.yml | 8 -------- 4 files changed, 3 insertions(+), 14 deletions(-) diff --git a/Dockerfile b/Dockerfile index 18478cc..107959d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -34,9 +34,8 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # Copy application code COPY . . -ARG PIP_INDEX_URL # Install Python dependencies -RUN python -m pip install --no-cache-dir -r requirements.txt --trusted-host gitlab.i2cat.net --extra-index-url ${PIP_INDEX_URL} +RUN python -m pip install --no-cache-dir -r requirements.txt WORKDIR /usr/app/src/ EXPOSE 8989 # Set Gunicorn as the entrypoint diff --git a/Dockerfile.dev b/Dockerfile.dev index 5defc51..d03bb0e 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -39,14 +39,12 @@ COPY ../tf-sdk /tmp/tf-sdk # Copy application code COPY . . -ARG PIP_INDEX_URL -ARG PIP_EXTRA_INDEX_URL # Install local TF-SDK instead of the published version RUN pip install --no-cache-dir /tmp/tf-sdk # Install remaining Python dependencies (TF-SDK will be skipped since already installed) -RUN python -m pip install --no-cache-dir -r requirements.txt --trusted-host gitlab.i2cat.net --extra-index-url ${PIP_EXTRA_INDEX_URL} +RUN python -m pip install --no-cache-dir -r requirements.txt # Clean up RUN rm -rf /tmp/tf-sdk diff --git a/requirements.txt b/requirements.txt index f6ac059..eee802f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -36,7 +36,7 @@ referencing==0.32.0 requests==2.32.4 rpds-py==0.13.2 six==1.16.0 -sunrise6g-opensdk==1.0.29 +sunrise6g-opensdk==1.0.10 swagger-ui-bundle==0.0.9 urllib3==2.1.0 Werkzeug==2.2.3 diff --git a/src/test/local-deployment/docker-compose.yml b/src/test/local-deployment/docker-compose.yml index 74ef25b..1c9f9de 100644 --- a/src/test/local-deployment/docker-compose.yml +++ b/src/test/local-deployment/docker-compose.yml @@ -63,9 +63,6 @@ services: build: context: ../../../ dockerfile: Dockerfile - args: - PIP_INDEX_URL: https://gitlab-ci-token:glpat-Gm4adH6E5xJGt51zZDEs@gitlab.i2cat.net/api/v4/projects/2512/packages/pypi/simple - PIP_EXTRA_INDEX_URL: https://gitlab-ci-token:glpat-Gm4adH6E5xJGt51zZDEs@gitlab.i2cat.net/api/v4/projects/2514/packages/pypi/simple container_name: federation-manager-remote restart: unless-stopped ports: @@ -74,7 +71,6 @@ services: - ../../conf/config-fm-remote.cfg:/usr/app/src/conf/config.cfg - ../../clients/tf_sdk.py:/usr/app/src/clients/tf_sdk.py - /home/sergio/i2cat/OperatorPlatform/OP_Automation/automation/op1/op1-kubeconfig.yaml:/root/.kube/config - - ../../../../tf-sdk/src/sunrise6g_opensdk:/usr/local/lib/python3.12/site-packages/sunrise6g_opensdk depends_on: - mongodb-remote @@ -86,9 +82,6 @@ services: build: context: ../../../ dockerfile: Dockerfile - args: - PIP_INDEX_URL: https://gitlab-ci-token:glpat-Gm4adH6E5xJGt51zZDEs@gitlab.i2cat.net/api/v4/projects/2512/packages/pypi/simple - PIP_EXTRA_INDEX_URL: https://gitlab-ci-token:glpat-Gm4adH6E5xJGt51zZDEs@gitlab.i2cat.net/api/v4/projects/2514/packages/pypi/simple container_name: federation-manager-local restart: unless-stopped ports: @@ -99,7 +92,6 @@ services: - ../../conf/config-fm-local.cfg:/usr/app/src/conf/config.cfg - ../../clients/tf_sdk.py:/usr/app/src/clients/tf_sdk.py - /home/sergio/i2cat/OperatorPlatform/OP_Automation/automation/op1/op1-kubeconfig.yaml:/root/.kube/config - - ../../../../tf-sdk/src/sunrise6g_opensdk:/usr/local/lib/python3.12/site-packages/sunrise6g_opensdk depends_on: - mongodb-local - keycloak-local -- GitLab From f0cedf66c98c31e4bed1b7a03c984070b445fa36 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Tue, 17 Feb 2026 12:30:33 +0100 Subject: [PATCH 6/8] fix: use ETSI TF SDK registry --- Dockerfile | 6 ++++-- Dockerfile.dev | 4 +++- requirements.txt | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 107959d..798d507 100644 --- a/Dockerfile +++ b/Dockerfile @@ -34,8 +34,10 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # Copy application code COPY . . -# Install Python dependencies -RUN python -m pip install --no-cache-dir -r requirements.txt +# Install Python dependencies (use ETSI GitLab registry for TF SDK) +RUN python -m pip install --no-cache-dir -r requirements.txt \ + --extra-index-url https://labs.etsi.org/rep/api/v4/projects/396/packages/pypi/simple \ + --trusted-host labs.etsi.org WORKDIR /usr/app/src/ EXPOSE 8989 # Set Gunicorn as the entrypoint diff --git a/Dockerfile.dev b/Dockerfile.dev index d03bb0e..b750f20 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -44,7 +44,9 @@ COPY . . RUN pip install --no-cache-dir /tmp/tf-sdk # Install remaining Python dependencies (TF-SDK will be skipped since already installed) -RUN python -m pip install --no-cache-dir -r requirements.txt +RUN python -m pip install --no-cache-dir -r requirements.txt \ + --extra-index-url https://labs.etsi.org/rep/api/v4/projects/396/packages/pypi/simple \ + --trusted-host labs.etsi.org # Clean up RUN rm -rf /tmp/tf-sdk diff --git a/requirements.txt b/requirements.txt index eee802f..adb5b04 100644 --- a/requirements.txt +++ b/requirements.txt @@ -36,7 +36,8 @@ referencing==0.32.0 requests==2.32.4 rpds-py==0.13.2 six==1.16.0 -sunrise6g-opensdk==1.0.10 +setuptools==80.9.0 +sunrise6g-opensdk==1.0.21 swagger-ui-bundle==0.0.9 urllib3==2.1.0 Werkzeug==2.2.3 -- GitLab From 7ba3c45dd8c1b13ef15c828348cfd7f218fc7b04 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Tue, 17 Feb 2026 12:33:04 +0100 Subject: [PATCH 7/8] fix: add keycloak realm to config secret --- src/deploy/federation-manager.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/deploy/federation-manager.yaml b/src/deploy/federation-manager.yaml index d37a954..dbdb21d 100644 --- a/src/deploy/federation-manager.yaml +++ b/src/deploy/federation-manager.yaml @@ -13,7 +13,7 @@ metadata: namespace: federation-manager data: config.cfg: >- - W2tleWNsb2FrXQpjbGllbnQxX2lkID0gb3JpZ2luYXRpbmctb3AtMQpjbGllbnQxX3NlY3JldCA9IGRkN3ZOd0Zxak5wWXdhZ2hsRXdNYncxMGcwa2xXREhiCmNsaWVudDJfaWQgPSBvcmlnaW5hdGluZy1vcC0yCmNsaWVudDJfc2VjcmV0ID0gMm1oem5FUmZXY2xMRHVWb2pZNzdMcDRRZDJyNGU4TXMKc2NvcGUgPSBmZWQtbWdtdApob3N0ID0ga2V5Y2xvYWsKcG9ydCA9IDgwODAKCltzZXJ2ZXJdCmhvc3QgPSAxMjcuMC4wLjEKcG9ydCA9IDg5ODkKcHJlZml4ID0gYXBpCnZlcnNpb24gPSB2MS4wCnByb3RvY29sID0gaHR0cAoKW21vbmdvZGJdCmhvc3QgPSBtb25nb2RiCnBvcnQgPSAyNzAxNwoKW29wX2RhdGFdCnBhcnRuZXJPUEZlZGVyYXRpb25JZCA9IGkyY2F0CnBhcnRuZXJPUENvdW50cnlDb2RlID0gRVMKcGFydG5lck9QTW9iaWxlTmV0d29ya0NvZGVfTUNDID0gMDAxCnBhcnRuZXJPUE1vYmlsZU5ldHdvcmtDb2RlX01OQyA9IDAxCnBhcnRuZXJPUEZpeGVkTmV0d29ya0NvZGUgPSAzNApwbGF0Zm9ybUNhcHMgPSBob21lUm91dGluZwplZGdlRGlzY292ZXJ5U2VydmljZUVuZFBvaW50X3BvcnQgPQplZGdlRGlzY292ZXJ5U2VydmljZUVuZFBvaW50X2ZxZG4gPSBkaXNjb3Zlcnkub3BlcmF0b3IxLmNvbQplZGdlRGlzY292ZXJ5U2VydmljZUVuZFBvaW50X2lwdjRBZGRyZXNzZXMgPQplZGdlRGlzY292ZXJ5U2VydmljZUVuZFBvaW50X2lwdjZBZGRyZXNzZXMgPQpsY21TZXJ2aWNlRW5kUG9pbnRfcG9ydCA9IDg5ODkKbGNtU2VydmljZUVuZFBvaW50X2ZxZG4gPQpsY21TZXJ2aWNlRW5kUG9pbnRfaXB2NEFkZHJlc3NlcyA9IDEyNy4wLjAuMQpsY21TZXJ2aWNlRW5kUG9pbnRfaXB2NkFkZHJlc3NlcyA9CgpbZWRnZV9jbG91ZF9wbGF0Zm9ybV0KaG9zdCA9IDE5Mi4xNjguMTIzLjQ4CnBvcnQgPSAzMDc2OQpjbGllbnRfbmFtZSA9IGkyZWRnZQpmbGF2b3VyX2lkID0gNjdmM2EwYjBlMzE4NGE4NTk1MmUxNzRkCgpbYXJ0ZWZhY3RfbWFuYWdlcl0KaG9zdCA9IDE5Mi4xNjguMTIzLjIzNwpwb3J0ID0gMzA3NjkKZW5hYmxlZCA9IGZhbHNlCmRzdF9yZWdpc3RyeSA9CmRzdF91c2VybmFtZSA9CmRzdF9wYXNzd29yZCA9CmRzdF90b2tlbiA9 + W2tleWNsb2FrXQpjbGllbnQxX2lkID0gb3JpZ2luYXRpbmctb3AtMQpjbGllbnQxX3NlY3JldCA9IGRkN3ZOd0Zxak5wWXdhZ2hsRXdNYncxMGcwa2xXREhiCmNsaWVudDJfaWQgPSBvcmlnaW5hdGluZy1vcC0yCmNsaWVudDJfc2VjcmV0ID0gMm1oem5FUmZXY2xMRHVWb2pZNzdMcDRRZDJyNGU4TXMKc2NvcGUgPSBmZWQtbWdtdApob3N0ID0ga2V5Y2xvYWsKcG9ydCA9IDgwODAKcmVhbG0gPSBmZWRlcmF0aW9uCgpbc2VydmVyXQpob3N0ID0gMTI3LjAuMC4xCnBvcnQgPSA4OTg5CnByZWZpeCA9IGFwaQp2ZXJzaW9uID0gdjEuMApwcm90b2NvbCA9IGh0dHAKClttb25nb2RiXQpob3N0ID0gbW9uZ29kYgpwb3J0ID0gMjcwMTcKCltvcF9kYXRhXQpwYXJ0bmVyT1BGZWRlcmF0aW9uSWQgPSBpMmNhdApwYXJ0bmVyT1BDb3VudHJ5Q29kZSA9IEVTCnBhcnRuZXJPUE1vYmlsZU5ldHdvcmtDb2RlX01DQyA9IDAwMQpwYXJ0bmVyT1BNb2JpbGVOZXR3b3JrQ29kZV9NTkMgPSAwMQpwYXJ0bmVyT1BGaXhlZE5ldHdvcmtDb2RlID0gMzQKcGxhdGZvcm1DYXBzID0gaG9tZVJvdXRpbmcKZWRnZURpc2NvdmVyeVNlcnZpY2VFbmRQb2ludF9wb3J0ID0KZWRnZURpc2NvdmVyeVNlcnZpY2VFbmRQb2ludF9mcWRuID0gZGlzY292ZXJ5Lm9wZXJhdG9yMS5jb20KZWRnZURpc2NvdmVyeVNlcnZpY2VFbmRQb2ludF9pcHY0QWRkcmVzc2VzID0KZWRnZURpc2NvdmVyeVNlcnZpY2VFbmRQb2ludF9pcHY2QWRkcmVzc2VzID0KbGNtU2VydmljZUVuZFBvaW50X3BvcnQgPSA4OTg5CmxjbVNlcnZpY2VFbmRQb2ludF9mcWRuID0KbGNtU2VydmljZUVuZFBvaW50X2lwdjRBZGRyZXNzZXMgPSAxMjcuMC4wLjEKbGNtU2VydmljZUVuZFBvaW50X2lwdjZBZGRyZXNzZXMgPQoKW2VkZ2VfY2xvdWRfcGxhdGZvcm1dCmhvc3QgPSAxOTIuMTY4LjEyMy40OApwb3J0ID0gMzA3NjkKY2xpZW50X25hbWUgPSBpMmVkZ2UKZmxhdm91cl9pZCA9IDY3ZjNhMGIwZTMxODRhODU5NTJlMTc0ZAoKW2FydGVmYWN0X21hbmFnZXJdCmhvc3QgPSAxOTIuMTY4LjEyMy4yMzcKcG9ydCA9IDMwNzY5CmVuYWJsZWQgPSBmYWxzZQpkc3RfcmVnaXN0cnkgPQpkc3RfdXNlcm5hbWUgPQpkc3RfcGFzc3dvcmQgPQpkc3RfdG9rZW4gPQo= type: Opaque --- kind: Deployment -- GitLab From 313668c4ca57b457d4fa963778b9adbded84fb94 Mon Sep 17 00:00:00 2001 From: Sergio Gimenez Date: Tue, 17 Feb 2026 12:37:54 +0100 Subject: [PATCH 8/8] chore: pin temp image in manifest --- src/deploy/federation-manager.yaml | 34 +++++++++++++++--------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/deploy/federation-manager.yaml b/src/deploy/federation-manager.yaml index dbdb21d..39b59e3 100644 --- a/src/deploy/federation-manager.yaml +++ b/src/deploy/federation-manager.yaml @@ -34,23 +34,23 @@ spec: app: federation-manager spec: containers: - - name: federation-manager - image: labs.etsi.org:5050/oop/code/federation-manager/federation-manager:latest - imagePullPolicy: Always - volumeMounts: - - name: config - readOnly: false - mountPath: /usr/app/src/conf/ - ports: - - containerPort: 8989 - protocol: TCP - resources: - requests: - cpu: "2" - memory: "4Gi" - limits: - cpu: "4" - memory: "6Gi" + - name: federation-manager + image: labs.etsi.org:5050/oop/code/federation-manager/federation-manager:temp-1d05bd0 + imagePullPolicy: Always + volumeMounts: + - name: config + readOnly: false + mountPath: /usr/app/src/conf/ + ports: + - containerPort: 8989 + protocol: TCP + resources: + requests: + cpu: "2" + memory: "4Gi" + limits: + cpu: "4" + memory: "6Gi" volumes: - name: config secret: -- GitLab