Skip to content

Commit

Permalink
Merge branch 'feature/v0.9.0' into 'master'
Browse files Browse the repository at this point in the history
feature/v0.9.0

See merge request upm-inesdata/inesdata-local-env!25
  • Loading branch information
ralconada-gmv committed Oct 24, 2024
2 parents ebb852b + 2ec9585 commit 1cc7244
Show file tree
Hide file tree
Showing 4 changed files with 134 additions and 10 deletions.
15 changes: 14 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,23 @@ La URL del portal público es la siquiente:

Para visualizar correctamente esta página es necesario hacer lo siguiente:
- Crear una instancia del tipo de contenido Landing Page en public-portal-backend: Content Manager > Landing Page. Guardar y publicar el contenido.
- Dar permiso de visualización en la API sobre el contenido que previamente se ah creado: Settings > Users & Permissions Plugin > Roles > Public > Permissions > Landding-page. Habilitar el checkbox "find".
- Dar permiso de visualización en la API sobre el contenido que previamente se ha creado: Settings > Users & Permissions Plugin > Roles > Public > Permissions > Landing-page. Habilitar el checkbox "find".
- Dar permiso para obtener el catálogo federado: Settings > Users & Permissions Plugin > Roles > Public > Permissions > Get-federated-catalog. Habilitar el checkbox "getFederatedCatalog".
- Dar permiso para obtener los vocabularios: Settings > Users & Permissions Plugin > Roles > Public > Permissions > Get-vocabularies. Habilitar el checkbox "getVocabularies".

Para crear nuevas secciones de menú y asociar contenido a estos, hay que seguir los siguientes pasos en Strapi:
- Crear un nuevo contenido de tipo "Generic Page". El contenido HTML incrustado en este contenido puede romper estilos u otros componentes del portal público.
- Accecer a Menus. Crear nuevo menú, cuyo title y slug deberá tener el siguiente valor: "public-portal-menu".
- Añadir nuevo menu item y rellenar los siguientes campos:
- Title: Texto que aparecerá en el front-end
- URL: Enlace externo. Solo rellenar cuando no se asocie un contenido asociado en Strapi.
- Target: Ventana de destino
- Text for URL: El texto que aparecerá en la URL (solo para contenido asociado).
- Relation (En la pestaña content): Añadir el contenido de tipo "Generic Page" creado anteriormente.
- Guardar los cambios.
- Dar permiso de visualización en la API sobre el tipo de contenido "Generic Page": Settings > Users & Permissions Plugin > Roles > Public > Permissions > Generic-page. Habilitar los checkbox "find" y "findOne".
- Dar permiso sobre los menus: Settings > Users & Permissions Plugin > Roles > Public > Permissions > Menus. Habilitar los checkbox "find" (para Menu y Menu-Item) y "findOne" (para Menu-Item).

## Hostnames

Los componentes que conforman el entorno local se comunican entre ellos a través de los nombres de host internos de Docker. Aunque casi todos son accesibles correctamente mediante `localhost`, hay una excepción que es `Keycloak`. Para poder acceder correctamente a la autorización de los portales de gestión de los conectores (inesdata-connector-interface) así como para acceder a la web de administración, Keycloak intentará acceder al host configurado en la propiedad `KC_HOSTNAME`. Se debe añarir la siguiente regla al archivo `hosts` del sistema operativo:
Expand Down
8 changes: 4 additions & 4 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ services:
retries: 30

connector-interface-c1:
image: ghcr.io/oeg-upm/inesdata-connector-interface:0.8.0
image: ghcr.io/oeg-upm/inesdata-connector-interface:0.8.2
ports:
- '8001:8080'
environment:
Expand All @@ -221,7 +221,7 @@ services:
- OAUTH2_ALLOWED_URLS=http://localhost:8001,http://localhost:19193,http://connector-c1:8001

connector-interface-c2:
image: ghcr.io/oeg-upm/inesdata-connector-interface:0.8.0
image: ghcr.io/oeg-upm/inesdata-connector-interface:0.8.2
ports:
- '8002:8080'
environment:
Expand All @@ -241,7 +241,7 @@ services:
- OAUTH2_ALLOWED_URLS=http://localhost:8002,http://localhost:29193,http://connector-c2:8002

