From 4c8feecf849df759003b89129ef9053a0625d7f9 Mon Sep 17 00:00:00 2001 From: mazano Date: Sun, 22 Oct 2023 10:52:18 +0200 Subject: [PATCH] upgrade to v2.24.0 (#582) * Upgraded GeoServer from version 2.23.2 to 2.24.0 and reorder action to build image before testing --- .env | 6 +- .github/workflows/build-latest.yaml | 73 ++++++++++--------- .github/workflows/deploy-image.yaml | 21 +----- Dockerfile | 2 +- README.md | 26 +++---- build_data/community_plugins.txt | 20 +++-- build_data/stable_plugins.txt | 3 +- clustering/docker-compose.yml | 6 +- scenario_tests/clustering/docker-compose.yml | 2 +- scenario_tests/context/docker-compose.yml | 2 +- scenario_tests/context/test.sh | 22 +++++- scenario_tests/context/tests/test_login.py | 3 +- scenario_tests/contexts/docker-compose.yml | 30 -------- scenario_tests/contexts/test.sh | 35 --------- scenario_tests/contexts/tests/__init__.py | 0 scenario_tests/contexts/tests/test.sh | 17 ----- scenario_tests/contexts/tests/test_login.py | 41 ----------- scenario_tests/disk-quota/docker-compose.yml | 4 +- scenario_tests/gwc/docker-compose-gwc.yml | 2 +- scenario_tests/login/docker-compose.yml | 2 +- scenario_tests/stores/docker-compose-gdal.yml | 2 +- .../stores/docker-compose-postgis-jndi.yml | 4 +- scripts/start.sh | 6 +- 23 files changed, 111 insertions(+), 218 deletions(-) delete mode 100644 scenario_tests/contexts/docker-compose.yml delete mode 100644 scenario_tests/contexts/test.sh delete mode 100644 scenario_tests/contexts/tests/__init__.py delete mode 100644 scenario_tests/contexts/tests/test.sh delete mode 100644 scenario_tests/contexts/tests/test_login.py diff --git a/.env b/.env index 4b4c33bf..442f9c09 100644 --- a/.env +++ b/.env @@ -1,11 +1,11 @@ COMPOSE_PROJECT_NAME=kartozageoserver IMAGE_VERSION=9.0.73-jdk11-temurin-focal -GS_VERSION=2.23.2 +GS_VERSION=2.24.0 GEOSERVER_PORT=8600 # Build Arguments JAVA_HOME=/opt/java/openjdk -WAR_URL=http://downloads.sourceforge.net/project/geoserver/GeoServer/2.23.2/geoserver-2.23.2-war.zip +WAR_URL=http://downloads.sourceforge.net/project/geoserver/GeoServer/2.24.0/geoserver-2.24.0-war.zip STABLE_PLUGIN_BASE_URL=https://sourceforge.net/projects/geoserver/files/GeoServer DOWNLOAD_ALL_STABLE_EXTENSIONS=1 DOWNLOAD_ALL_COMMUNITY_EXTENSIONS=1 @@ -94,7 +94,7 @@ TOGGLE_MASTER=true TOGGLE_SLAVE=true EMBEDDED_BROKER=enabled # kartoza/postgis env variables https://github.com/kartoza/docker-postgis -POSTGIS_VERSION_TAG=15-3.3 +POSTGIS_VERSION_TAG=16-3.4 POSTGRES_DB=gis,gwc POSTGRES_USER=docker POSTGRES_PASS=docker diff --git a/.github/workflows/build-latest.yaml b/.github/workflows/build-latest.yaml index ab85b4cd..a328748e 100644 --- a/.github/workflows/build-latest.yaml +++ b/.github/workflows/build-latest.yaml @@ -1,19 +1,5 @@ name: build-latest on: -# workflow_dispatch: -# inputs: -# distro: -# description: Base image distro -# required: true -# default: debian -# imageVersion: -# description: Base distro image version/release -# required: true -# default: bullseye -# imageVariant: -# description: Base image variant -# required: true -# default: slim workflow_dispatch: pull_request: branches: @@ -22,7 +8,7 @@ on: branches: - develop jobs: - run-scenario-tests: + build-docker-image: runs-on: ubuntu-latest strategy: matrix: @@ -32,24 +18,14 @@ jobs: - image: 9.0.73-jdk11-temurin-focal javaHome: /opt/java/openjdk geoserverMinorVersion: - - minor: 22 - patch: 4 - - minor: 23 - patch: 2 + - minor: 24 + patch: 0 downloadAllStableExtensions: - 1 downloadAllCommunityExtensions: - 1 stablePluginBaseURL: - https://sourceforge.net/projects/geoserver/files/GeoServer - scenario: - - gwc - - login - - stores - - context - - contexts - - disk-quota - - clustering steps: - uses: actions/checkout@v4 - name: Set up QEMU @@ -65,6 +41,7 @@ jobs: push: false load: true tags: kartoza/geoserver:manual-build + outputs: type=docker,dest=/tmp/geoserver.tar build-args: | IMAGE_VERSION=${{ matrix.imageVersion.image }} JAVA_HOME=${{ matrix.imageVersion.javaHome }} @@ -78,20 +55,47 @@ jobs: type=gha,scope=prod cache-to: type=gha,scope=test target: geoserver-test + - name: Upload artifact + uses: actions/upload-artifact@v3 + with: + name: kartoza-geoserver + path: /tmp/geoserver.tar - + run-scenario-tests: + runs-on: ubuntu-latest + needs: build-docker-image + strategy: + matrix: + scenario: + - gwc + - login + - stores + - context + - disk-quota + - clustering + steps: + - uses: actions/checkout@v4 + - name: Download artifact + uses: actions/download-artifact@v3 + with: + name: kartoza-geoserver + path: /tmp + - name: Load image + run: | + docker load --input /tmp/geoserver.tar - name: Run scenario test ${{ matrix.scenario }} working-directory: scenario_tests/${{ matrix.scenario }} env: COMPOSE_INTERACTIVE_NO_CLI: 1 PRINT_TEST_LOGS: 1 run: | + # Use the built Docker image to run scenario tests bash ./test.sh push-internal-pr-images: if: github.event_name == 'pull_request' && github.event.pull_request.base.repo.url == github.event.pull_request.head.repo.url runs-on: ubuntu-latest - needs: [ run-scenario-tests ] + needs: [run-scenario-tests] strategy: matrix: geoserverMajorVersion: @@ -100,10 +104,8 @@ jobs: - image: 9.0.73-jdk11-temurin-focal javaHome: /opt/java/openjdk geoserverMinorVersion: - - minor: 22 - patch: 4 - - minor: 23 - patch: 2 + - minor: 24 + patch: 0 downloadAllStableExtensions: - 1 downloadAllCommunityExtensions: @@ -133,7 +135,6 @@ jobs: tags: | type=semver,pattern=\d.\d.\d type=ref,event=branch - type=ref,event=pr - name: Build image for testing id: docker_build_testing_image @@ -141,9 +142,9 @@ jobs: with: context: . file: Dockerfile - push: true + push: false tags: | - ${{ steps.docker_meta.outputs.tags }}-${{ matrix.geoserverMajorVersion }}.${{ matrix.geoserverMinorVersion.minor }}.${{ matrix.geoserverMinorVersion.patch }} + kartoza/geoserver:manual-build build-args: | IMAGE_VERSION=${{ matrix.imageVersion.image }} JAVA_HOME=${{ matrix.imageVersion.javaHome }} diff --git a/.github/workflows/deploy-image.yaml b/.github/workflows/deploy-image.yaml index 9c30190d..551080f7 100644 --- a/.github/workflows/deploy-image.yaml +++ b/.github/workflows/deploy-image.yaml @@ -1,19 +1,6 @@ name: deploy-image on: workflow_dispatch: -# inputs: -# distro: -# description: Base image distro -# required: true -# default: debian -# imageVersion: -# description: Base distro image version/release -# required: true -# default: bullseye -# imageVariant: -# description: Base image variant -# required: true -# default: slim workflow_run: workflows: - build-latest @@ -34,10 +21,10 @@ jobs: - image: 9.0.73-jdk11-temurin-focal javaHome: /opt/java/openjdk geoserverMinorVersion: - - minor: 22 - patch: 4 - - minor: 23 - patch: 2 + - minor: 24 + patch: 0 + #- minor: 23 + #patch: 2 downloadAllStableExtensions: - 1 downloadAllCommunityExtensions: diff --git a/Dockerfile b/Dockerfile index 11768854..7338d342 100755 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,7 @@ ARG JAVA_HOME=/opt/java/openjdk FROM tomcat:$IMAGE_VERSION AS geoserver-prod LABEL maintainer="Tim Sutton" -ARG GS_VERSION=2.23.2 +ARG GS_VERSION=2.24.0 ARG WAR_URL=https://downloads.sourceforge.net/project/geoserver/GeoServer/${GS_VERSION}/geoserver-${GS_VERSION}-war.zip ARG STABLE_PLUGIN_BASE_URL=https://sourceforge.net/projects/geoserver/files/GeoServer ARG DOWNLOAD_ALL_STABLE_EXTENSIONS=1 diff --git a/README.md b/README.md index 4829ac2b..1dc8d388 100755 --- a/README.md +++ b/README.md @@ -57,7 +57,7 @@ The preferred way (but using most bandwidth for the initial image) is to get our docker trusted build like this: ```shell -VERSION=2.23.2 +VERSION=2.24.0 docker pull kartoza/geoserver:$VERSION ``` ### Building the image @@ -102,7 +102,7 @@ For community plugins run the command below: For stable plugins run the command below: ```bash cd ./build_data -python3 stable_plugins.py 2.23.2 https://sourceforge.net/projects/geoserver/files/GeoServer +python3 stable_plugins.py 2.24.0 https://sourceforge.net/projects/geoserver/files/GeoServer ``` @@ -120,13 +120,13 @@ To build using a specific tagged release for tomcat image set the to choose which tag you need to build against. ``` -ie VERSION=2.23.2 -docker build --build-arg IMAGE_VERSION=8-jre8 --build-arg GS_VERSION=2.23.2 -t kartoza/geoserver:${VERSION} . +ie VERSION=2.24.0 +docker build --build-arg IMAGE_VERSION=8-jre8 --build-arg GS_VERSION=2.24.0 -t kartoza/geoserver:${VERSION} . ``` For some recent builds it is necessary to set the JAVA_PATH as well (e.g. Apache Tomcat/9.0.36) ``` -docker build --build-arg IMAGE_VERSION=9-jdk11-openjdk-slim --build-arg JAVA_HOME=/usr/local/openjdk-11/bin/java --build-arg GS_VERSION=2.23.2 -t kartoza/geoserver:2.23.2 . +docker build --build-arg IMAGE_VERSION=9-jdk11-openjdk-slim --build-arg JAVA_HOME=/usr/local/openjdk-11/bin/java --build-arg GS_VERSION=2.24.0 -t kartoza/geoserver:2.24.0 . ``` **Note:** Please check the [GeoServer documentation](https://docs.geoserver.org/stable/en/user/production/index.html) @@ -197,7 +197,7 @@ The image ships with the following stable plugins: * csw-plugin **Note:** The plugins listed above are omitted from [Stable_plugins.txt](https://github.com/kartoza/docker-geoserver/blob/master/build_data/stable_plugins.txt) -even though they are considered [stable plugins](https://sourceforge.net/projects/geoserver/files/GeoServer/2.23.2/extensions/) +even though they are considered [stable plugins](https://sourceforge.net/projects/geoserver/files/GeoServer/2.24.0/extensions/) The image activates them on startup. The image provides the necessary plugin zip files which are used when activating the @@ -215,7 +215,7 @@ The environment variable `STABLE_EXTENSIONS` can be used to activate plugins lis Example ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -d -p 8600:8080 --name geoserver -e STABLE_EXTENSIONS=charts-plugin,db2-plugin kartoza/geoserver:${VERSION} ``` @@ -236,7 +236,7 @@ The environment variable `COMMUNITY_EXTENSIONS` can be used to activate plugins Example ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -d -p 8600:8080 --name geoserver -e COMMUNITY_EXTENSIONS=gwc-sqlite-plugin,ogr-datastore-plugin kartoza/geoserver:${VERSION} ``` @@ -254,7 +254,7 @@ Geoserver ships with sample data which can be used by users to familiarize them This is not activated by default. You can activate it using the environment variable `SAMPLE_DATA=true` ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -d -p 8600:8080 --name geoserver -e SAMPLE_DATA=true kartoza/geoserver:${VERSION} ``` @@ -345,14 +345,14 @@ If you set the environment variable `SSL=true` but do not provide the pem files the container will generate a self-signed SSL certificates. ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -it --name geoserver -e PKCS12_PASSWORD=geoserver -e JKS_KEY_PASSWORD=geoserver -e JKS_STORE_PASSWORD=geoserver -e SSL=true -p 8443:8443 -p 8600:8080 kartoza/geoserver:${VERSION} ``` If you already have your perm files (fullchain.pem and privkey.pem) you can mount the directory containing your keys as: ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -it --name geo -v /etc/certs:/etc/certs -e PKCS12_PASSWORD=geoserver -e JKS_KEY_PASSWORD=geoserver -e JKS_STORE_PASSWORD=geoserver -e SSL=true -p 8443:8443 -p 8600:8080 kartoza/geoserver:${VERSION} ``` @@ -428,7 +428,7 @@ To include Tomcat extras including docs, examples, and the manager webapp, set t to use a strong password otherwise the default one is set up. ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -it --name geoserver -e TOMCAT_EXTRAS=true -p 8600:8080 kartoza/geoserver:${VERSION} ``` @@ -455,7 +455,7 @@ If you have downloaded extra fonts you can mount the folder to the path path during initialisation. ``` -ie VERSION=2.23.2 +ie VERSION=2.24.0 docker run -v fonts:/opt/fonts -p 8080:8080 -t kartoza/geoserver:${VERSION} ``` diff --git a/build_data/community_plugins.txt b/build_data/community_plugins.txt index d3e30b2b..c2fa5535 100644 --- a/build_data/community_plugins.txt +++ b/build_data/community_plugins.txt @@ -3,6 +3,7 @@ backup-restore-plugin cog-plugin colormap-plugin cov-json-plugin +dataidr-catalog-loader-plugin dds-plugin dyndimension-plugin elasticsearch-plugin @@ -18,6 +19,7 @@ gwc-distributed-plugin gwc-mbtiles-plugin gwc-sqlite-plugin hz-cluster-plugin +imagemap-plugin importer-jdbc-plugin jdbc-metrics-plugin jdbcconfig-plugin @@ -30,14 +32,19 @@ mongodb-schemaless-plugin ncwms-plugin netcdf-ghrsst-plugin notification-plugin -nsg-wmts-profile-plugin -ogcapi-plugin +ogcapi-coverages-plugin +ogcapi-dggs-plugin +ogcapi-features-plugin +ogcapi-images-plugin +ogcapi-maps-plugin +ogcapi-styles-plugin +ogcapi-tiled-features-plugin +ogcapi-tiles-plugin ogr-datastore-plugin opensearch-eo-plugin -ows-simulate-plugin pgraster-plugin +proxy-base-ext-plugin s3-geotiff-plugin -saml-plugin sec-keycloak-plugin sec-oauth2-geonode-plugin sec-oauth2-github-plugin @@ -49,10 +56,9 @@ spatialjson-plugin stac-datastore-plugin taskmanager-core-plugin taskmanager-s3-plugin -teradata-plugin vector-mosaic-plugin vsi-plugin webp-plugin -wms-eo-plugin -wmts-styles-plugin +wps-longitudinal-profile-plugin wps-remote-plugin +xslt-plugin diff --git a/build_data/stable_plugins.txt b/build_data/stable_plugins.txt index d7468cab..aded7f64 100644 --- a/build_data/stable_plugins.txt +++ b/build_data/stable_plugins.txt @@ -18,7 +18,7 @@ geopkg-output-plugin grib-plugin gwc-s3-plugin h2-plugin -imagemap-plugin +iau-plugin importer-plugin inspire-plugin jp2k-plugin @@ -48,5 +48,4 @@ wps-cluster-hazelcast-plugin wps-download-plugin wps-jdbc-plugin wps-plugin -xslt-plugin ysld-plugin diff --git a/clustering/docker-compose.yml b/clustering/docker-compose.yml index 3ee7ce1f..9bb5527b 100644 --- a/clustering/docker-compose.yml +++ b/clustering/docker-compose.yml @@ -6,7 +6,7 @@ volumes: services: db: - image: kartoza/postgis:15-3.3 + image: kartoza/postgis:16-3.4 volumes: - geo-db-data:/var/lib/postgresql environment: @@ -19,7 +19,7 @@ services: healthcheck: test: "PGPASSWORD=docker pg_isready -h 127.0.0.1 -U docker -d gis" master: - image: kartoza/geoserver:2.23.2 + image: kartoza/geoserver:2.24.0 volumes: - geoserver-cluster-data:/opt/geoserver/data_dir ports: @@ -50,7 +50,7 @@ services: timeout: 10s retries: 3 node: - image: kartoza/geoserver:2.23.2 + image: kartoza/geoserver:2.24.0 volumes: - geoserver-cluster-data:/opt/geoserver/data_dir ports: diff --git a/scenario_tests/clustering/docker-compose.yml b/scenario_tests/clustering/docker-compose.yml index 43789f96..133ca77a 100644 --- a/scenario_tests/clustering/docker-compose.yml +++ b/scenario_tests/clustering/docker-compose.yml @@ -6,7 +6,7 @@ volumes: services: db: - image: kartoza/postgis:15-3.4 + image: kartoza/postgis:16-3.4 volumes: - geo-db-data:/var/lib/postgresql - ./tests/init.sql:/docker-entrypoint-initdb.d/init.sql diff --git a/scenario_tests/context/docker-compose.yml b/scenario_tests/context/docker-compose.yml index dbc52db6..6df28ed6 100644 --- a/scenario_tests/context/docker-compose.yml +++ b/scenario_tests/context/docker-compose.yml @@ -1,5 +1,5 @@ -version: '2.1' +version: '3.9' volumes: geoserver-data-dir: diff --git a/scenario_tests/context/test.sh b/scenario_tests/context/test.sh index 9dfebc87..0460182f 100755 --- a/scenario_tests/context/test.sh +++ b/scenario_tests/context/test.sh @@ -28,8 +28,28 @@ for service in "${services[@]}"; do # Execute tests sleep 60 echo "Execute test for $service" - ${VERSION} exec -T $service /bin/bash /tests/test.sh + ${VERSION} exec -T "${service}" /bin/bash /tests/test.sh done ${VERSION} down -v + +# Update context password +sleep 5 +sed -i 's/foobar/foobar#geoserver/g' docker-compose.yml +# Bring the services up again +${VERSION} up -d geoserver + +services=("geoserver") + +for service in "${services[@]}"; do + + # Execute tests + sleep 60 + echo "Execute test for $service" + ${VERSION} exec -T "${service}" /bin/bash /tests/test.sh + +done + +${VERSION} down -v +sed -i 's/foobar#geoserver/foobar/g' docker-compose.yml \ No newline at end of file diff --git a/scenario_tests/context/tests/test_login.py b/scenario_tests/context/tests/test_login.py index 2654e390..f3787953 100644 --- a/scenario_tests/context/tests/test_login.py +++ b/scenario_tests/context/tests/test_login.py @@ -7,7 +7,8 @@ class TestGeoServerREST(unittest.TestCase): def setUp(self): # Login to GeoServer and get the authentication cookies - self.base_url = 'http://localhost:8080/foobar' + self.geo_context = environ.get('GEOSERVER_CONTEXT_ROOT').replace("#", '/') + self.base_url = f'http://localhost:8080/{self.geo_context}' self.login_url = f'{self.base_url}/j_spring_security_check' self.username = 'admin' self.container_name = environ['CONTAINER_NAME'] diff --git a/scenario_tests/contexts/docker-compose.yml b/scenario_tests/contexts/docker-compose.yml deleted file mode 100644 index 08809cc3..00000000 --- a/scenario_tests/contexts/docker-compose.yml +++ /dev/null @@ -1,30 +0,0 @@ - -version: '2.1' - -volumes: - geoserver-data-dir: - - -services: - geoserver: - image: 'kartoza/geoserver:${TAG:-manual-build}' - restart: 'always' - volumes: - - geoserver-data-dir:/opt/geoserver/data_dir - - ./tests:/tests - environment: - GEOSERVER_ADMIN_PASSWORD: myawesomegeoserver - GEOSERVER_ADMIN_USER: admin - INITIAL_MEMORY: 2G - MAXIMUM_MEMORY: 4G - GEOSERVER_CONTEXT_ROOT: foobar#geoserver - CONTAINER_NAME: geoserver - TEST_CLASS: test_login.TestGeoServerREST - healthcheck: - test: "curl --fail --silent --write-out 'HTTP CODE : %{http_code}\n' --output /dev/null -u admin:'myawesomegeoserver' http://localhost:8080/foobar/rest/about/version.xml" - interval: 1m30s - timeout: 10s - retries: 3 - - - diff --git a/scenario_tests/contexts/test.sh b/scenario_tests/contexts/test.sh deleted file mode 100644 index 9dfebc87..00000000 --- a/scenario_tests/contexts/test.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env bash - -# exit immediately if test fails -set -e - -source ../test-env.sh - -# Run service -if [[ $(dpkg -l | grep "docker-compose") > /dev/null ]];then - VERSION='docker-compose' - else - VERSION='docker compose' -fi - -${VERSION} up -d - -if [[ -n "${PRINT_TEST_LOGS}" ]]; then - ${VERSION} logs -f & -fi - -sleep 30 - - -services=("geoserver") - -for service in "${services[@]}"; do - - # Execute tests - sleep 60 - echo "Execute test for $service" - ${VERSION} exec -T $service /bin/bash /tests/test.sh - -done - -${VERSION} down -v diff --git a/scenario_tests/contexts/tests/__init__.py b/scenario_tests/contexts/tests/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/scenario_tests/contexts/tests/test.sh b/scenario_tests/contexts/tests/test.sh deleted file mode 100644 index 7337b414..00000000 --- a/scenario_tests/contexts/tests/test.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/env bash - -set -e - -source /scripts/env-data.sh - -# execute tests -pushd /tests - -cat << EOF -Settings used: - -GEOSERVER_ADMIN_PASSWORD: ${GEOSERVER_ADMIN_PASSWORD} -GEOSERVER_ADMIN_USER: ${GEOSERVER_ADMIN_USER} -EOF - -python3 -m unittest -v ${TEST_CLASS} diff --git a/scenario_tests/contexts/tests/test_login.py b/scenario_tests/contexts/tests/test_login.py deleted file mode 100644 index 5996fc86..00000000 --- a/scenario_tests/contexts/tests/test_login.py +++ /dev/null @@ -1,41 +0,0 @@ -import requests -import unittest -from os import environ - - -class TestGeoServerREST(unittest.TestCase): - - def setUp(self): - # Login to GeoServer and get the authentication cookies - self.base_url = 'http://localhost:8080/foobar/geoserver' - self.login_url = f'{self.base_url}/j_spring_security_check' - self.username = 'admin' - self.container_name = environ['CONTAINER_NAME'] - - if self.container_name == 'geoserver': - self.password = environ['GEOSERVER_ADMIN_PASSWORD'] - else: - with open('/opt/geoserver/data_dir/security/pass.txt', 'r') as file: - file_pass = file.read() - self.password = file_pass.replace("\n", "") - self.session = requests.Session() - login_data = { - 'username': self.username, - 'password': self.password, - 'submit': 'Login' - } - response = self.session.post(self.login_url, data=login_data) - self.assertEqual(response.status_code, 200) - - def test_rest_endpoints_accessible(self): - # Test if the REST endpoints are accessible as a logged user - url = f'{self.base_url}/rest/workspaces.json' - response = self.session.get(url) - self.assertEqual(response.status_code, 200) - self.assertTrue(response.json()) - - def tearDown(self): - # Logout from GeoServer - logout_url = f'{self.base_url}/j_spring_security_logout' - response = self.session.post(logout_url) - self.assertEqual(response.status_code, 200) diff --git a/scenario_tests/disk-quota/docker-compose.yml b/scenario_tests/disk-quota/docker-compose.yml index f8570866..6316af7c 100644 --- a/scenario_tests/disk-quota/docker-compose.yml +++ b/scenario_tests/disk-quota/docker-compose.yml @@ -1,5 +1,5 @@ -version: '2.1' +version: '3.9' volumes: geoserver-data-dir: @@ -8,7 +8,7 @@ volumes: services: db: - image: kartoza/postgis:15-3.3 + image: kartoza/postgis:16-3.4 volumes: - postgis-data:/var/lib/postgresql environment: diff --git a/scenario_tests/gwc/docker-compose-gwc.yml b/scenario_tests/gwc/docker-compose-gwc.yml index d24f71a2..fd5bd493 100644 --- a/scenario_tests/gwc/docker-compose-gwc.yml +++ b/scenario_tests/gwc/docker-compose-gwc.yml @@ -1,4 +1,4 @@ -version: '2.1' +version: '3.9' volumes: geoserver-data-dir: diff --git a/scenario_tests/login/docker-compose.yml b/scenario_tests/login/docker-compose.yml index 1c7f867c..b0687996 100644 --- a/scenario_tests/login/docker-compose.yml +++ b/scenario_tests/login/docker-compose.yml @@ -1,5 +1,5 @@ -version: '2.1' +version: '3.9' volumes: geoserver-data-dir: diff --git a/scenario_tests/stores/docker-compose-gdal.yml b/scenario_tests/stores/docker-compose-gdal.yml index 5b9d2e4e..fa12a87f 100644 --- a/scenario_tests/stores/docker-compose-gdal.yml +++ b/scenario_tests/stores/docker-compose-gdal.yml @@ -1,5 +1,5 @@ -version: '2.1' +version: '3.9' volumes: geoserver-data-dir: diff --git a/scenario_tests/stores/docker-compose-postgis-jndi.yml b/scenario_tests/stores/docker-compose-postgis-jndi.yml index 5d4d415f..59c215bd 100644 --- a/scenario_tests/stores/docker-compose-postgis-jndi.yml +++ b/scenario_tests/stores/docker-compose-postgis-jndi.yml @@ -1,5 +1,5 @@ -version: '2.1' +version: '3.9' volumes: geoserver-data-dir: @@ -8,7 +8,7 @@ volumes: services: db: - image: kartoza/postgis:15-3.3 + image: kartoza/postgis:16-3.4 volumes: - postgis-data:/var/lib/postgresql environment: diff --git a/scripts/start.sh b/scripts/start.sh index 92174cfc..133081d5 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -225,8 +225,10 @@ if [[ ${CLUSTERING} =~ [Tt][Rr][Uu][Ee] ]]; then fi # Download Clustering module, temporary fixes https://github.com/kartoza/docker-geoserver/issues/514 ${request} https://download.jar-download.com/cache_jars/org.jdom/jdom2/2.0.6.1/jar_files.zip - unzip jar_files.zip -d "${CATALINA_HOME}"/webapps/"${GEOSERVER_CONTEXT_ROOT}"/WEB-INF/lib/ - rm jar_files.zip + if [[ -f jar_files.zip ]];then + unzip jar_files.zip -d "${CATALINA_HOME}"/webapps/"${GEOSERVER_CONTEXT_ROOT}"/WEB-INF/lib/ + rm jar_files.zip + fi fi export REQUEST_TIMEOUT PARALLEL_REQUEST GETMAP REQUEST_EXCEL SINGLE_USER GWC_REQUEST WPS_REQUEST