Skip to content

Commit fcb6746

Browse files
authored
Merge branch 'main' into patch-12
2 parents 96cf710 + fd26d0f commit fcb6746

677 files changed

Lines changed: 48737 additions & 102406 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitattributes

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Apply LF line endings to all Perl files
2+
*.pl text eol=lf
3+
*.pm text eol=lf
4+
5+
# Apply LF line endings to all .adoc files in the docs directory
6+
/docs/**/*.adoc text eol=lf

.github/workflows/docs.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,16 @@ jobs:
2222
name: built-docs
2323
path: docs/output
2424
retention-days: 2
25+
check_docs_styles:
26+
name: Check docs styles
27+
runs-on: ubuntu-latest
28+
steps:
29+
- uses: actions/checkout@v3
30+
- name: Install asciidoctor
31+
run: sudo apt-get install -y asciidoctor
32+
- name: Install vale
33+
run: pip install vale
34+
- name: Download and install vale rules
35+
run: cd docs && vale sync
36+
- name: Check documentation against DIG style guide
37+
run: cd docs && vale modules

.github/workflows/ng-build.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Run ng build --configuration production
2+
on:
3+
push:
4+
paths:
5+
- '.github/workflows/**'
6+
- 'Open-ILS/src/eg2/**'
7+
pull_request:
8+
paths:
9+
- '.github/workflows/**'
10+
- 'Open-ILS/src/eg2/**'
11+
defaults:
12+
run:
13+
working-directory: Open-ILS/src/eg2
14+
jobs:
15+
lint:
16+
name: Run Angular build
17+
runs-on: ubuntu-latest
18+
steps:
19+
- uses: actions/checkout@v4
20+
- uses: actions/setup-node@v4
21+
with:
22+
node-version: 22
23+
cache: 'npm'
24+
cache-dependency-path: Open-ILS/src/eg2/package-lock.json
25+
- name: Install dependencies
26+
run: npm ci --ignore-scripts
27+
- name: build
28+
run: npx ng build --configuration production
29+

.github/workflows/ng-lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- uses: actions/checkout@v3
1818
- uses: actions/setup-node@v3
1919
with:
20-
node-version: 16
20+
node-version: 22
2121
cache: 'npm'
2222
cache-dependency-path: Open-ILS/src/eg2/package-lock.json
2323
- name: Install dependencies

.github/workflows/opac-unit-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- uses: actions/checkout@v4
1818
- uses: actions/setup-node@v4
1919
with:
20-
node-version: 18
20+
node-version: 22
2121
cache: 'npm'
2222
cache-dependency-path: Open-ILS/web/opac/deps/package-lock.json
2323
- name: Install dependencies