public-portal-backend:
image: ghcr.io/oeg-upm/inesdata-public-portal-backend:0.7.0
image: ghcr.io/oeg-upm/inesdata-public-portal-backend:0.8.0
ports:
- '1337:1337'
volumes:
Expand Down Expand Up @@ -271,7 +271,7 @@ services:
condition: service_healthy

public-portal-frontend:
image: ghcr.io/oeg-upm/inesdata-public-portal-frontend:0.7.0
image: ghcr.io/oeg-upm/inesdata-public-portal-frontend:0.8.0
ports:
- '80:80'
environment:
Expand Down
7 changes: 7 additions & 0 deletions resources/db-init/connector/080_access_token_data.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
CREATE TABLE IF NOT EXISTS edc_accesstokendata
(
id VARCHAR NOT NULL PRIMARY KEY,
claim_token JSON NOT NULL,
data_address JSON NOT NULL,
additional_properties JSON DEFAULT '{}'
);
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"info": {
"_postman_id": "e8264589-9ea7-4a3e-beb8-9e24139d4834",
"_postman_id": "86c8f672-8694-4a9e-8d6a-12967bac8102",
"name": "INESData Connector Management API",
"description": "# ⛓️ INESData Connector Management API\n\nPrincipales métodos para la gestión de entidades en el conector de INESData",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
Expand Down Expand Up @@ -241,7 +241,7 @@
"response": []
},
{
"name": "Create Asset",
"name": "Create Asset Dataset",
"event": [
{
"listen": "test",
Expand Down Expand Up @@ -269,7 +269,111 @@
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"inesdata-asset\",\r\n \"properties\": {\r\n \"name\": \"inesdata-asset\",\r\n \"contenttype\": \"text/html\"\r\n },\r\n \"dataAddress\": {\r\n \"type\": \"HttpData\",\r\n \"name\": \"inesdata-home\",\r\n \"baseUrl\": \"https://inesdata-project.eu/content/en/index.html\",\r\n \"proxyPath\": \"true\"\r\n }\r\n}",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"asset-dataset\",\r\n \"properties\": {\r\n \"assetData\": {\r\n \"default-c1\": {\r\n \"title\": \"asset dataset\"\r\n },\r\n \"dataset2-c1\": []\r\n },\r\n \"name\": \"asset dataset para postman\",\r\n \"version\": \"1\",\r\n \"contenttype\": \"\",\r\n \"assetType\": \"dataset\",\r\n \"shortDescription\": \"asset dataset para postman\",\r\n \"dcterms:description\": \"<p>asset dataset para postman</p>\",\r\n \"dcat:byteSize\": \"\",\r\n \"dcterms:format\": \"\",\r\n \"dcat:keyword\": [\r\n \"asset2\"\r\n ]\r\n },\r\n \"dataAddress\": {\r\n \"type\": \"AmazonS3\",\r\n \"region\": \"us-east-1\",\r\n \"bucketName\": \"bucket-connector-1\",\r\n \"folderName\": \"carpeta_minio\",\r\n \"keyPrefix\": \"imagen04.jpeg\"\r\n },\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseUrl}}:19193/management/v3/assets",
"host": [
"{{baseUrl}}"
],
"port": "19193",
"path": [
"management",
"v3",
"assets"
]
},
"description": "Creación de Asset tipo HttpData en el conector connector-c1."
},
"response": []
},
{
"name": "Create Asset Service",
"event": [
{
"listen": "test",
"script": {
"exec": [
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{c1-jwt}}",
"type": "string"
}
]
},
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"asset-service\",\r\n \"properties\": {\r\n \"assetData\": {\r\n \"conector c2 para borrar con POSTMAN\": {\r\n \"title\": \"asset service para postman\"\r\n },\r\n \"vocabulary service c2\": {\r\n \"title\": \"asset service para postman\"\r\n },\r\n \"vocabulary defaulc c2\": []\r\n },\r\n \"name\": \"asset service para postman\",\r\n \"version\": \"1\",\r\n \"contenttype\": \"\",\r\n \"assetType\": \"service\",\r\n \"shortDescription\": \"asset service para postman\",\r\n \"dcterms:description\": \"<p>asset service para postman</p>\",\r\n \"dcat:byteSize\": \"\",\r\n \"dcterms:format\": \"\",\r\n \"dcat:keyword\": [\r\n \"service\"\r\n ]\r\n },\r\n \"dataAddress\": {\r\n \"type\": \"AmazonS3\",\r\n \"region\": \"us-east-1\",\r\n \"bucketName\": \"bucket-connector-2\",\r\n \"keyPrefix\": \"imagen01.jpeg\",\r\n \"folderName\": \"carpeta-minio\"\r\n }\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseUrl}}:19193/management/v3/assets",
"host": [
"{{baseUrl}}"
],
"port": "19193",
"path": [
"management",
"v3",
"assets"
]
},
"description": "Creación de Asset tipo HttpData en el conector connector-c1."
},
"response": []
},
{
"name": "Create Asset Machine Learning",
"event": [
{
"listen": "test",
"script": {
"exec": [
""
],
"type": "text/javascript",
"packages": {}
}
}
],
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{c1-jwt}}",
"type": "string"
}
]
},
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"asset-machine-learning\",\r\n \"properties\": {\r\n \"assetData\": {\r\n \"conector c2 para borrar con POSTMAN\": {\r\n \"title\": \"asset machine learning para postman\"\r\n },\r\n \"vocabulary machine learning c2\": {\r\n \"title\": \"asset machine learning para postman\"\r\n },\r\n \"vocabulary defaulc c2\": []\r\n },\r\n \"name\": \"asset machine learning para postman\",\r\n \"version\": \"1\",\r\n \"contenttype\": \"\",\r\n \"assetType\": \"machineLearning\",\r\n \"shortDescription\": \"asset machine learning para postman\",\r\n \"dcterms:description\": \"<p>asset machine learning para postman</p>\",\r\n \"dcat:byteSize\": \"\",\r\n \"dcterms:format\": \"\",\r\n \"dcat:keyword\": [\r\n \"machine learning\"\r\n ]\r\n },\r\n \"dataAddress\": {\r\n \"type\": \"AmazonS3\",\r\n \"region\": \"us-east-1\",\r\n \"bucketName\": \"bucket-connector-2\",\r\n \"keyPrefix\": \"imagen01.jpeg\",\r\n \"folderName\": \"carpeta-minio\"\r\n }\r\n}",
"options": {
"raw": {
"language": "json"
Expand Down Expand Up @@ -918,7 +1022,7 @@
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"inesdata-contract\",\r\n \"accessPolicyId\": \"inesdata-policy\",\r\n \"contractPolicyId\": \"inesdata-policy\",\r\n \"assetsSelector\": []\r\n}",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"inesdata-contract\",\r\n \"accessPolicyId\": \"inesdata-policy\",\r\n \"contractPolicyId\": \"inesdata-policy\",\r\n \"assetsSelector\": [\r\n {\r\n \"operandLeft\": \"https://w3id.org/edc/v0.0.1/ns/id\",\r\n \"operator\": \"in\",\r\n \"operandRight\": [\r\n \"asset-dataset\",\r\n \"asset-service\",\r\n \"asset-machine-learning\"\r\n ]\r\n }\r\n ]\r\n}",
"options": {
"raw": {
"language": "json"
Expand Down Expand Up @@ -970,7 +1074,7 @@
"header": [],
"body": {
"mode": "raw",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"inesdata-contract\",\r\n \"accessPolicyId\": \"inesdata-policy\",\r\n \"contractPolicyId\": \"inesdata-policy\",\r\n \"assetsSelector\": []\r\n}",
"raw": "{\r\n \"@context\": {\r\n \"@vocab\": \"https://w3id.org/edc/v0.0.1/ns/\"\r\n },\r\n \"@id\": \"inesdata-contract\",\r\n \"accessPolicyId\": \"inesdata-policy\",\r\n \"contractPolicyId\": \"inesdata-policy\",\r\n \"assetsSelector\": [\r\n {\r\n \"operandLeft\": \"https://w3id.org/edc/v0.0.1/ns/id\",\r\n \"operator\": \"in\",\r\n \"operandRight\": [\r\n \"asset-dataset\",\r\n \"asset-service\",\r\n \"asset-machine-learning\"\r\n ]\r\n }\r\n ]\r\n}",
"options": {
"raw": {
"language": "json"
Expand Down

0 comments on commit 1cc7244

Please sign in to comment.