Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ ENV GITLAB_VERSION=${VERSION} \
GITLAB_CACHE_DIR="/etc/docker-gitlab" \
RAILS_ENV=production \
NODE_ENV=production \
NO_SOURCEMAPS=true
NO_SOURCEMAPS=true \
# v18.5.2 : minimum = 16.5, maximum = 17.x (currently 17.6, is 170006)
POSTGRESQL_SERVER_REQUIRED_VERSION_MINIMUM=160005 \
POSTGRESQL_SERVER_REQUIRED_VERSION_MAXIMUM=170100

ENV GITLAB_INSTALL_DIR="${GITLAB_HOME}/gitlab" \
GITLAB_SHELL_INSTALL_DIR="${GITLAB_HOME}/gitlab-shell" \
Expand Down Expand Up @@ -49,7 +52,7 @@ RUN set -ex && \
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
sudo supervisor logrotate locales curl \
nginx openssh-server redis-tools \
postgresql-client-13 postgresql-client-14 postgresql-client-15 postgresql-client-16 postgresql-client-17 \
postgresql-client-16 postgresql-client-17 postgresql-client-18 \
python3 python3-docutils nodejs yarn gettext-base graphicsmagick \
libpq5 zlib1g libyaml-dev libssl-dev libgdbm-dev libre2-dev \
libreadline-dev libncurses5-dev libffi-dev curl openssh-server libxml2-dev libxslt-dev \
Expand Down
14 changes: 13 additions & 1 deletion assets/runtime/functions
Original file line number Diff line number Diff line change
Expand Up @@ -190,13 +190,25 @@ gitlab_generate_postgresqlrc() {

echo "- Detected server version: ${DB_SERVER_VERSION}"

# remove leading zero (prior to 10.x it was like "090605" so that cannot treated as number)
DB_SERVER_VERSION="${DB_SERVER_VERSION##+(0)}"

# Anyway, we can get major version (8, 9, 10 and so on) by dividing by 10000.
# DB_SERVER_VERSION_MAJOR=${DB_SERVER_VERSION%%.*}
DB_SERVER_VERSION_MAJOR=$((DB_SERVER_VERSION/10000))
DB_CLIENT_VERSION_PACKAGE_NAME=

# Check version requirement
if [[ "${DB_SERVER_VERSION}" -lt "${POSTGRESQL_SERVER_REQUIRED_VERSION_MINIMUM}"
|| "${DB_SERVER_VERSION}" -gt "${POSTGRESQL_SERVER_REQUIRED_VERSION_MAXIMUM}"
]]; then
echo " Version requirement mismatch! (${POSTGRESQL_SERVER_REQUIRED_VERSION_MINIMUM} < ${DB_SERVER_VERSION} < ${POSTGRESQL_SERVER_REQUIRED_VERSION_MAXIMUM})"
echo " Aborting.."
return 1
fi

if [[ "${DB_SERVER_VERSION_MAJOR}" -ge 10 ]]; then
# v10 or later: use "rought major version" as version number in package name
# v10 or later: use "rough major version" as version number in package name
DB_CLIENT_VERSION_PACKAGE_NAME=${DB_SERVER_VERSION_MAJOR}
else
# prior to v10: convert
Expand Down