diff --git a/build/build-docker-image.sh b/build/build-docker-image.sh index 7ef7b6fa3f159e92b8f8a7a49939d4069e9b7ad8..e4e080c4d8e8702c1bc9fe4d0abb10ecf54075a5 100755 --- a/build/build-docker-image.sh +++ b/build/build-docker-image.sh @@ -52,7 +52,7 @@ pushd "${SCRIPT_DIR}/../cozystack" || exit echo "Preparing easy-cozy image version ${COMPLETE_IMAGE_NAME}" echo "Refreshing base image..." -docker pull debian:stable-slim +# docker pull ubuntu:20.10 echo "Building ${COMPLETE_IMAGE_NAME}" docker build --no-cache -t ${COMPLETE_IMAGE_NAME} . diff --git a/cozystack/Dockerfile b/cozystack/Dockerfile index 64611aecfdb45551d84e3e4a382a248dd275ed2e..1941eb8e664c25396566e4c94132133d021f8e8b 100644 --- a/cozystack/Dockerfile +++ b/cozystack/Dockerfile @@ -1,7 +1,8 @@ -FROM ubuntu:20.10 AS installer +FROM ubuntu:focal AS installer -ARG COZY_VERSION=1.4.36 -ARG NODE_VERSION=12.13.0 +ARG COZY_VERSION=1.5.8 +ARG NODE_VERSION=16.19.0 +ARG DEBIAN_FRONTEND=noninteractive WORKDIR /tmp @@ -11,10 +12,13 @@ COPY install.sh / RUN chmod u+x /install.sh RUN /install.sh -FROM ubuntu:20.10 +FROM ubuntu:focal + +ARG DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get -y install git imagemagick \ && rm -rf /var/cache/apt +RUN sed -i 's/rights="none" pattern="PDF"/rights="read | write" pattern="PDF"/' /etc/ImageMagick-6/policy.xml RUN groupadd --gid 1000 cozy && useradd --gid 1000 --uid 1000 -m -d /usr/local/cozy-stack cozy \ && mkdir /etc/cozy && chown cozy:cozy /etc/cozy \ && mkdir /usr/local/cozy-stack/scripts diff --git a/create-instance.sh b/create-instance.sh index 0dc17db56daf23f90af79ce9ab2a66bec3c74e70..bbf0b8c18740449053b618d60a43bc9f4b40b4d0 100755 --- a/create-instance.sh +++ b/create-instance.sh @@ -22,14 +22,17 @@ TMPFILE=$(mktemp /tmp/cozyXXX) echo "Creating instance ${INSTANCE_ID}.${COZY_TLD} ..." -docker-compose exec cozy ./cozy instances add $OIDC_CONTEXT --host 0.0.0.0 --apps drive,collect,settings,home "${INSTANCE_ID}.${COZY_TLD}" | tee "${TMPFILE}" +docker-compose exec cozy ./cozy instances add $OIDC_CONTEXT --host 0.0.0.0 --locale "fr" --apps drive,settings,home "${INSTANCE_ID}.${COZY_TLD}" | tee "${TMPFILE}" # Install grand lyon apps -docker-compose exec cozy ./cozy konnectors install enedisgrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/llle_project/enedis-konnector.git#build-dev -docker-compose exec cozy ./cozy konnectors install grdfgrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/llle_project/grdf-konnector.git#build-dev -docker-compose exec cozy ./cozy konnectors install eglgrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/llle_project/egl-konnector.git#build-dev -docker-compose exec cozy ./cozy apps install ecolyo --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/llle_project/ecolyo.git#build-dev -docker-compose exec cozy ./cozy apps install pilote --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/solidarite/monparcourssocial/mps-usager.git#build-dev +docker-compose exec cozy ./cozy konnectors install enedissgegrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/llle_project/enedis-sge-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors install enedisgrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/llle_project/enedis-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors install grdfgrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/llle_project/grdf-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors install eglgrandlyon --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/llle_project/egl-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors install resetelec --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/llle_project/reset-elec-konnector.git#build +docker-compose exec cozy ./cozy apps install ecolyo --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/llle_project/ecolyo.git#build-dev +docker-compose exec cozy ./cozy apps install pilote --domain "${INSTANCE_ID}.${COZY_TLD}" git://forge.grandlyon.com/web-et-numerique/factory/monparcourssocial/mps-usager.git#build-dev + ## To replace by registry://store/something after next cozy-stack release docker-compose exec cozy ./cozy apps install --domain "${INSTANCE_ID}.${COZY_TLD}" store registry://store/stable | tee -a "${TMPFILE}" diff --git a/db-init.sh b/db-init.sh index 2d9cf18c17bbf75201b476304218738c86022257..3052e543890a1a07f09a4601f3c1f05f94aed7ab 100755 --- a/db-init.sh +++ b/db-init.sh @@ -6,8 +6,14 @@ echo Adding secrets to DB ... source .env -docker-compose exec db curl -X PUT -d "{\"_id\":\"eglgrandlyon\",\"grant_mode\":\"secret\",\"slug\":\"eglgrandlyon\",\"secret\":{\"eglBaseURL\":\"${EGL_BASE_URL}\",\"eglAPIAuthKey\":\"${EGL_API_AUTH_KEY}\"}}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/eglgrandlyon -docker-compose exec db curl -X PUT -d "{\"_id\":\"enedisgrandlyon\",\"grant_mode\":\"authorization_code\",\"client_id\":\"${ENEDIS_CLIENT_ID}\",\"client_secret\":\"${ENEDIS_CLIENT_SECRET}\",\"auth_endpoint\":\"${ENEDIS_AUTH_ENDPOINT}\",\"token_endpoint\": \"${ENEDIS_TOKEN_ENDPOINT}\",\"token_mode\":\"get\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/enedisgrandlyon -docker-compose exec db curl -X PUT -d "{\"_id\":\"grdfgrandlyon\",\"grant_mode\":\"authorization_code\",\"client_id\":\"${GRDF_CLIENT_ID}\",\"client_secret\":\"${GRDF_CLIENT_SECRET}\",\"auth_endpoint\":\"${GRDF_AUTH_ENDPOINT}\",\"token_endpoint\": \"${GRDF_TOKEN_ENDPOINT}\",\"token_mode\":\"get\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/grdfgrandlyon -docker-compose exec db curl -X PUT -d "{\"_id\":\"cc.cozycloud.dacc.dev\",\"token\":\"${DACC_DEV_TOKEN}\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-remote-secrets/cc.cozycloud.dacc.dev -docker-compose exec db curl -X PUT -d "{\"_id\":\"org.ecolyo.dju\",\"token\":\"${API_DATAGRANDLYON_TOKEN}\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-remote-secrets/org.ecolyo.dju +# ECOLYO +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"eglgrandlyon\",\"grant_mode\":\"secret\",\"slug\":\"eglgrandlyon\",\"secret\":{\"eglBaseURL\":\"${EGL_BASE_URL}\",\"eglAPIAuthKey\":\"${EGL_API_AUTH_KEY}\"}}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/eglgrandlyon +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"enedisgrandlyon\",\"grant_mode\":\"authorization_code\",\"client_id\":\"${ENEDIS_CLIENT_ID}\",\"client_secret\":\"${ENEDIS_CLIENT_SECRET}\",\"auth_endpoint\":\"${ENEDIS_AUTH_ENDPOINT}\",\"token_endpoint\": \"${ENEDIS_TOKEN_ENDPOINT}\",\"token_mode\":\"get\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/enedisgrandlyon +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"grdfgrandlyon\",\"grant_mode\":\"authorization_code\",\"client_id\":\"${GRDF_CLIENT_ID}\",\"client_secret\":\"${GRDF_CLIENT_SECRET}\",\"auth_endpoint\":\"${GRDF_AUTH_ENDPOINT}\",\"token_endpoint\": \"${GRDF_TOKEN_ENDPOINT}\",\"token_mode\":\"get\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/grdfgrandlyon +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"org.ecolyo.dju\",\"token\":\"${API_DATAGRANDLYON_TOKEN}\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-remote-secrets/org.ecolyo.dju +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"grdfgrandlyon.delete\",\"grant_mode\":\"secret\",\"slug\":\"grdfgrandlyon\",\"secret\":{\"client_id\":\"${GRDF_CLIENT_ID}\",\"client_secret\":\"${GRDF_CLIENT_SECRET}\"}}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/grdfgrandlyon.delete +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"enedissgegrandlyon\",\"grant_mode\":\"secret\",\"slug\":\"enedissgegrandlyon\",\"secret\":{\"sgeLogin\":\"${SGE_LOGIN}\",\"apiToken\":\"${API_TOKEN}\",\"boToken\":\"${BO_TOKEN}\",\"boBaseUrl\":\"${BO_URL}\",\"contractId\":\"${SGE_CONTRACT_ID}\",\"wso2BaseUrl\":\"${WSO2_BASE_URL}\"}}" http://127.0.0.1:5984/secrets%2Fio-cozy-account_types/enedissgegrandlyon +# MPS +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"org.mps.registry.rec\",\"token\":\"${REGISTRY_COZY_TOKEN}\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-remote-secrets/org.mps.registry.rec +# DACC +docker-compose exec db curl -u admin:password -X PUT -d "{\"_id\":\"cc.cozycloud.dacc.dev_v2\",\"token\":\"${DACC_DEV_TOKEN}\"}" http://127.0.0.1:5984/secrets%2Fio-cozy-remote-secrets/cc.cozycloud.dacc.dev diff --git a/docker-compose.yml b/docker-compose.yml index 8d68f971564533e54fca560a5b4f13aeff4dc6e8..ebb3bc886ffd0f1ce0103deb48c52214d8fc1671 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,19 +1,17 @@ -version: '3.0' - +version: '3.7' services: db: - image: couchdb:2.3.1 + image: couchdb:3.2.2 environment: + COUCHDB_USER: "admin" + COUCHDB_PASSWORD: "password" EGL_BASE_URL: ${EGL_BASE_URL} EGL_API_AUTH_KEY: ${EGL_API_AUTH_KEY} volumes: - ${DATABASE_DIRECTORY}:/opt/couchdb/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro - logging: - driver: loki - options: - loki-url: http://localhost:3100/loki/api/v1/push + - /root/easy-cozy/configs/local.ini:/opt/couchdb/etc/local.ini restart: unless-stopped ports: - 5984:5984 @@ -45,20 +43,6 @@ services: networks: - cozy-network - keycloak: - image: jboss/keycloak:latest - volumes: - - /etc/localtime:/etc/localtime:ro - - /etc/timezone:/etc/timezone:ro - - ./keycloak:/tmp/kc - ports: - - 8090:8080 - environment: - - KEYCLOAK_USER=admin - - KEYCLOAK_PASSWORD=admin - - KEYCLOAK_IMPORT=/tmp/kc/realm.json - networks: - - cozy-network networks: cozy-network: diff --git a/install.sh b/install.sh index fea9c89167f8f3ceaa39453b8881388e8099d065..bd53211ce0af1fa1aa6faffa0c1ad022fa0edc66 100755 --- a/install.sh +++ b/install.sh @@ -2,7 +2,7 @@ # Initialise your cozy cloud / reset it if it already exists (this will delete all your data and instances) # Config file generation -sudo ./generate-cozy-yaml.sh +#sudo ./generate-cozy-yaml.sh # Build the image if it doesn't exists if [[ "$(docker images -q npernoud/easy-cozy:latest-amd64 2> /dev/null)" == "" ]]; then diff --git a/update_apps.sh b/update_apps.sh index c6993770c6ad02b55ff6bff8d13a6ace9f5822e8..4fa68e881474e80e0971a18ed23691af44830a36 100755 --- a/update_apps.sh +++ b/update_apps.sh @@ -3,5 +3,5 @@ echo "Updating Apps ..." -docker-compose exec cozy ./cozy apps update ecolyo --all-domains git://forge.grandlyon.com/web-et-numerique/llle_project/ecolyo.git#build-dev -# docker-compose exec cozy ./cozy apps install pilote --all-domains git://forge.grandlyon.com/solidarite/monparcourssocial/mps-usager.git#build +docker-compose exec cozy ./cozy apps update ecolyo --all-domains git://forge.grandlyon.com/web-et-numerique/factory/llle_project/ecolyo.git#build-dev +# docker-compose exec cozy ./cozy apps install pilote --all-domains git://forge.grandlyon.com/web-et-numerique/factory/monparcourssocial/mps-usager.git#build diff --git a/update_konnectors.sh b/update_konnectors.sh index 4fb2ace6d676307b70da9bf78e5b96082e46b9a8..de1db967654099d518819c85d9bd07eb6c0a6854 100644 --- a/update_konnectors.sh +++ b/update_konnectors.sh @@ -3,6 +3,6 @@ echo "Updating Konnectors ..." -docker-compose exec cozy ./cozy konnectors update enedisgrandlyon --all-domains git://forge.grandlyon.com/web-et-numerique/llle_project/enedis-konnector.git#build-dev -docker-compose exec cozy ./cozy konnectors update grdfgrandlyon --all-domains git://forge.grandlyon.com/web-et-numerique/llle_project/grdf-konnector.git#build-dev -docker-compose exec cozy ./cozy konnectors update eglgrandlyon --all-domains git://forge.grandlyon.com/web-et-numerique/llle_project/egl-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors update enedisgrandlyon --all-domains git://forge.grandlyon.com/web-et-numerique/factory/llle_project/enedis-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors update grdfgrandlyon --all-domains git://forge.grandlyon.com/web-et-numerique/factory/llle_project/grdf-konnector.git#build-dev +docker-compose exec cozy ./cozy konnectors update eglgrandlyon --all-domains git://forge.grandlyon.com/web-et-numerique/factory/llle_project/egl-konnector.git#build-dev