From 8ef7be0a97d01831389b7d68f501bb15abe1acca Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Thu, 13 Nov 2025 12:33:40 +0200 Subject: [PATCH 01/10] docker compose for edrs --- local-mode/docker-compose.yml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/local-mode/docker-compose.yml b/local-mode/docker-compose.yml index 0d9337be..f8a4881f 100644 --- a/local-mode/docker-compose.yml +++ b/local-mode/docker-compose.yml @@ -99,6 +99,33 @@ services: - ./config/rs-server.yaml:/home/user/.config/rs-server.yaml # auth to external stations - ./config/cadip_ws_config.yaml:${EODAG_CADIP_CONFIG} + # From: https://github.com/RS-PYTHON/rs-server/blob/develop/services/edrs/.github/Dockerfile + rs-server-edrs: + image: ghcr.io/rs-python/rs-server-cadip:latest + container_name: rs-server-edrs + ports: + - 8006:8000 + depends_on: + - rspy-pre-actions + - minio + - edrs-station + env_file: + - .env + environment: + # CORS_ORIGINS: http://localhost:8102 + # RSPY_LOCAL_MODE: 0 # set to 0 to use the apikey-manager + # RSPY_UAC_CHECK_URL: http://apikey-manager:8000/auth/check_key # optional + # # OAuth2 authentication + # OIDC_ENDPOINT: https://iam.dev-rspy-ovh.esa-copernicus.eu + # OIDC_REALM: rspy + # OIDC_CLIENT_ID: apikeymanager + # OIDC_CLIENT_SECRET: xxx # DON'T SAVE THIS VALUE IN GIT ! + # RSPY_COOKIE_SECRET: secret + # RSPY__TOKEN__xxx # from the k8s pod, replace http://mockup-station-cadip...:8080 by http://cadip-station:5000 + volumes: + #- ./config/rs-server.yaml:/home/user/.config/rs-server.yaml # auth to external stations + #- ./config/cadip_ws_config.yaml:${EODAG_CADIP_CONFIG} + rs-server-catalog: image: ghcr.io/rs-python/rs-server-catalog:latest container_name: rs-server-catalog From a414223470cc2bbe4a8a3fe0ce36204c72fc1d8a Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Thu, 13 Nov 2025 12:52:48 +0200 Subject: [PATCH 02/10] docker compose for edrs --- local-mode/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/local-mode/docker-compose.yml b/local-mode/docker-compose.yml index f8a4881f..78b3f2de 100644 --- a/local-mode/docker-compose.yml +++ b/local-mode/docker-compose.yml @@ -122,7 +122,7 @@ services: # OIDC_CLIENT_SECRET: xxx # DON'T SAVE THIS VALUE IN GIT ! # RSPY_COOKIE_SECRET: secret # RSPY__TOKEN__xxx # from the k8s pod, replace http://mockup-station-cadip...:8080 by http://cadip-station:5000 - volumes: + #volumes: #- ./config/rs-server.yaml:/home/user/.config/rs-server.yaml # auth to external stations #- ./config/cadip_ws_config.yaml:${EODAG_CADIP_CONFIG} From a2f2c067ef9529a92a2954cf84d21c37214c7e05 Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Thu, 13 Nov 2025 12:56:55 +0200 Subject: [PATCH 03/10] docker compose for edrs --- local-mode/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/local-mode/docker-compose.yml b/local-mode/docker-compose.yml index 78b3f2de..b5a03a40 100644 --- a/local-mode/docker-compose.yml +++ b/local-mode/docker-compose.yml @@ -111,7 +111,7 @@ services: - edrs-station env_file: - .env - environment: + #environment: # CORS_ORIGINS: http://localhost:8102 # RSPY_LOCAL_MODE: 0 # set to 0 to use the apikey-manager # RSPY_UAC_CHECK_URL: http://apikey-manager:8000/auth/check_key # optional From 149fd6673d5ba34b2d79af66f4babb498ee41c3e Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Thu, 13 Nov 2025 13:06:55 +0200 Subject: [PATCH 04/10] docker compose for edrs --- local-mode/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/local-mode/docker-compose.yml b/local-mode/docker-compose.yml index b5a03a40..7431e011 100644 --- a/local-mode/docker-compose.yml +++ b/local-mode/docker-compose.yml @@ -101,7 +101,7 @@ services: # From: https://github.com/RS-PYTHON/rs-server/blob/develop/services/edrs/.github/Dockerfile rs-server-edrs: - image: ghcr.io/rs-python/rs-server-cadip:latest + image: ghcr.io/rs-python/rs-server-edrs:latest container_name: rs-server-edrs ports: - 8006:8000 From c06bb2442f12ae70716b8d83010a79347665f364 Mon Sep 17 00:00:00 2001 From: Ovidiu Date: Thu, 13 Nov 2025 13:26:27 +0200 Subject: [PATCH 05/10] Small config update --- local-mode/.env | 2 +- local-mode/docker-compose.yml | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/local-mode/.env b/local-mode/.env index 7af8bc24..8d800eaf 100644 --- a/local-mode/.env +++ b/local-mode/.env @@ -60,7 +60,7 @@ export RSPY_WORKING_DIR=/rspy/working/dir export EODAG_ADGS_CONFIG=/app/conf/adgs_ws_config.yaml export EODAG_CADIP_CONFIG=/app/conf/cadip_ws_config.yaml export EODAG_PRIP_CONFIG=/app/conf/prip_ws_config.yaml - +export EDRS_STATION_CONFIG=/app/conf/rs_server_edrs_config.yaml # opentelementry export LOKI_ENDPOINT=http://loki:3100/loki/api/v1/push export TEMPO_ENDPOINT=http://tempo:4317 diff --git a/local-mode/docker-compose.yml b/local-mode/docker-compose.yml index b5a03a40..ef0932ab 100644 --- a/local-mode/docker-compose.yml +++ b/local-mode/docker-compose.yml @@ -101,7 +101,7 @@ services: # From: https://github.com/RS-PYTHON/rs-server/blob/develop/services/edrs/.github/Dockerfile rs-server-edrs: - image: ghcr.io/rs-python/rs-server-cadip:latest + image: ghcr.io/rs-python/rs-server-edrs:feat-rspy808-stac-view-of-edrs-sessions container_name: rs-server-edrs ports: - 8006:8000 @@ -111,6 +111,11 @@ services: - edrs-station env_file: - .env + environment: + EDRS_STATIONS_CONFIG_YAML: ${EDRS_STATION_CONFIG} + volumes: + - rspy_working_dir:${RSPY_WORKING_DIR} # docker named volume + - ./config/rs_server_edrs_config.yaml:${EDRS_STATION_CONFIG} #environment: # CORS_ORIGINS: http://localhost:8102 # RSPY_LOCAL_MODE: 0 # set to 0 to use the apikey-manager From 5360ba4d737fe679a9a6afe83a78e28941f5a836 Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Thu, 13 Nov 2025 15:34:27 +0200 Subject: [PATCH 06/10] rs_server_edrs_config --- local-mode/config/rs_server_edrs_config.yaml | 42 ++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 local-mode/config/rs_server_edrs_config.yaml diff --git a/local-mode/config/rs_server_edrs_config.yaml b/local-mode/config/rs_server_edrs_config.yaml new file mode 100644 index 00000000..626e697b --- /dev/null +++ b/local-mode/config/rs_server_edrs_config.yaml @@ -0,0 +1,42 @@ +# Copyright 2025 CS Group +# +# 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. + +stations: | + pedc: + service: + name: edrs + url: edrs-station + port: 21 + domain: mockup-station-pedc.processing.svc.cluster.local + authentication: + auth_type: ftpes + username: user + password: password + ca_crt: /certs/ca.crt + client_crt: /certs/client.crt + client_key: /certs/client.key + + bedc: + service: + name: edrs + url: edrs-station + port: 21 + domain: mockup-station-pedc.processing.svc.cluster.local + authentication: + auth_type: ftpes + username: user + password: password + ca_crt: /path/to/ca.crt + client_crt: /path/to/client.crt + client_key: /path/to/client.key From b0cd44e12c5cd220d290fc1f6e9154185401015f Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Fri, 14 Nov 2025 15:29:50 +0200 Subject: [PATCH 07/10] docker compose update --- local-mode/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/local-mode/docker-compose.yml b/local-mode/docker-compose.yml index ef0932ab..431bc5b9 100644 --- a/local-mode/docker-compose.yml +++ b/local-mode/docker-compose.yml @@ -101,7 +101,7 @@ services: # From: https://github.com/RS-PYTHON/rs-server/blob/develop/services/edrs/.github/Dockerfile rs-server-edrs: - image: ghcr.io/rs-python/rs-server-edrs:feat-rspy808-stac-view-of-edrs-sessions + image: ghcr.io/rs-python/rs-server-edrs:latest container_name: rs-server-edrs ports: - 8006:8000 From 759e8bb8a918516805bff0ec7808107405718bee Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Fri, 14 Nov 2025 16:16:11 +0200 Subject: [PATCH 08/10] edrs env --- local-mode/.env | 1 + notebooks/resources/test_localhost.py | 1 + notebooks/resources/utils.py | 8 ++++++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/local-mode/.env b/local-mode/.env index 8d800eaf..3d4e094b 100644 --- a/local-mode/.env +++ b/local-mode/.env @@ -19,6 +19,7 @@ export RSPY_LOCAL_MODE=1 export RSPY_HOST_ADGS=http://rs-server-adgs:8000 export RSPY_HOST_PRIP=http://rs-server-prip:8000 export RSPY_HOST_CADIP=http://rs-server-cadip:8000 +export RSPY_HOST_EDRS=http://rs-server-edrs:8000 export RSPY_HOST_PRIP=http://rs-server-prip:8000 export RSPY_HOST_CATALOG=http://rs-server-catalog:8000 export RSPY_HOST_STAGING=http://rs-server-staging:8000 diff --git a/notebooks/resources/test_localhost.py b/notebooks/resources/test_localhost.py index 3f296a2c..aee4a918 100644 --- a/notebooks/resources/test_localhost.py +++ b/notebooks/resources/test_localhost.py @@ -55,6 +55,7 @@ os.environ["RSPY_HOST_CATALOG"] = "http://localhost:8003" os.environ["RSPY_HOST_STAGING"] = "http://localhost:8004" os.environ["RSPY_HOST_PRIP"] = "http://localhost:8005" +os.environ["RSPY_HOST_EDRS"] = "http://localhost:8006" os.environ["RSPY_HOST_DPR_SERVICE"] = "http://localhost:6003" # s3 bucket os.environ["S3_ENDPOINT"] = "http://localhost:9100" diff --git a/notebooks/resources/utils.py b/notebooks/resources/utils.py index 22f635a1..8118acb4 100644 --- a/notebooks/resources/utils.py +++ b/notebooks/resources/utils.py @@ -42,6 +42,7 @@ from rs_client.rs_client import RsClient from rs_client.stac.auxip_client import AuxipClient from rs_client.stac.cadip_client import CadipClient +from rs_client.stac.edrs_client import EdrsClient from rs_client.stac.catalog_client import CatalogClient from rs_common.logging import Logging from rs_common.prefect_utils import init_prefect_blocks @@ -66,6 +67,7 @@ # Client instances auxip_client: AuxipClient = None cadip_client: CadipClient = None +edrs_client: EdrsClient = None catalog_client: CatalogClient = None staging_client: StagingClient = None dpr_client: DprClient = None @@ -149,7 +151,7 @@ def create_s3_buckets(): def init_rsclient(owner_id=None): """Init RsClient instances""" - global apikey, auxip_client, cadip_client, catalog_client, staging_client, dpr_client, prip_client + global apikey, auxip_client, cadip_client, catalog_client, staging_client, dpr_client, prip_client, edrs_client # In local mode, the service URLs are hardcoded in the docker-compose file if local_mode: @@ -176,6 +178,7 @@ def init_rsclient(owner_id=None): auxip_client = generic_client.get_auxip_client() prip_client = generic_client.get_prip_client() cadip_client = generic_client.get_cadip_client() + edrs_client = generic_client.get_edrs_client() catalog_client = generic_client.get_catalog_client() staging_client = generic_client.get_staging_client() dpr_client = generic_client.get_dpr_client() @@ -183,11 +186,12 @@ def init_rsclient(owner_id=None): print(f"Auxip service: {auxip_client.href_service}") print(f"PRIP service: {prip_client.href_service}") print(f"CADIP service: {cadip_client.href_service}") + print(f"EDRS service: {edrs_client.href_service}") print(f"Catalog service: {catalog_client.href_service}") print(f"Staging service: {staging_client.href_service}") print(f"DPR service: {dpr_client.href_service}") - return auxip_client, cadip_client, catalog_client, staging_client, prip_client + return auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client def get_or_create_test_collection( From 9dfc5f393585c1b9264cf058352dbabec01c70ef Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Fri, 14 Nov 2025 16:23:26 +0200 Subject: [PATCH 09/10] pre-commit correction --- notebooks/resources/utils.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/notebooks/resources/utils.py b/notebooks/resources/utils.py index 8118acb4..360b0580 100644 --- a/notebooks/resources/utils.py +++ b/notebooks/resources/utils.py @@ -42,8 +42,8 @@ from rs_client.rs_client import RsClient from rs_client.stac.auxip_client import AuxipClient from rs_client.stac.cadip_client import CadipClient -from rs_client.stac.edrs_client import EdrsClient from rs_client.stac.catalog_client import CatalogClient +from rs_client.stac.edrs_client import EdrsClient from rs_common.logging import Logging from rs_common.prefect_utils import init_prefect_blocks @@ -191,7 +191,14 @@ def init_rsclient(owner_id=None): print(f"Staging service: {staging_client.href_service}") print(f"DPR service: {dpr_client.href_service}") - return auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client + return ( + auxip_client, + cadip_client, + catalog_client, + staging_client, + prip_client, + edrs_client, + ) def get_or_create_test_collection( From 2cf227f0f835afb86e8c4c6ad1c7a47a68b7ddae Mon Sep 17 00:00:00 2001 From: Alin BUTU Date: Fri, 14 Nov 2025 16:53:01 +0200 Subject: [PATCH 10/10] notebooks update with edrs client --- notebooks/sprints/sprint12/timestamps_for_items.ipynb | 2 +- .../sprint14/273_280_stac_authentication_extension.ipynb | 4 ++-- notebooks/sprints/sprint16/323_adgs_staging.ipynb | 2 +- notebooks/sprints/sprint16/326_cadip_staging.ipynb | 2 +- notebooks/sprints/sprint17/342_cadip_staging.ipynb | 2 +- notebooks/sprints/sprint19/530_rsclient_staging.ipynb | 2 +- notebooks/sprints/sprint20/404_582_rsclient.ipynb | 2 +- notebooks/sprints/sprint20/493_test_adgs_search.ipynb | 2 +- notebooks/z-integration/z_stac_validation.ipynb | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/notebooks/sprints/sprint12/timestamps_for_items.ipynb b/notebooks/sprints/sprint12/timestamps_for_items.ipynb index 69bc9691..8624bb62 100644 --- a/notebooks/sprints/sprint12/timestamps_for_items.ipynb +++ b/notebooks/sprints/sprint12/timestamps_for_items.ipynb @@ -51,7 +51,7 @@ "\n", "from resources.utils import *\n", "user = os.environ[\"JUPYTERHUB_USER\"] if cluster_mode else os.environ[\"RSPY_HOST_USER\"]\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo(owner_id = user)\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo(owner_id = user)\n", "from resources.utils import * # reload the global vars again\n", "from pystac import Collection\n", "session = requests.Session()\n", diff --git a/notebooks/sprints/sprint14/273_280_stac_authentication_extension.ipynb b/notebooks/sprints/sprint14/273_280_stac_authentication_extension.ipynb index 1f658594..958ef091 100644 --- a/notebooks/sprints/sprint14/273_280_stac_authentication_extension.ipynb +++ b/notebooks/sprints/sprint14/273_280_stac_authentication_extension.ipynb @@ -10,7 +10,7 @@ "# Init environment before running a demo notebook.\n", "from resources.utils import *\n", "user = os.environ[\"JUPYTERHUB_USER\"] if cluster_mode else os.environ[\"RSPY_HOST_USER\"]\n", - "auxip_client, cadip_client, catalog_clientent, staging_client, prip_client = init_demo(owner_id = user)\n", + "auxip_client, cadip_client, catalog_clientent, staging_client, prip_client, edrs_client = init_demo(owner_id = user)\n", "from resources.utils import * # reload the global vars again\n", "\n", "# Init the dask cluster\n", @@ -158,7 +158,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11" + "version": "3.11.7" } }, "nbformat": 4, diff --git a/notebooks/sprints/sprint16/323_adgs_staging.ipynb b/notebooks/sprints/sprint16/323_adgs_staging.ipynb index cf0be259..c6e8f69f 100644 --- a/notebooks/sprints/sprint16/323_adgs_staging.ipynb +++ b/notebooks/sprints/sprint16/323_adgs_staging.ipynb @@ -25,7 +25,7 @@ "pp = pprint.PrettyPrinter(indent=2, width=80, sort_dicts=False, compact=True)\n", "session = requests.Session()\n", "user = os.environ[\"JUPYTERHUB_USER\"] if cluster_mode else os.environ[\"RSPY_HOST_USER\"]\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo(owner_id = user)\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo(owner_id = user)\n", "if os.getenv(\"RSPY_LOCAL_MODE\") == \"1\":\n", " href = \"http://rs-server-adgs:8000\"\n", " href_staging = \"http://rs-server-staging:8000\"\n", diff --git a/notebooks/sprints/sprint16/326_cadip_staging.ipynb b/notebooks/sprints/sprint16/326_cadip_staging.ipynb index dc17db43..b7c1eec8 100644 --- a/notebooks/sprints/sprint16/326_cadip_staging.ipynb +++ b/notebooks/sprints/sprint16/326_cadip_staging.ipynb @@ -27,7 +27,7 @@ "pp = pprint.PrettyPrinter(indent=2, width=80, sort_dicts=False, compact=True)\n", "session = requests.Session()\n", "user = os.environ[\"JUPYTERHUB_USER\"] if cluster_mode else os.environ[\"RSPY_HOST_USER\"]\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo(owner_id = user)\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo(owner_id = user)\n", "if os.getenv(\"RSPY_LOCAL_MODE\") == \"1\":\n", " href = \"http://rs-server-cadip:8000\" \n", " href_staging = \"http://rs-server-staging:8000\"\n", diff --git a/notebooks/sprints/sprint17/342_cadip_staging.ipynb b/notebooks/sprints/sprint17/342_cadip_staging.ipynb index 656cccce..a23c5f96 100644 --- a/notebooks/sprints/sprint17/342_cadip_staging.ipynb +++ b/notebooks/sprints/sprint17/342_cadip_staging.ipynb @@ -39,7 +39,7 @@ "pp = pprint.PrettyPrinter(indent=2, width=80, sort_dicts=False, compact=True)\n", "session = requests.Session()\n", "user = os.environ[\"JUPYTERHUB_USER\"] if cluster_mode else os.environ[\"RSPY_HOST_USER\"]\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo(owner_id = user)\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo(owner_id = user)\n", "if os.getenv(\"RSPY_LOCAL_MODE\") == \"1\":\n", " href = \"http://rs-server-cadip:8000\"\n", " href_adgs = \"http://rs-server-adgs:8000\"\n", diff --git a/notebooks/sprints/sprint19/530_rsclient_staging.ipynb b/notebooks/sprints/sprint19/530_rsclient_staging.ipynb index 6a4182bb..6b674be1 100644 --- a/notebooks/sprints/sprint19/530_rsclient_staging.ipynb +++ b/notebooks/sprints/sprint19/530_rsclient_staging.ipynb @@ -27,7 +27,7 @@ "\n", "pp = pprint.PrettyPrinter(indent=2, width=80, sort_dicts=False, compact=True)\n", "session = requests.Session()\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo()\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo()\n", "\n", "if os.getenv(\"RSPY_LOCAL_MODE\") == \"1\":\n", " href_cadip = \"http://rs-server-cadip:8000\"\n", diff --git a/notebooks/sprints/sprint20/404_582_rsclient.ipynb b/notebooks/sprints/sprint20/404_582_rsclient.ipynb index e2631744..672938a8 100644 --- a/notebooks/sprints/sprint20/404_582_rsclient.ipynb +++ b/notebooks/sprints/sprint20/404_582_rsclient.ipynb @@ -28,7 +28,7 @@ "\n", "pp = pprint.PrettyPrinter(indent=2, width=80, sort_dicts=False, compact=True)\n", "session = requests.Session()\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo()\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo()\n", "\n", "if os.getenv(\"RSPY_LOCAL_MODE\") == \"1\":\n", " href_cadip = \"http://rs-server-cadip:8000\"\n", diff --git a/notebooks/sprints/sprint20/493_test_adgs_search.ipynb b/notebooks/sprints/sprint20/493_test_adgs_search.ipynb index 18175b80..f7784c9e 100644 --- a/notebooks/sprints/sprint20/493_test_adgs_search.ipynb +++ b/notebooks/sprints/sprint20/493_test_adgs_search.ipynb @@ -240,7 +240,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11" + "version": "3.11.7" } }, "nbformat": 4, diff --git a/notebooks/z-integration/z_stac_validation.ipynb b/notebooks/z-integration/z_stac_validation.ipynb index 147ab5a9..2003bcc2 100644 --- a/notebooks/z-integration/z_stac_validation.ipynb +++ b/notebooks/z-integration/z_stac_validation.ipynb @@ -18,7 +18,7 @@ "# Init environment before running a demo notebook.\n", "from resources.utils import *\n", "user = os.environ[\"JUPYTERHUB_USER\"] if cluster_mode else os.environ[\"RSPY_HOST_USER\"]\n", - "auxip_client, cadip_client, catalog_client, staging_client, prip_client = init_demo(owner_id = user)\n", + "auxip_client, cadip_client, catalog_client, staging_client, prip_client, edrs_client = init_demo(owner_id = user)\n", "\n", "from resources.utils import * # reload the global vars again" ]