@@ -8,7 +8,7 @@ name: Build for Ubuntu with clang
88# - On request
99#
1010# using
11- # - the postgres installed version
11+ # - postgres installed version on actions
1212
1313on :
1414 workflow_dispatch :
@@ -35,7 +35,6 @@ permissions:
3535env :
3636 postgis : 3
3737 os : ubuntu-latest
38- vroom : 1.12.0
3938
4039jobs :
4140 build :
@@ -53,28 +52,33 @@ jobs:
5352 - name : Get postgres version
5453 run : |
5554 sudo service postgresql start
56- pgver =$(psql --version | grep -Po '(?<=psql \(PostgreSQL\) )[^;]+(?=\.\d+ \()')
57- echo "PGVER=${pgver }" >> $GITHUB_ENV
55+ PGVER =$(psql --version | grep -Po '(?<=psql \(PostgreSQL\) )[^;]+(?=\.\d+ \()')
56+ echo "PGVER=${PGVER }" >> $GITHUB_ENV
5857 echo "PGPORT=5432" >> $GITHUB_ENV
59- echo "PGBIN=/usr/lib/postgresql/${pgver}/bin" >> $GITHUB_ENV
60- echo "PGINC=/usr/include/postgresql/${pgver}/server" >> $GITHUB_ENV
58+ echo "PGBIN=/usr/lib/postgresql/${PGVER}/bin" >> $GITHUB_ENV
59+ echo "PGINC=/usr/include/postgresql/${PGVER}/server" >> $GITHUB_ENV
60+
61+ - name : ' Raise Priority for apt.postgresql.org'
62+ run : |
63+ cat << EOF >> ./pgdg.pref
64+ Package: *
65+ Pin: release o=apt.postgresql.org
66+ Pin-Priority: 600
67+ EOF
68+ sudo mv ./pgdg.pref /etc/apt/preferences.d/
69+ sudo apt update
6170
6271 - name : Add PostgreSQL APT repository
6372 run : |
64- sudo apt-get install curl ca-certificates gnupg
65- curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
66- sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ \
67- $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
73+ sudo apt-get purge postgresql-*
74+ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg-testing main ${{ matrix.psql }}" > /etc/apt/sources.list.d/pgdg.list'
75+ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null
6876
69- - name : Install python
70- uses : actions/setup-python@v5
71- with :
72- python-version : ' 3.x'
7377
7478 - name : Install dependencies
7579 run : |
7680 sudo apt-get update
77- # vrpRouting dependencies
81+
7882 sudo apt-get install -y \
7983 clang \
8084 libtap-parser-sourcehandler-pgtap-perl \
@@ -83,48 +87,15 @@ jobs:
8387 postgresql-${PGVER}-postgis-${{ env.postgis }} \
8488 postgresql-${PGVER}-postgis-${{ env.postgis }}-scripts \
8589 postgresql-${PGVER}-pgrouting \
86- postgresql-server-dev-${PGVER} \
87- postgresql-plpython3-${PGVER}
88- # vroom dependencies
89- sudo apt-get install libssl-dev libasio-dev libglpk-dev
90-
91- - name : Install Google OR-Tools dependencies
92- run : |
93- sudo pip install --root=/ ortools
94-
95- - name : Cache VROOM
96- id : cache-vroom
97- uses : actions/cache@v4
98- env :
99- cache-name : vroom
100- with :
101- path : vroom-${{ env.vroom }}
102- key : ${{ env.os }}-${{ env.cache-name }}-${{ env.vroom }}
103-
104- - name : Checkout VROOM
105- if : steps.cache-vroom.outputs.cache-hit != 'true'
106- uses : actions/checkout@v4
107- with :
108- path : vroom-${{ env.vroom }}
109- repository : VROOM-Project/vroom
110- ref : " v${{ env.vroom }}"
111- submodules : true
112-
113- - name : Build VROOM
114- if : steps.cache-vroom.outputs.cache-hit != 'true'
115- run : |
116- cd vroom-${{ env.vroom }}/src
117- USE_ROUTING=false make shared
90+ postgresql-server-dev-${PGVER}
11891
11992 - name : Configure
12093 run : |
12194 export PATH=/usr/lib/postgresql/${PGVER}/bin:$PATH
122- VROOM=$(pwd)/vroom-${{ env.vroom }}
12395 mkdir build
12496 cd build
12597 CXX=clang++ CC=clang cmake -DCMAKE_BUILD_TYPE=${{ matrix.release }} \
126- -DPostgreSQL_INCLUDE_DIR=${PGINC} -DPOSTGRESQL_BIN=${PGBIN} \
127- -DVROOM_INSTALL_PATH=${VROOM} ..
98+ -DPostgreSQL_INCLUDE_DIR=${PGINC} -DPOSTGRESQL_BIN=${PGBIN} ..
12899
129100 - name : Build
130101 run : |
@@ -152,4 +123,3 @@ jobs:
152123 sudo service postgresql start
153124 psql -c "CREATE DATABASE ___vrp___test___;"
154125 bash ./tools/testers/pg_prove_tests.sh -U ${PG_RUNNER_USER} -p ${PGPORT} -d ___vrp___test___
155-
0 commit comments