From 36911d2a1eccddad5b4fdf1941aa182013f20c9c Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 09:16:03 +0100 Subject: [PATCH 01/35] Install Perl5 and dev tools for Inline::Perl5 --- .github/workflows/backend-and-models.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 897567fa..c92c8c06 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -34,10 +34,10 @@ jobs: --health-retries 5 steps: - - name: Install LaTeX + - name: Install system dependencies run: | sudo apt update - sudo apt-get install texlive texlive-luatex texlive-latex-recommended texlive-latex-extra texlive-science + sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-latex-extra texlive-science - name: Checkout repo uses: actions/checkout@v2 From ace26fea852339a513e19a756f9f63f87bdfc19c Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 09:33:10 +0100 Subject: [PATCH 02/35] Fix DB access --- .github/workflows/backend-and-models.yml | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index c92c8c06..c76f28b5 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -26,7 +26,7 @@ jobs: POSTGRES_PASSWORD: postgres POSTGRES_DB: agrammon_test ports: - - 5432:5432 + - 55432:5432 options: --health-cmd pg_isready --health-interval 10s @@ -77,17 +77,21 @@ jobs: env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres - POSTGRES_DB: agrammon_test PGPASSFILE: ./dev/pgpass - AGRAMMON_DUMP: ./t/test-data/agrammon_test.dump.sql + AGRAMMON_DB: agrammon_test + AGRAMMON_OWNER: agrammon + AGRAMMON_GROUP: agrammon_user + AGRAMMON_SCHEMA: ./t/test-data/agrammon.schema.sql + AGRAMMON_TEST_DATA: ./t/test-data/agrammon.test.sql run: | chmod 0600 $PGPASSFILE - psql -U postgres -h localhost -c "CREATE USER agrammon PASSWORD 'agrammonATwork'" > /dev/null - psql -U postgres -h localhost -c "CREATE GROUP agrammon_user USER agrammon" > /dev/null - psql -U postgres -h localhost -c "GRANT ALL ON SCHEMA public TO agrammon_user" > /dev/null - psql -U postgres -h localhost -c "CREATE EXTENSION pgcrypto" agrammon_test > /dev/null - psql -U postgres -h localhost --file=$AGRAMMON_DUMP $POSTGRES_DB > /dev/null + psql -U postgres -h localhost -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null + psql -U postgres -h localhost -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null + psql -U postgres -h localhost -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null + psql -U postgres -h localhost -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null + psql -U postgres -h localhost --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U postgres -h localhost --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Run backend tests run: | - RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t + PERL5LIB=Inline/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t From 5827aba1ca815ed6704c53f7f000f5758b658560 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 09:39:06 +0100 Subject: [PATCH 03/35] Fix PG port --- .github/workflows/backend-and-models.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index c76f28b5..b3cbda1d 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -85,12 +85,12 @@ jobs: AGRAMMON_TEST_DATA: ./t/test-data/agrammon.test.sql run: | chmod 0600 $PGPASSFILE - psql -U postgres -h localhost -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null - psql -U postgres -h localhost -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null - psql -U postgres -h localhost -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U postgres -h localhost -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U postgres -h localhost --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U postgres -h localhost --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null + psql -U postgres -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null + psql -U postgres -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null + psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null + psql -U postgres -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null + psql -U postgres -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U postgres -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Run backend tests run: | From 08d39416e0de5e0d1ca1a71d3804f86806859747 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 09:48:29 +0100 Subject: [PATCH 04/35] Add Excel Perl5 module to work flow --- .github/workflows/backend-and-models.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index b3cbda1d..c491774c 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -42,6 +42,11 @@ jobs: - name: Checkout repo uses: actions/checkout@v2 + - name: Install Perl modules + run: | + sudo apt-get install -y cpanminus + cpanm --notest --local-lib=Inline/perl5 Excel::Writer::XLSX + - name: Setup raku uses: Raku/setup-raku@v1 with: From d0d421f97686fd16f6b4088b0dd80cbaaafb96f7 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 10:02:06 +0100 Subject: [PATCH 05/35] Fix/improve --- .github/workflows/backend-and-models.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index c491774c..72070951 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -42,7 +42,15 @@ jobs: - name: Checkout repo uses: actions/checkout@v2 + - name: Setup Perl modules cache + uses: actions/cache@v4 + id: perlCache + with: + path: Inline/perl5 + key: ${{ runner.os }}-perl-${{ hashFiles('**/cpanfile', '**/cpanfile.snapshot') }}-excel-writer-xlsx-v1 + - name: Install Perl modules + if: steps.perlCache.outputs.cache-hit != 'true' run: | sudo apt-get install -y cpanminus cpanm --notest --local-lib=Inline/perl5 Excel::Writer::XLSX @@ -99,4 +107,4 @@ jobs: - name: Run backend tests run: | - PERL5LIB=Inline/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t + PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t From cce9b8d40606f5d16528086c2823eea471eb8647 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 10:44:42 +0100 Subject: [PATCH 06/35] Set POSTGRES_DB --- .github/workflows/backend-and-models.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 72070951..a037c7d7 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -91,6 +91,7 @@ jobs: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres PGPASSFILE: ./dev/pgpass + POSTGRES_DB: agrammon_test AGRAMMON_DB: agrammon_test AGRAMMON_OWNER: agrammon AGRAMMON_GROUP: agrammon_user From 03a7c081dc4112ae48580d1c9283aff7c3c081a2 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 11:54:49 +0100 Subject: [PATCH 07/35] Fix DB permissions --- .github/workflows/backend-and-models.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index a037c7d7..35b8a61d 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -103,8 +103,8 @@ jobs: psql -U postgres -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null psql -U postgres -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U postgres -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U postgres -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Run backend tests run: | From e8086d2e69c48f0cbbebf07298bf21728f81b76f Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 11:58:31 +0100 Subject: [PATCH 08/35] Add password for agrammon DB user --- dev/pgpass | 1 + 1 file changed, 1 insertion(+) diff --git a/dev/pgpass b/dev/pgpass index c9b1791e..29afd157 100644 --- a/dev/pgpass +++ b/dev/pgpass @@ -1 +1,2 @@ +*:*:*:agrammon:agrammon *:*:*:postgres:postgres From 92da7eaafa167d28843ff483f62c644df46ccc20 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:05:44 +0100 Subject: [PATCH 09/35] Create database first --- .github/workflows/backend-and-models.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 35b8a61d..6d2049c3 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -102,6 +102,7 @@ jobs: psql -U postgres -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null psql -U postgres -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null + psql -U postgres -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null psql -U postgres -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null From b6ecd4731805a0cc61fa5bfd24ffeb04125501c3 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:06:55 +0100 Subject: [PATCH 10/35] Add grants --- .github/workflows/backend-and-models.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 6d2049c3..e0fd3d44 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -103,6 +103,7 @@ jobs: psql -U postgres -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null psql -U postgres -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null + psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U postgres -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null From 1b890e0cb76b8254c1a03bea4ea514445fdc742a Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:11:18 +0100 Subject: [PATCH 11/35] Fix DB --- .github/workflows/backend-and-models.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index e0fd3d44..66f99813 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -91,7 +91,7 @@ jobs: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres PGPASSFILE: ./dev/pgpass - POSTGRES_DB: agrammon_test + POSTGRES_DB: postgres AGRAMMON_DB: agrammon_test AGRAMMON_OWNER: agrammon AGRAMMON_GROUP: agrammon_user @@ -99,14 +99,14 @@ jobs: AGRAMMON_TEST_DATA: ./t/test-data/agrammon.test.sql run: | chmod 0600 $PGPASSFILE - psql -U postgres -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null - psql -U postgres -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null - psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U postgres -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null - psql -U postgres -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null - psql -U postgres -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Run backend tests run: | From bce12df0475d9472ffbf9b527eb05dfc1a6b790d Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:11:58 +0100 Subject: [PATCH 12/35] Setup DB first --- .github/workflows/backend-and-models.yml | 43 ++++++++++++------------ 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 66f99813..289f1bcd 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -34,6 +34,28 @@ jobs: --health-retries 5 steps: + - name: Load test database + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + PGPASSFILE: ./dev/pgpass + POSTGRES_DB: postgres + AGRAMMON_DB: agrammon_test + AGRAMMON_OWNER: agrammon + AGRAMMON_GROUP: agrammon_user + AGRAMMON_SCHEMA: ./t/test-data/agrammon.schema.sql + AGRAMMON_TEST_DATA: ./t/test-data/agrammon.test.sql + run: | + chmod 0600 $PGPASSFILE + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null + - name: Install system dependencies run: | sudo apt update @@ -86,27 +108,6 @@ jobs: path: $HOME/.agrammon key: AgrammonModels-${{ hashFiles('./MODEL_MD5') }} - - name: Load test database - env: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: postgres - PGPASSFILE: ./dev/pgpass - POSTGRES_DB: postgres - AGRAMMON_DB: agrammon_test - AGRAMMON_OWNER: agrammon - AGRAMMON_GROUP: agrammon_user - AGRAMMON_SCHEMA: ./t/test-data/agrammon.schema.sql - AGRAMMON_TEST_DATA: ./t/test-data/agrammon.test.sql - run: | - chmod 0600 $PGPASSFILE - psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Run backend tests run: | From 50010e76583e1c05e841ddc1727cb1d40a613183 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:13:29 +0100 Subject: [PATCH 13/35] Checkout Repo first --- .github/workflows/backend-and-models.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 289f1bcd..2d1bfca7 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -34,6 +34,9 @@ jobs: --health-retries 5 steps: + - name: Checkout repo + uses: actions/checkout@v2 + - name: Load test database env: POSTGRES_USER: postgres @@ -61,9 +64,6 @@ jobs: sudo apt update sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-latex-extra texlive-science - - name: Checkout repo - uses: actions/checkout@v2 - - name: Setup Perl modules cache uses: actions/cache@v4 id: perlCache From 586238961eb3aa076a740e0e37409ed1fd0db05b Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:18:15 +0100 Subject: [PATCH 14/35] Change database owner --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 2d1bfca7..8eaa1d02 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -53,7 +53,7 @@ jobs: psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null From 857979ca8da2eec5d99f6d78f688a3c8e1ceba08 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:19:16 +0100 Subject: [PATCH 15/35] Change database owner --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 8eaa1d02..858d5c86 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -53,7 +53,7 @@ jobs: psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null From 832e860521d154a88346635f0cf9bc83fc218b23 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:27:43 +0100 Subject: [PATCH 16/35] Change grants --- .github/workflows/backend-and-models.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 858d5c86..bd82a06a 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -53,9 +53,9 @@ jobs: psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null + # psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null From 3a14b205907669c86017fc26b1d557c86e25fd0c Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:29:09 +0100 Subject: [PATCH 17/35] Change grants --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index bd82a06a..1811820e 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -55,8 +55,8 @@ jobs: psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null # psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Install system dependencies From 534146f8862448043f7f919ad8dae14e56bfc306 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:30:42 +0100 Subject: [PATCH 18/35] Change grants --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 1811820e..59f632eb 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -56,7 +56,7 @@ jobs: # psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON DATABASE$AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Install system dependencies From e64646cfefbe2c64636d4b63fa293cd8170a5aeb Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:31:37 +0100 Subject: [PATCH 19/35] Change grants --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 59f632eb..79097d4a 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -56,7 +56,7 @@ jobs: # psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON DATABASE$AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON DATABASE $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Install system dependencies From 7ab69740ab5da996a18447c890212b55ee1d2687 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 12:34:06 +0100 Subject: [PATCH 20/35] Change grants --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 79097d4a..849d9a61 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -55,7 +55,7 @@ jobs: psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null # psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON DATABASE $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null From a630440c0db4615226fe71a23c3aa1cf024f8dc9 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 13:59:31 +0100 Subject: [PATCH 21/35] Change owner --- .github/workflows/backend-and-models.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 849d9a61..d5fa6ab6 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -53,10 +53,8 @@ jobs: psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - # psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON DATABASE $AGRAMMON_DB TO $AGRAMMON_OWNER" > /dev/null + psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null - name: Install system dependencies From b571651cd17b208ce482768f271d92f1f50f4af0 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:03:34 +0100 Subject: [PATCH 22/35] Change owner --- .github/workflows/backend-and-models.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index d5fa6ab6..1100da51 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -52,8 +52,7 @@ jobs: chmod 0600 $PGPASSFILE psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE USER $AGRAMMON_OWNER PASSWORD 'agrammon'" > /dev/null psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE GROUP $AGRAMMON_GROUP USER $AGRAMMON_OWNER" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "GRANT ALL ON SCHEMA public TO $AGRAMMON_GROUP" > /dev/null - psql -U $POSTGRES_USER -h localhost --port 55432 -c "CREATE EXTENSION pgcrypto" $AGRAMMON_DB > /dev/null + psql -U $POSTGRES_USER -h localhost --port 55432 -c "ALTER DATABASE $AGRAMMON_DB OWNER TO $AGRAMMON_OWNER" > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null From 374ddc211c350fa1cf642f817f625548bb0d6605 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:07:56 +0100 Subject: [PATCH 23/35] Limit tests --- .github/workflows/backend-and-models.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 1100da51..e8506c6e 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -108,4 +108,6 @@ jobs: - name: Run backend tests run: | - PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t + # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t + PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/dataset.rakutest + PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest \ No newline at end of file From 8d08d9fcd741a1e0afa34c9fcf3875c06dc210c9 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:12:00 +0100 Subject: [PATCH 24/35] Limit tests --- .github/workflows/backend-and-models.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index e8506c6e..d303cd41 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -59,7 +59,7 @@ jobs: - name: Install system dependencies run: | sudo apt update - sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-latex-extra texlive-science + sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science texlive-latex-extra - name: Setup Perl modules cache uses: actions/cache@v4 @@ -109,5 +109,5 @@ jobs: - name: Run backend tests run: | # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t - PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/dataset.rakutest + # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/dataset.rakutest PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest \ No newline at end of file From 30e6d824f38d2cf932d955e743a9c7402b773597 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:24:30 +0100 Subject: [PATCH 25/35] Don't create test user --- t/datasource-db.rakutest | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/t/datasource-db.rakutest b/t/datasource-db.rakutest index d07ef4a2..e1b279ed 100644 --- a/t/datasource-db.rakutest +++ b/t/datasource-db.rakutest @@ -385,10 +385,10 @@ sub prepare-test-db-schema($db, $user) { AS 'SELECT dataset_id FROM dataset WHERE dataset_name = $2 AND dataset_pers = pers_email2id($1)' STABLE LANGUAGE 'sql' STATEMENT - $db.query(q:to/STATEMENT/, $user); - INSERT INTO pers (pers_email, pers_first, pers_last, pers_password) - VALUES ($1, 'X', 'X', 'X') - STATEMENT +# $db.query(q:to/STATEMENT/, $user); +# INSERT INTO pers (pers_email, pers_first, pers_last, pers_password) +# VALUES ($1, 'X', 'X', 'X') +# STATEMENT } done-testing; From 220cf2d0ccc45959ce97d6fee41f2c1b2eefed17 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:29:32 +0100 Subject: [PATCH 26/35] Try without latex-extras --- .github/workflows/backend-and-models.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index d303cd41..54319122 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -34,6 +34,7 @@ jobs: --health-retries 5 steps: + # Checkout repository first as we need dev/pgpass for PostgreSQL access - name: Checkout repo uses: actions/checkout@v2 @@ -59,7 +60,7 @@ jobs: - name: Install system dependencies run: | sudo apt update - sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science texlive-latex-extra + sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science # texlive-latex-extra - name: Setup Perl modules cache uses: actions/cache@v4 From 1be44467a9b283d8b92f23dd22844e83db6855b4 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:30:06 +0100 Subject: [PATCH 27/35] Try without latex-extras --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 54319122..8b597567 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -110,5 +110,5 @@ jobs: - name: Run backend tests run: | # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t - # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/dataset.rakutest + PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/pdf.rakutest PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest \ No newline at end of file From eaf717e6747f2011a10a49563ee37d16f7f9cfa1 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:34:01 +0100 Subject: [PATCH 28/35] Add latex-extras again --- .github/workflows/backend-and-models.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 8b597567..d30758a8 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -60,7 +60,7 @@ jobs: - name: Install system dependencies run: | sudo apt update - sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science # texlive-latex-extra + sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science texlive-latex-extra - name: Setup Perl modules cache uses: actions/cache@v4 @@ -106,7 +106,6 @@ jobs: path: $HOME/.agrammon key: AgrammonModels-${{ hashFiles('./MODEL_MD5') }} - - name: Run backend tests run: | # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t From 806e420d1e309b65663f83a1304214e939d5d75d Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:39:40 +0100 Subject: [PATCH 29/35] Try LaTeX cache --- .github/workflows/backend-and-models.yml | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index d30758a8..e773fb0e 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -57,10 +57,19 @@ jobs: psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_SCHEMA $AGRAMMON_DB > /dev/null psql -U $AGRAMMON_OWNER -h localhost --port 55432 --file=$AGRAMMON_TEST_DATA $AGRAMMON_DB > /dev/null + - name: Setup apt cache + uses: actions/cache@v4 + id: aptCache + with: + path: | + /var/cache/apt/archives + /var/lib/apt/lists + key: ${{ runner.os }}-apt-${{ hashFiles('.github/workflows/backend-and-models.yml') }} + - name: Install system dependencies run: | sudo apt update - sudo apt-get install libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science texlive-latex-extra + sudo apt-get install -y libperl-dev texlive texlive-luatex texlive-latex-recommended texlive-science texlive-latex-extra - name: Setup Perl modules cache uses: actions/cache@v4 @@ -109,5 +118,4 @@ jobs: - name: Run backend tests run: | # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t - PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/pdf.rakutest - PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest \ No newline at end of file + PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest From f1bb235d1fb72f6cd1541d2993ae20655172243d Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:51:01 +0100 Subject: [PATCH 30/35] Enforce cache --- .github/workflows/backend-and-models.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index e773fb0e..514610d2 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -107,6 +107,7 @@ jobs: find t/test-data/Models/hr-inclNOx* -type f -print0 | sort -z | xargs -0 shasum > ./MODEL_MD5 cat ./MODEL_MD5 mkdir -p $HOME/.agrammon + touch $HOME/.agrammon/.gitkeep - name: Setup model cache uses: actions/cache@v4 From dd5451ebd58abcdb7ba05e17a9b4ae26250ca19d Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:54:45 +0100 Subject: [PATCH 31/35] No schema creation --- t/datasource-db.rakutest | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/t/datasource-db.rakutest b/t/datasource-db.rakutest index e1b279ed..c9ab2205 100644 --- a/t/datasource-db.rakutest +++ b/t/datasource-db.rakutest @@ -208,7 +208,7 @@ transactionally { sub prepare-test-db-single-data($user, $dataset, %variant) { my $db = $*AGRAMMON-DB-HANDLE; - prepare-test-db-schema($db, $user); +# prepare-test-db-schema($db); my $userId = $db.query(q:to/STATEMENT/, $user).value; SELECT pers_email2id($1) @@ -239,7 +239,7 @@ sub prepare-test-db-single-data($user, $dataset, %variant) { sub prepare-test-db-flattened-data($user, $dataset, %variant) { my $db = $*AGRAMMON-DB-HANDLE; - prepare-test-db-schema($db, $user); +# prepare-test-db-schema($db); my $userId = $db.query(q:to/STATEMENT/, $user).value; SELECT pers_email2id($1) @@ -284,7 +284,7 @@ sub prepare-test-db-flattened-data($user, $dataset, %variant) { sub prepare-test-db-branched-data($user, $dataset, %variant) { my $db = $*AGRAMMON-DB-HANDLE; - prepare-test-db-schema($db, $user); +# prepare-test-db-schema($db); my $userId = $db.query(q:to/STATEMENT/, $user).value; SELECT pers_email2id($1) @@ -333,7 +333,7 @@ sub prepare-test-db-branched-data($user, $dataset, %variant) { $sth-data.execute($datasetId, 'Instance B', 'Test::Base[]::AnotherSubA::simple', 101); } -sub prepare-test-db-schema($db, $user) { +sub prepare-test-db-schema($db) { $db.query(q:to/STATEMENT/); CREATE TABLE IF NOT EXISTS pers ( pers_id SERIAL NOT NULL PRIMARY KEY, -- Unique ID @@ -384,11 +384,6 @@ sub prepare-test-db-schema($db, $user) { CREATE OR REPLACE FUNCTION dataset_name2id(USERNAME text, NAME text) returns int4 AS 'SELECT dataset_id FROM dataset WHERE dataset_name = $2 AND dataset_pers = pers_email2id($1)' STABLE LANGUAGE 'sql' STATEMENT - -# $db.query(q:to/STATEMENT/, $user); -# INSERT INTO pers (pers_email, pers_first, pers_last, pers_password) -# VALUES ($1, 'X', 'X', 'X') -# STATEMENT } done-testing; From 78713fc29595768f5851f9c3b17d9279e4ab5777 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 14:59:34 +0100 Subject: [PATCH 32/35] Run all tests --- .github/workflows/backend-and-models.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 514610d2..e5f68feb 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -118,5 +118,5 @@ jobs: - name: Run backend tests run: | - # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t - PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest + PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t + # PERL5LIB=Inline/perl5/lib/perl5 RAKULIB=inst#$GITHUB_WORKSPACE/.raku $GITHUB_WORKSPACE/.raku/bin/prove6 -l -v t/datasource-db.rakutest From c742050f71f859cce129a571321215bf0de9b332 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 15:13:46 +0100 Subject: [PATCH 33/35] Use Rakudo 2025.11 --- .github/workflows/backend-and-models.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index e5f68feb..1f3b3077 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -15,7 +15,7 @@ jobs: os: - ubuntu-22.04 raku-version: - - '2025.01' + - '2025.11' runs-on: ${{ matrix.os }} services: From b0d45146c25ea1abff9b2a1b5668d63c5a67f188 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 15:26:33 +0100 Subject: [PATCH 34/35] Test Ubuntu 2024.04 as well --- .github/workflows/backend-and-models.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 1f3b3077..988e982c 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -14,6 +14,7 @@ jobs: matrix: os: - ubuntu-22.04 + - ubuntu-24.04 raku-version: - '2025.11' runs-on: ${{ matrix.os }} From f227572712e47df00baab8b2dc6990d782d75198 Mon Sep 17 00:00:00 2001 From: Fritz Zaucker Date: Thu, 27 Nov 2025 15:43:05 +0100 Subject: [PATCH 35/35] Fix cache keys --- .github/workflows/backend-and-models.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/backend-and-models.yml b/.github/workflows/backend-and-models.yml index 988e982c..8a3b886d 100644 --- a/.github/workflows/backend-and-models.yml +++ b/.github/workflows/backend-and-models.yml @@ -65,7 +65,7 @@ jobs: path: | /var/cache/apt/archives /var/lib/apt/lists - key: ${{ runner.os }}-apt-${{ hashFiles('.github/workflows/backend-and-models.yml') }} + key: ${{ matrix.os }}-apt-${{ hashFiles('.github/workflows/backend-and-models.yml') }} - name: Install system dependencies run: | @@ -77,7 +77,7 @@ jobs: id: perlCache with: path: Inline/perl5 - key: ${{ runner.os }}-perl-${{ hashFiles('**/cpanfile', '**/cpanfile.snapshot') }}-excel-writer-xlsx-v1 + key: ${{ matrix.os }}-perl-${{ hashFiles('**/cpanfile', '**/cpanfile.snapshot') }}-excel-writer-xlsx-v1 - name: Install Perl modules if: steps.perlCache.outputs.cache-hit != 'true' @@ -95,7 +95,7 @@ jobs: id: rakuCache with: path: .raku - key: ${{ runner.os }}-${{ matrix.raku-version }}-${{ hashFiles('./dev/META6.json') }} + key: ${{ matrix.os }}-${{ matrix.raku-version }}-${{ hashFiles('./dev/META6.json') }} - name: Install Raku modules if: steps.rakuCache.outputs.cache-hit != 'true'