From c375071c528fefe6009171c00bf10c1ce6755a5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20PAILHAREY?= <rpailharey@grandlyon.com> Date: Tue, 30 Nov 2021 15:07:29 +0000 Subject: [PATCH] Feat/add assets route --- .gitignore | 2 +- docker-compose.local.yml | 16 +++++----------- docker-compose.yml | 2 +- nginx/site.conf | 7 ++----- scripts/import-convert-assets.sh | 29 +++++++++++++++++++++++++++++ 5 files changed, 38 insertions(+), 18 deletions(-) create mode 100755 scripts/import-convert-assets.sh diff --git a/.gitignore b/.gitignore index 70d1ca62..06f1ac1a 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,7 @@ /coverage # production /build - +/image-lib # misc .DS_Store /.env diff --git a/docker-compose.local.yml b/docker-compose.local.yml index bb3f992e..14115d60 100644 --- a/docker-compose.local.yml +++ b/docker-compose.local.yml @@ -2,26 +2,20 @@ version: '3.7' services: nginx: image: nginx:1.16 - depends_on: - - front - - backend volumes: - ./nginx/nginx.conf:/etc/nginx/nginx.conf - ./nginx/site.conf:/etc/nginx/conf.d/default.conf - ./cert.pem:/etc/nginx/cert.pem - ./key.pem:/etc/nginx/key.pem - - ./../${IMAGE_FOLDER}:/usr/share/nginx/html/lib/${IMAGE_FOLDER} ports: - 443:443 depends_on: - backend - environment: - - IMAGE_FOLDER=${IMAGE_FOLDER} # For linux users # extra_hosts: - # - "host.docker.internal:host-gateway" + # - 'host.docker.internal:host-gateway' - database: + database-agent: image: mysql:5 ports: - 3306:3306 @@ -37,7 +31,7 @@ services: backend: image: registry.forge.grandlyon.com/web-et-numerique/llle_project/backoffice-server:dev depends_on: - database: + database-agent: condition: service_healthy restart: unless-stopped volumes: @@ -45,7 +39,7 @@ services: - ./configs:/app/configs - ./letsencrypt_cache:/app/letsencrypt_cache - ./data:/app/data - - ./../${IMAGE_FOLDER}:/app/${IMAGE_FOLDER} + - ./${IMAGE_FOLDER}:/app/${IMAGE_FOLDER} ports: - ${HTTPS_PORT}:${HTTPS_PORT} - 8090:8090 @@ -63,6 +57,6 @@ services: - DATABASE_USER=${DATABASE_USER} - DATABASE_NAME=${DATABASE_NAME} - DATABASE_PASSWORD=${DATABASE_PASSWORD} - - DATABASE_HOST=database + - DATABASE_HOST=database-agent - MOCK_OAUTH2=${MOCK_OAUTH2} - IMAGE_FOLDER=${IMAGE_FOLDER} diff --git a/docker-compose.yml b/docker-compose.yml index 86d3e525..0ef136a4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -43,7 +43,7 @@ services: - ./configs:/app/configs - ./letsencrypt_cache:/app/letsencrypt_cache - ./data:/app/data - - ./image-lib/${IMAGE_FOLDER}:/app/${IMAGE_FOLDER} + - ./${IMAGE_FOLDER}:/app/${IMAGE_FOLDER} ports: - ${HTTPS_PORT}:${HTTPS_PORT} - 8190:8090 diff --git a/nginx/site.conf b/nginx/site.conf index 2ab117ce..8304b5b0 100644 --- a/nginx/site.conf +++ b/nginx/site.conf @@ -24,10 +24,7 @@ server { location /swagger { proxy_pass https://backend:1443/swagger; } - location ~ ^/assets/(.+\.(?:gif|jpe?g|svg))$ { - alias /usr/share/nginx/html/lib/$1; - gzip_static on; - expires max; - add_header Cache-Control public; + location /assets { + proxy_pass https://backend:1443/assets; } } \ No newline at end of file diff --git a/scripts/import-convert-assets.sh b/scripts/import-convert-assets.sh new file mode 100755 index 00000000..73615174 --- /dev/null +++ b/scripts/import-convert-assets.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +# Get env variables +. ../.env + +REGISTRY_ID=409 +EMAIL_ASSETS_PATH="src/assets/icons/email" +ECOGESTURE_ASSETS_PATH="src/assets/icons/visu/ecogesture" +pwd=$(pwd) + +# Fetch and convert email assets +curl "https://forge.grandlyon.com/api/v4/projects/${REGISTRY_ID}/repository/archive?path=${EMAIL_ASSETS_PATH}" --output email.tar.gz +tar -xf email.tar.gz +cd *-email/$EMAIL_ASSETS_PATH && for file in *.svg; do inkscape -h 200 --export-type="png" $file; done && rm *.svg + +cd $pwd +# Fetch and convert ecogesture assets +curl "https://forge.grandlyon.com/api/v4/projects/${REGISTRY_ID}/repository/archive?path=${ECOGESTURE_ASSETS_PATH}" --output ecogesture.tar.gz +tar -xf ecogesture.tar.gz +cd *-ecogesture/$ECOGESTURE_ASSETS_PATH && for file in *.svg; do inkscape -h 200 --export-type="png" $file; done && rm *.svg + +# Cleanup +cd $pwd +rm -rf ../${IMAGE_FOLDER}/* + +# Copy assets in IMAGE_FOLDER +mv *-email/$EMAIL_ASSETS_PATH/* ../${IMAGE_FOLDER} +mv *-ecogesture/$ECOGESTURE_ASSETS_PATH ../${IMAGE_FOLDER}/ecogesture +rm -rf email.tar.gz ecogesture.tar.gz *-email *-ecogesture -- GitLab