From 2936e3bc2aea2fe2324da03672f61c23a9932f2e Mon Sep 17 00:00:00 2001 From: Maicol Battistini Date: Tue, 1 Oct 2024 17:10:54 +0200 Subject: [PATCH] =?UTF-8?q?feat(ckan):=20=F0=9F=94=A7=20Migrate=20extensio?= =?UTF-8?q?n=20configs=20to=20.ckan-env?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Removed `01_set_extensions_config.sh` and transferred all extension configurations to `.ckan-env`. This simplifies the configuration management by consolidating environment variables into a single file. --- compose/2.11/.ckan-env | 28 +++++++++++++++++-- .../01_set_extensions_config.sh | 26 ----------------- 2 files changed, 26 insertions(+), 28 deletions(-) delete mode 100644 compose/2.11/docker-entrypoint.d/01_set_extensions_config.sh diff --git a/compose/2.11/.ckan-env b/compose/2.11/.ckan-env index 991f415..738cfb4 100644 --- a/compose/2.11/.ckan-env +++ b/compose/2.11/.ckan-env @@ -2,6 +2,8 @@ # Information about how it works: https://github.com/okfn/ckanext-envvars # Note that variables here take presedence over build/up time variables in .env +##### CKAN ##### + DEVELOPMENT=true # Set to true to disable CKAN from starting and serve a maintenance page @@ -17,7 +19,7 @@ CKAN___BEAKER__SESSION__SECRET=CHANGE_ME CKAN___API_TOKEN__JWT__ENCODE__SECRET=string:CHANGE_ME CKAN___API_TOKEN__JWT__DECODE__SECRET=string:CHANGE_ME # CKAN Plugins -CKAN__PLUGINS="envvars tracking image_view text_view datatables_view datastore datapusher spatial_metadata spatial_query harvest ckan_harvester googleanalytics dcat dcat_rdf_harvester dcat_json_harvester dcat_json_interface structured_data d4science d4science_theme" +CKAN__PLUGINS="tracking image_view text_view datatables_view datastore datapusher spatial_metadata spatial_query harvest ckan_harvester googleanalytics dcat dcat_rdf_harvester dcat_json_harvester dcat_json_interface structured_data d4science d4science_theme envvars" # CKAN requires storage path to be set in order for filestore to be enabled CKAN__STORAGE_PATH=/srv/app/data CKAN__WEBASSETS__PATH=/srv/app/data/webassets @@ -39,6 +41,28 @@ CKAN__DATAPUSHER__CALLBACK_URL_BASE=http://ckan:5000/ CKAN__DATAPUSHER__API_TOKEN=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJ6M0lGRGw4SVdFR3lVRzFYRHJ0cm56WmNmcDlzbmFuUHlUMjdqLXRVSW9nIiwiaWF0IjoxNjc3MDYwNjQ1fQ.ECCa0wU-FOOGpdE9_TTVj__2J9SfANRBD6gRClBvPk0 # CKAN__DATAPUSHER__API_TOKEN=replace_this_with_api_token_once_ckan_starts -# Solr configuration +##### EXTENSION CONFIGS ##### +# Spatial +CKANEXT__SPATIAL__COMMON_MAP__TYPE="Stadia.StamenTerrain" +CKANEXT__SPATIAL__COMMON_MAP__MAX_ZOOM="18" +CKANEXT__SPATIAL__SEARCH_BACKEND="solr-spatial-field" +CKAN__SEARCH__SOLR_ALLOWED_QUERY_PARSERS="solr-spatial-field" + +# Harvester +CKAN__HARVEST__MQ__TYPE=redis +CKAN__HARVEST__MQ__HOSTNAME=redis + +# Google Analytics +CKAN___GOOGLEANALYTICS__ID="UA-1010101-1" + +# Keycloak +CKANEXT__KEYCLOAK__SERVER_URL="link_to_keycloack_authentication_url" +CKANEXT__KEYCLOAK__CLIENT_ID="client_id" +CKANEXT__KEYCLOAK__REALM_NAME="realm_name" +CKANEXT__KEYCLOAK__REDIRECT_URI="http://localhost:5000/user/sso_login" +CKANEXT__KEYCLOAK__CLIENT_SECRET_KEY="client_secret_key" +CKANEXT__KEYCLOAK__ENABLE_CKAN_INTERNAL_LOGIN="True" + +##### SOLR ##### CKAN_VERSION=2.11 CKAN_CORE_NAME=ckan diff --git a/compose/2.11/docker-entrypoint.d/01_set_extensions_config.sh b/compose/2.11/docker-entrypoint.d/01_set_extensions_config.sh deleted file mode 100644 index 221a5d6..0000000 --- a/compose/2.11/docker-entrypoint.d/01_set_extensions_config.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -declare -A config_values=( - ["ckan.plugins"]="${CKAN__PLUGINS}" - # Spatial - ["ckanext.spatial.common_map.type"]="Stadia.StamenTerrain" - ["ckanext.spatial.common_map.max_zoom"]="18" - ["ckanext.spatial.search_backend"]="solr-spatial-field" - ["ckan.search.solr_allowed_query_parsers"]="field" - # Harvest - ["ckan.harvest.mq.type"]="redis" - ["ckan.harvest.mq.hostname"]="redis" - # Google Analytics - ["googleanalytics.id"]="UA-1010101-1" - # Keycloak - ["ckanext.keycloak.server_url"]="link_to_keycloack_authentication_url" - ["ckanext.keycloak.client_id"]="client_id" - ["ckanext.keycloak.realm_name"]="realm_name" - ["ckanext.keycloak.redirect_uri"]="http://localhost:5000/user/sso_login" - ["ckanext.keycloak.client_secret_key"]="client_secret_key" - ["ckanext.keycloak.enable_ckan_internal_login"]="True" -) - -for key in "${!config_values[@]}"; do - ckan config-tool "${APP_DIR}"/production.ini "${key}=${config_values[$key]}" -done