88 # -------------------------
99 build_images :
1010 name : Build and cache Docker images
11- runs-on : ubuntu-22 .04
11+ runs-on : ubuntu-24 .04
1212
1313 steps :
1414 - name : Checkout repository
@@ -28,15 +28,16 @@ jobs:
2828 run : |
2929 docker compose --env-file .env_test -f docker-compose-test.yml build --progress plain
3030 env :
31+ BUILDKIT_CACHE : /tmp/.buildx-cache
3132 DOCKER_BUILDKIT : 1
3233
3334 # -------------------------
34- # SMOKE TESTS (MUST PASS FIRST)
35+ # TEST test runner
3536 # -------------------------
3637 geonode_test_suite_smoke :
3738 name : Smoke Tests
3839 needs : build_images
39- runs-on : ubuntu-22 .04
40+ runs-on : ubuntu-24 .04
4041
4142 steps :
4243 - uses : actions/checkout@v4
@@ -64,13 +65,50 @@ jobs:
6465
6566 - name : Run smoke tests
6667 run : |
67- docker compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -c \
68- "SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid();"
69- docker compose --env-file .env_test -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_geonode
70- docker compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -d test_geonode -c \
71- "CREATE EXTENSION IF NOT EXISTS postgis;"
72- docker compose --env-file .env_test -f docker-compose-test.yml exec django bash -c \
73- "./tests/test.sh geonode.tests.smoke geonode.tests.test_rest_api geonode.tests.test_search geonode.tests.test_utils geonode.tests.test_headers"
68+ docker compose --env-file .env_test -f docker-compose-test.yml exec django bash -lc "pwd && ls -lah /usr/src/geonode || true"
69+
70+
71+ # # -------------------------
72+ # # SMOKE TESTS (MUST PASS FIRST)
73+ # # -------------------------
74+ # geonode_test_suite_smoke:
75+ # name: Smoke Tests
76+ # needs: build_images
77+ # runs-on: ubuntu-24.04
78+ #
79+ # steps:
80+ # - uses: actions/checkout@v4
81+ # - uses: actions/cache@v4
82+ # with:
83+ # path: /tmp/.buildx-cache
84+ # key: geonode-cache-${{ github.run_id }}
85+ #
86+ # - name: Start stack
87+ # run: docker compose --env-file .env_test -f docker-compose-test.yml up -d
88+ #
89+ # - name: Wait for services
90+ # run: |
91+ # n=1; m=10
92+ # until [ $n -gt $m ]; do
93+ # sleep 60
94+ # DJANGO_STATUS=$(docker inspect --format='{{.State.Health.Status}}' django4geonode)
95+ # GEOSERVER_STATUS=$(docker inspect --format='{{.State.Health.Status}}' geoserver4geonode)
96+ # echo "Waited $n min (out of $m)"
97+ # if [[ $DJANGO_STATUS == healthy && $GEOSERVER_STATUS == healthy ]]; then break; fi
98+ # docker ps
99+ # n=$((n+1))
100+ # done
101+ # [[ $DJANGO_STATUS == healthy && $GEOSERVER_STATUS == healthy ]]
102+ #
103+ # - name: Run smoke tests
104+ # run: |
105+ # docker compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -c \
106+ # "SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid();"
107+ # docker compose --env-file .env_test -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_geonode
108+ # docker compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -d test_geonode -c \
109+ # "CREATE EXTENSION IF NOT EXISTS postgis;"
110+ # docker compose --env-file .env_test -f docker-compose-test.yml exec django bash -c \
111+ # "./tests/test.sh geonode.tests.smoke geonode.tests.test_rest_api geonode.tests.test_search geonode.tests.test_utils geonode.tests.test_headers"
74112
75113# - name: Upload coverage to Codecov
76114# run: |
95133# geonode_test_suite:
96134# name: Main Tests
97135# needs: [build_images, geonode_test_suite_smoke] # run only if smoke passed
98- # runs-on: ubuntu-22 .04
136+ # runs-on: ubuntu-24 .04
99137#
100138# steps:
101139# - uses: actions/checkout@v4
@@ -141,7 +179,7 @@ jobs:
141179# geonode_test_security:
142180# name: Security Tests
143181# needs: [build_images, geonode_test_suite_smoke]
144- # runs-on: ubuntu-22 .04
182+ # runs-on: ubuntu-24 .04
145183# steps:
146184# - uses: actions/checkout@v4
147185# - uses: actions/cache@v4
@@ -161,7 +199,7 @@ jobs:
161199# geonode_test_gis_backend:
162200# name: GIS Backend Tests
163201# needs: [build_images, geonode_test_suite_smoke]
164- # runs-on: ubuntu-22 .04
202+ # runs-on: ubuntu-24 .04
165203# steps:
166204# - uses: actions/checkout@v4
167205# - uses: actions/cache@v4
@@ -180,7 +218,7 @@ jobs:
180218# geonode_test_rest_apis:
181219# name: REST API Tests
182220# needs: [build_images, geonode_test_suite_smoke]
183- # runs-on: ubuntu-22 .04
221+ # runs-on: ubuntu-24 .04
184222# steps:
185223# - uses: actions/checkout@v4
186224# - uses: actions/cache@v4
@@ -199,7 +237,7 @@ jobs:
199237# geonode_test_csw:
200238# name: CSW Tests
201239# needs: [build_images, geonode_test_suite_smoke]
202- # runs-on: ubuntu-22 .04
240+ # runs-on: ubuntu-24 .04
203241# steps:
204242# - uses: actions/checkout@v4
205243# - uses: actions/cache@v4
@@ -218,7 +256,7 @@ jobs:
218256# geonode_upload:
219257# name: Upload Tests
220258# needs: [build_images, geonode_test_suite_smoke]
221- # runs-on: ubuntu-22 .04
259+ # runs-on: ubuntu-24 .04
222260# steps:
223261# - uses: actions/checkout@v4
224262# - uses: actions/cache@v4
0 commit comments