diff --git a/.travis/test-entrypoint.sh b/.travis/test-entrypoint.sh index 9c1ea3e..22f1759 100755 --- a/.travis/test-entrypoint.sh +++ b/.travis/test-entrypoint.sh @@ -3,9 +3,10 @@ set -eu # copy of see .docker-files/entrypoint.sh - testing all versions version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } + if ! version_greater "2019.06" "2019.06-rc"; then exit 1; fi @@ -33,3 +34,18 @@ fi if ! version_greater "2019.05" "2019.05-dev"; then exit 1; fi +if ! version_greater "2020.07-1" "2020.07"; then + exit 1; +fi +if ! version_greater "2020.07-2" "2020.07-1"; then + exit 1; +fi +if ! version_greater "2020.07-1" "2020.07-dev"; then + exit 1; +fi +if ! version_greater "2020.09-rc" "2020.09-dev"; then + exit 1 +fi +if version_greater "2020.06-rc" "2020.09-dev"; then + exit 1; +fi diff --git a/2020.03/apache/Dockerfile b/2020.07-1/apache/Dockerfile similarity index 98% rename from 2020.03/apache/Dockerfile rename to 2020.07-1/apache/Dockerfile index 55fb6ea..10710e1 100644 --- a/2020.03/apache/Dockerfile +++ b/2020.07-1/apache/Dockerfile @@ -132,8 +132,8 @@ RUN set -ex;\ } > /etc/apache2/conf-available/remoteip.conf;\ a2enconf remoteip -ENV FRIENDICA_VERSION 2020.03 -ENV FRIENDICA_ADDONS 2020.03 +ENV FRIENDICA_VERSION "2020.07-1" +ENV FRIENDICA_ADDONS "2020.07-1" RUN set -ex; \ curl -fsSL -o friendica.tar.gz \ diff --git a/2020.03/apache/config/00apcu.config.php b/2020.07-1/apache/config/00apcu.config.php similarity index 100% rename from 2020.03/apache/config/00apcu.config.php rename to 2020.07-1/apache/config/00apcu.config.php diff --git a/2020.03/apache/config/01redis.config.php b/2020.07-1/apache/config/01redis.config.php similarity index 100% rename from 2020.03/apache/config/01redis.config.php rename to 2020.07-1/apache/config/01redis.config.php diff --git a/2020.03/apache/config/zz-docker.config.php b/2020.07-1/apache/config/zz-docker.config.php similarity index 100% rename from 2020.03/apache/config/zz-docker.config.php rename to 2020.07-1/apache/config/zz-docker.config.php diff --git a/2020.03/apache/cron.sh b/2020.07-1/apache/cron.sh similarity index 100% rename from 2020.03/apache/cron.sh rename to 2020.07-1/apache/cron.sh diff --git a/2020.03/fpm/entrypoint.sh b/2020.07-1/apache/entrypoint.sh similarity index 96% rename from 2020.03/fpm/entrypoint.sh rename to 2020.07-1/apache/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.03/fpm/entrypoint.sh +++ b/2020.07-1/apache/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.03/apache/setup_msmtp.sh b/2020.07-1/apache/setup_msmtp.sh similarity index 100% rename from 2020.03/apache/setup_msmtp.sh rename to 2020.07-1/apache/setup_msmtp.sh diff --git a/2020.03/apache/upgrade.exclude b/2020.07-1/apache/upgrade.exclude similarity index 100% rename from 2020.03/apache/upgrade.exclude rename to 2020.07-1/apache/upgrade.exclude diff --git a/2020.03/fpm-alpine/Dockerfile b/2020.07-1/fpm-alpine/Dockerfile similarity index 98% rename from 2020.03/fpm-alpine/Dockerfile rename to 2020.07-1/fpm-alpine/Dockerfile index 213eefb..1267baa 100644 --- a/2020.03/fpm-alpine/Dockerfile +++ b/2020.07-1/fpm-alpine/Dockerfile @@ -98,8 +98,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.03 -ENV FRIENDICA_ADDONS 2020.03 +ENV FRIENDICA_VERSION "2020.07-1" +ENV FRIENDICA_ADDONS "2020.07-1" RUN set -ex; \ curl -fsSL -o friendica.tar.gz \ diff --git a/2020.03/fpm-alpine/config/00apcu.config.php b/2020.07-1/fpm-alpine/config/00apcu.config.php similarity index 100% rename from 2020.03/fpm-alpine/config/00apcu.config.php rename to 2020.07-1/fpm-alpine/config/00apcu.config.php diff --git a/2020.03/fpm-alpine/config/01redis.config.php b/2020.07-1/fpm-alpine/config/01redis.config.php similarity index 100% rename from 2020.03/fpm-alpine/config/01redis.config.php rename to 2020.07-1/fpm-alpine/config/01redis.config.php diff --git a/2020.03/fpm-alpine/config/zz-docker.config.php b/2020.07-1/fpm-alpine/config/zz-docker.config.php similarity index 100% rename from 2020.03/fpm-alpine/config/zz-docker.config.php rename to 2020.07-1/fpm-alpine/config/zz-docker.config.php diff --git a/2020.03/fpm-alpine/cron.sh b/2020.07-1/fpm-alpine/cron.sh similarity index 100% rename from 2020.03/fpm-alpine/cron.sh rename to 2020.07-1/fpm-alpine/cron.sh diff --git a/2020.03/apache/entrypoint.sh b/2020.07-1/fpm-alpine/entrypoint.sh similarity index 96% rename from 2020.03/apache/entrypoint.sh rename to 2020.07-1/fpm-alpine/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.03/apache/entrypoint.sh +++ b/2020.07-1/fpm-alpine/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.03/fpm-alpine/setup_msmtp.sh b/2020.07-1/fpm-alpine/setup_msmtp.sh similarity index 100% rename from 2020.03/fpm-alpine/setup_msmtp.sh rename to 2020.07-1/fpm-alpine/setup_msmtp.sh diff --git a/2020.03/fpm-alpine/upgrade.exclude b/2020.07-1/fpm-alpine/upgrade.exclude similarity index 100% rename from 2020.03/fpm-alpine/upgrade.exclude rename to 2020.07-1/fpm-alpine/upgrade.exclude diff --git a/2020.03/fpm/Dockerfile b/2020.07-1/fpm/Dockerfile similarity index 98% rename from 2020.03/fpm/Dockerfile rename to 2020.07-1/fpm/Dockerfile index 6ed1c23..8343ff8 100644 --- a/2020.03/fpm/Dockerfile +++ b/2020.07-1/fpm/Dockerfile @@ -123,8 +123,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.03 -ENV FRIENDICA_ADDONS 2020.03 +ENV FRIENDICA_VERSION "2020.07-1" +ENV FRIENDICA_ADDONS "2020.07-1" RUN set -ex; \ curl -fsSL -o friendica.tar.gz \ diff --git a/2020.03/fpm/config/00apcu.config.php b/2020.07-1/fpm/config/00apcu.config.php similarity index 100% rename from 2020.03/fpm/config/00apcu.config.php rename to 2020.07-1/fpm/config/00apcu.config.php diff --git a/2020.03/fpm/config/01redis.config.php b/2020.07-1/fpm/config/01redis.config.php similarity index 100% rename from 2020.03/fpm/config/01redis.config.php rename to 2020.07-1/fpm/config/01redis.config.php diff --git a/2020.03/fpm/config/zz-docker.config.php b/2020.07-1/fpm/config/zz-docker.config.php similarity index 100% rename from 2020.03/fpm/config/zz-docker.config.php rename to 2020.07-1/fpm/config/zz-docker.config.php diff --git a/2020.03/fpm/cron.sh b/2020.07-1/fpm/cron.sh similarity index 100% rename from 2020.03/fpm/cron.sh rename to 2020.07-1/fpm/cron.sh diff --git a/2020.03/fpm-alpine/entrypoint.sh b/2020.07-1/fpm/entrypoint.sh similarity index 96% rename from 2020.03/fpm-alpine/entrypoint.sh rename to 2020.07-1/fpm/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.03/fpm-alpine/entrypoint.sh +++ b/2020.07-1/fpm/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.03/fpm/setup_msmtp.sh b/2020.07-1/fpm/setup_msmtp.sh similarity index 100% rename from 2020.03/fpm/setup_msmtp.sh rename to 2020.07-1/fpm/setup_msmtp.sh diff --git a/2020.03/fpm/upgrade.exclude b/2020.07-1/fpm/upgrade.exclude similarity index 100% rename from 2020.03/fpm/upgrade.exclude rename to 2020.07-1/fpm/upgrade.exclude diff --git a/2020.07/apache/Dockerfile b/2020.07/apache/Dockerfile index 7800abd..10710e1 100644 --- a/2020.07/apache/Dockerfile +++ b/2020.07/apache/Dockerfile @@ -132,8 +132,8 @@ RUN set -ex;\ } > /etc/apache2/conf-available/remoteip.conf;\ a2enconf remoteip -ENV FRIENDICA_VERSION 2020.07 -ENV FRIENDICA_ADDONS 2020.07 +ENV FRIENDICA_VERSION "2020.07-1" +ENV FRIENDICA_ADDONS "2020.07-1" RUN set -ex; \ curl -fsSL -o friendica.tar.gz \ diff --git a/2020.07/apache/entrypoint.sh b/2020.07/apache/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.07/apache/entrypoint.sh +++ b/2020.07/apache/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.07/fpm-alpine/Dockerfile b/2020.07/fpm-alpine/Dockerfile index 7cc25ed..1267baa 100644 --- a/2020.07/fpm-alpine/Dockerfile +++ b/2020.07/fpm-alpine/Dockerfile @@ -98,8 +98,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.07 -ENV FRIENDICA_ADDONS 2020.07 +ENV FRIENDICA_VERSION "2020.07-1" +ENV FRIENDICA_ADDONS "2020.07-1" RUN set -ex; \ curl -fsSL -o friendica.tar.gz \ diff --git a/2020.07/fpm-alpine/entrypoint.sh b/2020.07/fpm-alpine/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.07/fpm-alpine/entrypoint.sh +++ b/2020.07/fpm-alpine/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.07/fpm/Dockerfile b/2020.07/fpm/Dockerfile index fe5f13c..8343ff8 100644 --- a/2020.07/fpm/Dockerfile +++ b/2020.07/fpm/Dockerfile @@ -123,8 +123,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.07 -ENV FRIENDICA_ADDONS 2020.07 +ENV FRIENDICA_VERSION "2020.07-1" +ENV FRIENDICA_ADDONS "2020.07-1" RUN set -ex; \ curl -fsSL -o friendica.tar.gz \ diff --git a/2020.07/fpm/entrypoint.sh b/2020.07/fpm/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.07/fpm/entrypoint.sh +++ b/2020.07/fpm/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.09-dev/apache/Dockerfile b/2020.09-dev/apache/Dockerfile index 3ad3ca9..ef005dc 100644 --- a/2020.09-dev/apache/Dockerfile +++ b/2020.09-dev/apache/Dockerfile @@ -132,8 +132,8 @@ RUN set -ex;\ } > /etc/apache2/conf-available/remoteip.conf;\ a2enconf remoteip -ENV FRIENDICA_VERSION 2020.09-dev -ENV FRIENDICA_ADDONS 2020.09-dev +ENV FRIENDICA_VERSION "" +ENV FRIENDICA_ADDONS "" COPY *.sh upgrade.exclude / diff --git a/2020.09-dev/apache/entrypoint.sh b/2020.09-dev/apache/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.09-dev/apache/entrypoint.sh +++ b/2020.09-dev/apache/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.09-dev/fpm-alpine/Dockerfile b/2020.09-dev/fpm-alpine/Dockerfile index f1f3c8d..ed4f68b 100644 --- a/2020.09-dev/fpm-alpine/Dockerfile +++ b/2020.09-dev/fpm-alpine/Dockerfile @@ -98,8 +98,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.09-dev -ENV FRIENDICA_ADDONS 2020.09-dev +ENV FRIENDICA_VERSION "" +ENV FRIENDICA_ADDONS "" COPY *.sh upgrade.exclude / diff --git a/2020.09-dev/fpm-alpine/entrypoint.sh b/2020.09-dev/fpm-alpine/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.09-dev/fpm-alpine/entrypoint.sh +++ b/2020.09-dev/fpm-alpine/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.09-dev/fpm/Dockerfile b/2020.09-dev/fpm/Dockerfile index 396b74b..d065861 100644 --- a/2020.09-dev/fpm/Dockerfile +++ b/2020.09-dev/fpm/Dockerfile @@ -123,8 +123,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.09-dev -ENV FRIENDICA_ADDONS 2020.09-dev +ENV FRIENDICA_VERSION "" +ENV FRIENDICA_ADDONS "" COPY *.sh upgrade.exclude / diff --git a/2020.09-dev/fpm/entrypoint.sh b/2020.09-dev/fpm/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.09-dev/fpm/entrypoint.sh +++ b/2020.09-dev/fpm/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.09-rc/apache/Dockerfile b/2020.09-rc/apache/Dockerfile index e850a5b..ef005dc 100644 --- a/2020.09-rc/apache/Dockerfile +++ b/2020.09-rc/apache/Dockerfile @@ -132,8 +132,8 @@ RUN set -ex;\ } > /etc/apache2/conf-available/remoteip.conf;\ a2enconf remoteip -ENV FRIENDICA_VERSION 2020.09-rc -ENV FRIENDICA_ADDONS 2020.09-rc +ENV FRIENDICA_VERSION "" +ENV FRIENDICA_ADDONS "" COPY *.sh upgrade.exclude / diff --git a/2020.09-rc/apache/entrypoint.sh b/2020.09-rc/apache/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.09-rc/apache/entrypoint.sh +++ b/2020.09-rc/apache/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.09-rc/fpm-alpine/Dockerfile b/2020.09-rc/fpm-alpine/Dockerfile index e63ace2..ed4f68b 100644 --- a/2020.09-rc/fpm-alpine/Dockerfile +++ b/2020.09-rc/fpm-alpine/Dockerfile @@ -98,8 +98,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.09-rc -ENV FRIENDICA_ADDONS 2020.09-rc +ENV FRIENDICA_VERSION "" +ENV FRIENDICA_ADDONS "" COPY *.sh upgrade.exclude / diff --git a/2020.09-rc/fpm-alpine/entrypoint.sh b/2020.09-rc/fpm-alpine/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.09-rc/fpm-alpine/entrypoint.sh +++ b/2020.09-rc/fpm-alpine/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/2020.09-rc/fpm/Dockerfile b/2020.09-rc/fpm/Dockerfile index 221ff8f..d065861 100644 --- a/2020.09-rc/fpm/Dockerfile +++ b/2020.09-rc/fpm/Dockerfile @@ -123,8 +123,8 @@ RUN set -ex; \ VOLUME /var/www/html -ENV FRIENDICA_VERSION 2020.09-rc -ENV FRIENDICA_ADDONS 2020.09-rc +ENV FRIENDICA_VERSION "" +ENV FRIENDICA_ADDONS "" COPY *.sh upgrade.exclude / diff --git a/2020.09-rc/fpm/entrypoint.sh b/2020.09-rc/fpm/entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/2020.09-rc/fpm/entrypoint.sh +++ b/2020.09-rc/fpm/entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index d4d874c..8132fd3 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -97,8 +97,8 @@ RUN set -ex; \ VOLUME /var/www/html %%VARIANT_EXTRAS%% -ENV FRIENDICA_VERSION %%VERSION%% -ENV FRIENDICA_ADDONS %%VERSION%% +ENV FRIENDICA_VERSION "%%VERSION%%" +ENV FRIENDICA_ADDONS "%%VERSION%%" %%INSTALL_EXTRAS%% COPY *.sh upgrade.exclude / diff --git a/Dockerfile-debian.template b/Dockerfile-debian.template index 7c27c50..8e35e6e 100644 --- a/Dockerfile-debian.template +++ b/Dockerfile-debian.template @@ -122,8 +122,8 @@ RUN set -ex; \ VOLUME /var/www/html %%VARIANT_EXTRAS%% -ENV FRIENDICA_VERSION %%VERSION%% -ENV FRIENDICA_ADDONS %%VERSION%% +ENV FRIENDICA_VERSION "%%VERSION%%" +ENV FRIENDICA_ADDONS "%%VERSION%%" %%INSTALL_EXTRAS%% COPY *.sh upgrade.exclude / diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index 9a4ee70..651ec0f 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -13,7 +13,7 @@ run_as() { # checks if the the first parameter is greater than the second parameter version_greater() { - [ "$(printf '%s\n' "$@" | sort -r -t '-' -k2,2 | sort -t '.' -n -k1,1 -k2,2 -s | head -n 1)" != "$1" ] + [ "$(printf '%s\n' "$@" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/' | sort -t '.' -k1,1n -k2,2n -k3,3nbr | head -n 1)" != "$(printf "$1" | sed -e 's/-rc/.1/' | sed -e 's/-dev/.2/')" ] } # usage: file_env VAR [DEFAULT] diff --git a/latest.txt b/latest.txt index 13c5ea6..b9d358f 100644 --- a/latest.txt +++ b/latest.txt @@ -1 +1 @@ -2020.07 +2020.07-1 diff --git a/update.sh b/update.sh index 41c3b95..206ecf7 100755 --- a/update.sh +++ b/update.sh @@ -92,13 +92,17 @@ variants=( fpm-alpine ) -min_version='2020.03' +min_version='2020.07-1' # version_greater_or_equal A B returns whether A >= B function version_greater_or_equal() { [[ "$(printf '%s\n' "$@" | sort -V | head -n 1)" != "$1" || "$1" == "$2" ]]; } +function get_hotfix_version() { + printf '%s\n' "${fullversions[@]}" | grep -qE "^$( echo "$1" | grep -oE '[[:digit:]]+(\.[[:digit:]]+){2}' )" +} + function create_variant() { dockerName=${1,,} dir="$dockerName/$variant" @@ -122,7 +126,7 @@ function create_variant() { sed -ri -e ' s/%%PHP_VERSION%%/'"${php_version[$version]-${php_version[default]}}"'/g; s/%%VARIANT%%/'"$variant"'/g; - s/%%VERSION%%/'"$1"'/g; + s/%%VERSION%%/'"$2"'/g; s/%%CMD%%/'"${cmd[$variant]}"'/g; s|%%VARIANT_EXTRAS%%|'"${extras[$variant]}"'|g; s|%%INSTALL_EXTRAS%%|'"${install_extras[$install_type]}"'|g; @@ -148,27 +152,26 @@ function create_variant() { } curl -fsSL 'https://files.friendi.ca/' |tac|tac| \ - grep -oE 'friendica-full-[[:digit:]]+\.[[:digit:]]+' | \ - grep -oE '[[:digit:]]+\.[[:digit:]]+' | \ + grep -oE 'friendica-full-[[:digit:]]+\.[[:digit:]]+(\-[[:digit:]]+){0,1}' | \ + grep -oE '[[:digit:]]+\.[[:digit:]]+(\-[[:digit:]]+){0,1}' | \ sort -uV | \ tail -1 > latest.txt curl -fsSl 'https://raw.githubusercontent.com/friendica/friendica/develop/VERSION' > develop.txt -find . -maxdepth 1 -type d -regextype sed -regex '\./[[:digit:]]\+\(\.\|\-\)[[:digit:]]\+\(-rc\|-dev\)\?' -exec rm -r '{}' \; +find . -maxdepth 1 -type d -regextype sed -regex '\./[[:digit:]]\+\(\.\|\-\)[[:digit:]]\+\(-rc\|-dev\|\-[[:digit:]]\)\?' -exec rm -r '{}' \; fullversions=( $( curl -fsSL 'https://files.friendi.ca/' |tac|tac| \ - grep -oE 'friendica-full-[[:digit:]]+\.[[:digit:]]+' | \ - grep -oE '[[:digit:]]+\.[[:digit:]]+' | \ + grep -oE 'friendica-full-[[:digit:]]+\.[[:digit:]]+(\-[[:digit:]]+){0,1}' | \ + grep -oE '[[:digit:]]+\.[[:digit:]]+(\-[[:digit:]]+){0,1}' | \ sort -urV ) ) -versions=( $( printf '%s\n' "${fullversions[@]}" | cut -d. -f1-2 | sort -urV ) ) -for version in "${versions[@]}"; do - fullversion="$( printf '%s\n' "${fullversions[@]}" | grep -E "^$version" | head -1 )" +for version in "${fullversions[@]}"; do + fullversion="$( printf '%s\n' "${fullversions[@]}" | grep -E "^$version" | head -1 )" - if version_greater_or_equal "$version" "$min_version"; then + if version_greater_or_equal "$fullversion" "$min_version"; then for variant in "${variants[@]}"; do - create_variant "$version" + create_variant "$version" "$fullversion" done fi done