]> git.openstreetmap.org Git - nominatim.git/commitdiff
actions: run tests also on postgresql 9.5
authorSarah Hoffmann <lonvia@denofr.de>
Sat, 12 Dec 2020 13:50:07 +0000 (14:50 +0100)
committerSarah Hoffmann <lonvia@denofr.de>
Sat, 12 Dec 2020 19:55:54 +0000 (20:55 +0100)
This is the oldest version for which a postgis is available.

.github/actions/setup-postgresql/action.yml
.github/workflows/ci-tests.yml

index 98086f2d0a40acd0bab26b47a95e4d05e27afbfc..0742e66314a10a1afc6288c7e40391fc166b8ee6 100644 (file)
@@ -1,26 +1,45 @@
 name: 'Setup Postgresql and Postgis'
 
+inputs:
+    postgresql-version:
+        description: 'Version of PostgreSQL to install'
+        required: true
+    postgis-version:
+        description: 'Version of Postgis to install'
+        required: true
+
 runs:
     using: "composite"
 
     steps:
-        - name: Install postgis
+        - name: Remove existing PostgreSQL
+          run: |
+              sudo apt-get update -qq
+              sudo apt-get purge -yq postgresql*
+          shell: bash
+
+        - name: Install PostgreSQL
           run: |
-            sudo apt-get update -qq
-            sudo apt-get install -y -qq postgresql-13-postgis-3 postgresql-13-postgis-3-scripts postgresql-server-dev-13
+              sudo apt-get install -y -qq --no-install-suggests --no-install-recommends postgresql-client-${PGVER} postgresql-${PGVER}-postgis-${POSTGISVER} postgresql-${PGVER}-postgis-${POSTGISVER}-scripts postgresql-contrib-${PGVER} postgresql-${PGVER} postgresql-server-dev-${PGVER}
           shell: bash
+          env:
+              PGVER: ${{ inputs.postgresql-version }}
+              POSTGISVER: ${{ inputs.postgis-version }}
 
         - name: Adapt postgresql configuration
           run: |
-              echo 'fsync = off' | sudo tee /etc/postgresql/13/main/conf.d/local.conf
-              echo 'synchronous_commit = off' | sudo tee -a /etc/postgresql/13/main/conf.d/local.conf
-              echo 'full_page_writes = off' | sudo tee -a /etc/postgresql/13/main/conf.d/local.conf
-              echo 'shared_buffers = 1GB' | sudo tee -a /etc/postgresql/13/main/conf.d/local.conf
+              echo 'fsync = off' | sudo tee /etc/postgresql/${PGVER}/main/conf.d/local.conf
+              echo 'synchronous_commit = off' | sudo tee -a /etc/postgresql/${PGVER}/main/conf.d/local.conf
+              echo 'full_page_writes = off' | sudo tee -a /etc/postgresql/${PGVER}/main/conf.d/local.conf
+              echo 'shared_buffers = 1GB' | sudo tee -a /etc/postgresql/${PGVER}/main/conf.d/local.conf
+              echo 'port = 5432' | sudo tee -a /etc/postgresql/${PGVER}/main/conf.d/local.conf
           shell: bash
+          env:
+              PGVER: ${{ inputs.postgresql-version }}
 
         - name: Setup database
           run: |
-              sudo systemctl start postgresql
+              sudo systemctl restart postgresql
               sudo -u postgres createuser -S www-data
               sudo -u postgres createuser -s runner
           shell: bash
index f1da461686f148db0a438c2f0432c6dfac962198..dd97aefa12fb9c24296047296890248832490728 100644 (file)
@@ -6,6 +6,15 @@ jobs:
     tests:
         runs-on: ubuntu-20.04
 
+        strategy:
+            matrix:
+                postgresql: [9.5, 13]
+                include:
+                    - postgresql: 9.5
+                      postgis: 2.5
+                    - postgresql: 13
+                      postgis: 3
+
         steps:
             - uses: actions/checkout@v2
               with:
@@ -25,6 +34,9 @@ jobs:
                   key: nominatim-data-${{ steps.get-date.outputs.date }}
 
             - uses: ./.github/actions/setup-postgresql
+              with:
+                  postgresql-version: ${{ matrix.postgresql }}
+                  postgis-version: ${{ matrix.postgis }}
             - uses: ./.github/actions/build-nominatim
 
             - name: Install test prerequsites
@@ -65,6 +77,9 @@ jobs:
                   key: nominatim-data-${{ steps.get-date.outputs.date }}
 
             - uses: ./.github/actions/setup-postgresql
+              with:
+                  postgresql-version: 13
+                  postgis-version: 3
             - uses: ./.github/actions/build-nominatim
 
             - name: Create configuration