From 66d3daa074e0ff0e4044d01f57f9be2642edfad4 Mon Sep 17 00:00:00 2001 From: martin <74269598+martabal@users.noreply.github.com> Date: Mon, 19 Feb 2024 03:57:24 +0100 Subject: [PATCH] fix: shell scripts (#7189) * fix: bash scripts * fix: use bash * fix: e2e --- install.sh | 4 +-- server/Dockerfile | 2 +- server/start-microservices.sh | 3 +- server/start-server.sh | 3 +- server/start.sh | 53 +++++++++-------------------------- 5 files changed, 21 insertions(+), 44 deletions(-) diff --git a/install.sh b/install.sh index 1625fa080c..fc894ce21e 100755 --- a/install.sh +++ b/install.sh @@ -38,9 +38,9 @@ populate_upload_location() { start_docker_compose() { echo "Starting Immich's docker containers" - if docker compose > /dev/null 2>&1; then + if docker compose >/dev/null 2>&1; then docker_bin="docker compose" - elif docker-compose > /dev/null 2>&1; then + elif docker-compose >/dev/null 2>&1; then docker_bin="docker-compose" else echo "Cannot find \`docker compose\` or \`docker-compose\`." diff --git a/server/Dockerfile b/server/Dockerfile index eb62b8812a..1331ea6d48 100644 --- a/server/Dockerfile +++ b/server/Dockerfile @@ -59,4 +59,4 @@ COPY LICENSE /LICENSE ENV PATH="${PATH}:/usr/src/app/bin" VOLUME /usr/src/app/upload EXPOSE 3001 -ENTRYPOINT ["tini", "--", "/bin/sh"] +ENTRYPOINT ["tini", "--", "/bin/bash"] diff --git a/server/start-microservices.sh b/server/start-microservices.sh index efdafaac02..c9e2cb42fb 100755 --- a/server/start-microservices.sh +++ b/server/start-microservices.sh @@ -1,2 +1,3 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash + ./start.sh microservices diff --git a/server/start-server.sh b/server/start-server.sh index acbbb82b99..7ef959f63c 100755 --- a/server/start-server.sh +++ b/server/start-server.sh @@ -1,2 +1,3 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash + ./start.sh immich diff --git a/server/start.sh b/server/start.sh index 268989dda0..9dba2e2922 100755 --- a/server/start.sh +++ b/server/start.sh @@ -1,42 +1,17 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash -lib_path="/usr/lib/$(arch)-linux-gnu/libmimalloc.so.2" -export LD_PRELOAD="$lib_path" - -if [ "$DB_URL_FILE" ]; then - DB_URL_CONTENT=$(cat "$DB_URL_FILE") - export DB_URL="$DB_URL_CONTENT" - unset DB_URL_FILE -fi - -if [ "$DB_HOSTNAME_FILE" ]; then - DB_HOSTNAME_CONTENT=$(cat "$DB_HOSTNAME_FILE") - export DB_HOSTNAME="$DB_HOSTNAME_CONTENT" - unset DB_HOSTNAME_FILE -fi - -if [ "$DB_DATABASE_NAME_FILE" ]; then - DB_DATABASE_CONTENT=$(cat "$DB_DATABASE_NAME_FILE") - export DB_DATABASE_NAME="$DB_DATABASE_CONTENT" - unset DB_DATABASE_NAME_FILE -fi - -if [ "$DB_USERNAME_FILE" ]; then - DB_USERNAME_CONTENT=$(cat "$DB_USERNAME_FILE") - export DB_USERNAME="$DB_USERNAME_CONTENT" - unset DB_USERNAME_FILE -fi - -if [ "$DB_PASSWORD_FILE" ]; then - DB_PASSWORD_CONTENT=$(cat "$DB_PASSWORD_FILE") - export DB_PASSWORD="$DB_PASSWORD_CONTENT" - unset DB_PASSWORD_FILE -fi - -if [ "$REDIS_PASSWORD_FILE" ]; then - REDIS_PASSWORD_CONTENT=$(cat "$REDIS_PASSWORD_FILE") - export DB_PASSWORD="$REDIS_PASSWORD_CONTENT" - unset REDIS_PASSWORD_FILE -fi +read_file_and_export() { + if [ -n "${!1}" ]; then + content="$(cat "${!1}")" + export "$2"="${content}" + unset "$1" + fi +} +read_file_and_export "DB_URL_FILE" "DB_URL" +read_file_and_export "DB_HOSTNAME_FILE" "DB_HOSTNAME" +read_file_and_export "DB_DATABASE_NAME_FILE" "DB_DATABASE_NAME" +read_file_and_export "DB_USERNAME_FILE" "DB_USERNAME" +read_file_and_export "DB_PASSWORD_FILE" "DB_PASSWORD" +read_file_and_export "REDIS_PASSWORD_FILE" "REDIS_PASSWORD" exec node /usr/src/app/dist/main "$@"