.github/workflows/pgtap.yml

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
name: Run pgtap tests
2+
on:
3+
push:
4+
paths:
5+
- '.github/workflows/**'
6+
- 'Open-ILS/src/sql/**'
7+
- 'Open-ILS/tests/datasets/**'
8+
pull_request:
9+
paths:
10+
- '.github/workflows/**'
11+
- 'Open-ILS/src/sql/**'
12+
- 'Open-ILS/tests/datasets/**'
13+
workflow_dispatch:
14+
15+
env:
16+
PGHOST: localhost
17+
PGPASSWORD: postgres
18+
PGPORT: 5432
19+
PGUSER: postgres
20+
21+
jobs:
22+
pgtap:
23+
name: Run PgTap tests
24+
runs-on: ubuntu-22.04
25+
strategy:
26+
matrix:
27+
pg-version: [13, 14, 15, 16, 17]
28+
fail-fast: false
29+
steps:
30+
- uses: actions/checkout@v4
31+
32+
# The Github actions jammy image comes with postgres 14 installed. To test other postgres
33+
# versions, we need to remove 14 first
34+
- name: Delete the postgres 14 cluster that comes with the github actions ubuntu image
35+
run: sudo pg_dropcluster --stop 14 main
36+
if: matrix.pg-version != 14
37+
- name: Remove any postgres that is already installed in the github actions ubuntu image
38+
run: sudo apt remove -y postgres*
39+
if: matrix.pg-version != 14
40+
41+
# Next, let's install dependencies
42+
- name: Install postgres and dependencies
43+
run: sudo make -f Open-ILS/src/extras/Makefile.install postgres-server-ubuntu-jammy-${{ matrix.pg-version }}
44+
- name: Install libdbi-perl
45+
run: sudo apt update && sudo apt install -y libdbi-perl
46+
- name: Install pg_prove
47+
run: sudo cpan -T TAP::Parser::SourceHandler::pgTAP
48+
env:
49+
SHELL: /bin/bash
50+
- name: Checkout the pgtap repository
51+
uses: actions/checkout@v4
52+
with:
53+
repository: theory/pgtap
54+
path: pgtap
55+
ref: v1.3.2
56+
57+
# Start up postgres
58+
- name: start postgres cluster
59+
run: sudo pg_ctlcluster ${{ matrix.pg-version }} main start
60+
- name: change postgres to a known password
61+
run: sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD '$PGPASSWORD'"
62+
63+
# Create the needed database, extensions, schema, and data
64+
- name: Install database extensions
65+
run: psql --file create_database_extensions.sql -v db_name=evergreen
66+
working-directory: Open-ILS/src/sql/Pg
67+
- name: Install pgtap extension
68+
working-directory: pgtap
69+
run: make && psql --dbname evergreen --file sql/pgtap.sql
70+
- name: Build database
71+
run: "./build-db.sh $PGHOST $PGPORT evergreen $PGUSER $PGPASSWORD 1"
72+
working-directory: Open-ILS/src/sql/Pg
73+
- name: Load sample data
74+
run: psql --dbname evergreen --file load_all.sql
75+
working-directory: Open-ILS/tests/datasets/sql/concerto
76+
77+
# Now, let's run the tests!
78+
- name: Run pgtap tests
79+
run: pg_prove --dbname evergreen t
80+
working-directory: Open-ILS/src/sql/Pg
81+
- name: Run pgtap regression tests
82+
run: pg_prove --dbname evergreen t/regress
83+
working-directory: Open-ILS/src/sql/Pg
84+
- name: Run pgtap live tests
85+
run: pg_prove --dbname evergreen live_t
86+
working-directory: Open-ILS/src/sql/Pg
87+

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,3 +365,13 @@ Open-ILS/web/opac/deps/node_modules/
365365

366366
# Ignore O/S-specific hidden files
367367
.DS_Store
368+
369+
# Docker DEV container uses these
370+
docker-watch.sh
371+
db_control.txt
372+
db_switch.log
373+
eg_restart_go_screenoutput
374+
eg_restart_go
375+
eg_rebuild_angular_screenoutput
376+
eg_rebuild_angular
377+
watch.LOCK

ChangeLog

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
Evergreen doesn't keep a GNU-style ChangeLog except in release tarballs.
2-
Those seeking a change log are encouraged to run 'git log -v', or read
3-
it online at: http://git.evergreen-ils.org/?p=Evergreen.git;a=log
1+
Release notes can be found in the docs/RELEASE_NOTES_* file for
2+
the version of Evergreen that you are installing.

Open-ILS/examples/apache_24/eg_vhost.conf.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,14 @@ OSRFTranslatorConfig @sysconfdir@/opensrf_core.xml
8585
Require all granted
8686
</Location>
8787

88+
# Eresource link click tracker
89+
<Location /opac/extras/eresource_link_click_track>
90+
SetHandler perl-script
91+
PerlHandler OpenILS::WWW::EResourceLinkClick
92+
PerlSendHeader On
93+
Require all granted
94+
</Location>
95+
8896
# Flattener service
8997
<Location /opac/extras/flattener>
9098
SetHandler perl-script

Open-ILS/examples/crontab.example

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,5 +103,10 @@ EG_BIN_DIR = /openils/bin
103103
# Clean out action.hold_request_reset_reason_entry table
104104
0 1 * * * . ~/.bashrc && $EG_BIN_DIR/purge_hold_reset_reason_entries.srfsh
105105

106+
# Delete old link click analytics that are no longer needed after
107+
# the given number of days (365 by default)
108+
#0 1 * * * cd /openils/bin && /usr/bin/perl ./delete_old_eresource_link_clicks.pl > /dev/null
109+
110+
106111
# TODO: add other entries
107112

0 commit comments

Comments
 (0)