Compare commits

...

36 Commits

Author SHA1 Message Date
b228deb919 Merge pull request #437 from wallabag/prepare-2.6.12-release
Prepare 2.6.12 release
2025-04-10 13:55:21 +02:00
52afa94c77 Prepare 2.6.12 release 2025-04-10 12:08:12 +02:00
55976e23e5 Merge pull request #436 from wallabag/prepare-2.6.11-release
Prepare 2.6.11 release
2025-04-08 23:09:59 +02:00
3975a28546 Prepare 2.6.11 release 2025-03-30 06:38:09 +02:00
0e58189b97 Merge pull request #431 from Luensche/patch-1
Update README.md
2025-01-23 20:11:14 +01:00
2d96e30450 Update README.md
Version in docker-compose.yaml is obsolete.
2025-01-07 21:40:29 +01:00
364b1b3d84 Merge pull request #428 from wallabag/2.6.x
Backport 2.6.10 into master
2024-11-19 21:10:09 +01:00
d1c4800a3e Merge pull request #427 from wallabag/fix/update-ci
Update CI
2024-11-12 09:22:12 +01:00
4c3ff8a8ac Update CI
Allow dependabot to keep GA up to date.
2024-11-12 09:03:21 +01:00
c9104abfeb Merge pull request #424 from wallabag/release/2.6.10
Prepare 2.6.10 release
2024-11-03 16:00:52 +01:00
78d6d36e0c Prepare 2.6.10 release 2024-11-03 08:12:24 +01:00
2a78ed65fe Merge pull request #411 from wallabag/release/2.6.9
Prepare 2.6.9
2024-04-03 11:14:05 +02:00
cb78d1c98c Prepare 2.6.9
See https://github.com/wallabag/wallabag/releases/tag/2.6.9
2024-04-03 11:00:19 +02:00
19b6080f31 Merge pull request #404 from wallabag/impr/phpini
Update shipped php.ini with php-production.ini from PHP 8.1
2024-03-11 12:51:25 +01:00
85c82d22c4 Update shipped php.ini with php-production.ini from PHP 8.1
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-11 12:46:49 +01:00
2ab5b95caf Merge pull request #405 from wallabag/impr/nginx
Update NGINX timeout to align with max_execution_time
2024-03-11 12:03:26 +01:00
2c4fc77b58 Update NGINX timeout to align with max_execution_time
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-11 11:55:59 +01:00
bffc1412bf Merge pull request #403 from wallabag/impr/memlimit
Add support of PHP memory limit in variables
2024-03-11 11:54:52 +01:00
588c21b192 Add support of PHP memory limit in variables
Supersedes #374

Fixes #124

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-11 11:52:55 +01:00
6f2ec8654e Merge branch 'master' into 2.6.x 2024-03-10 22:03:33 +01:00
4143013553 Merge pull request #402 from wallabag/fix/sqlite
Fix SQLite provisioning
2024-03-10 21:59:54 +01:00
eaf63d2098 Merge pull request #401 from wallabag/impr/doc
doc: change docker-compose healthcheck target
2024-03-10 21:59:31 +01:00
9c6aca3b76 Fix SQLite provisioning
If we use a local folder volume binding, install_wallabag was failing
because of missing file and permission issues.

This reworks the way we initially create the database when it is missing
or empty.

Superseeds #386

Fixes #316 #346

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-10 16:21:31 +01:00
e16d9e4113 doc: change docker-compose healthcheck target
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2024-03-10 16:20:26 +01:00
03d1e3a920 Merge pull request #398 from neilbags/patch-1
Add restart: unless-stopped to example docker-compose
2024-03-10 14:11:08 +01:00
7c9d8a37e0 Add restart: unless-stopped to example docker-compose
Most example docker-compose files include restart: unless-stopped or restart: always. This being absent on Wallabag's example leads to unexpected downtime upon server restart
2024-02-01 08:53:52 +11:00
bdbf7b909a Merge pull request #393 from wallabag/release/2.6.8
Prepare 2.6.8
2024-01-03 09:33:14 +01:00
bf62096c0e Prepare 2.6.8 2024-01-03 09:32:44 +01:00
f59fb4b67a Merge pull request #385 from markusnasholm/nginx_ipv6 2023-12-23 07:40:15 +01:00
c68fc98e51 Update nginx.conf to work with IPv6 2023-10-05 20:20:45 +02:00
919f82516c Merge pull request #384 from wallabag/release/2.6.7
Prepare 2.6.7
2023-10-02 14:32:24 +02:00
2515407009 Prepare 2.6.7 2023-10-02 14:30:58 +02:00
9241c7d799 Merge pull request #375 from wallabag/release/2.6.6
Prepare 2.6.6
2023-09-07 09:29:54 +02:00
18d9f742fb Prepare 2.6.6 2023-09-07 09:29:14 +02:00
b5d9ba681c Merge pull request #372 from wallabag/release/2.6.5
2.6.5
2023-08-28 10:38:22 +02:00
746c6e682b 2.6.5 2023-08-28 10:36:30 +02:00
10 changed files with 737 additions and 679 deletions

View File

@ -12,3 +12,10 @@ updates:
versions: versions:
- ">= 3.11.a" - ">= 3.11.a"
- "< 3.12" - "< 3.12"
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly
time: "04:00"
timezone: Europe/Paris
open-pull-requests-limit: 10

View File

@ -13,16 +13,16 @@ jobs:
contents: read contents: read
steps: steps:
- name: Check out the repo - name: Check out the repo
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Log in to Docker Hub - name: Log in to Docker Hub
uses: docker/login-action@v2 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKER_USERNAME }} username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }} password: ${{ secrets.DOCKER_PASSWORD }}
- name: Log in to the Container registry - name: Log in to the Container registry
uses: docker/login-action@v2 uses: docker/login-action@v3
with: with:
registry: ghcr.io registry: ghcr.io
username: ${{ github.actor }} username: ${{ github.actor }}
@ -30,23 +30,23 @@ jobs:
# Documentation: https://github.com/docker/setup-qemu-action # Documentation: https://github.com/docker/setup-qemu-action
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v2 uses: docker/setup-qemu-action@v3
# Documentation: https://github.com/docker/setup-buildx-action # Documentation: https://github.com/docker/setup-buildx-action
- name: Set up Docker Buildx - name: Set up Docker Buildx
id: buildx id: buildx
uses: docker/setup-buildx-action@v2 uses: docker/setup-buildx-action@v3
- name: Extract metadata (tags, labels) for Docker - name: Extract metadata (tags, labels) for Docker
id: meta id: meta
uses: docker/metadata-action@v4 uses: docker/metadata-action@v5
with: with:
images: | images: |
wallabag/wallabag wallabag/wallabag
ghcr.io/${{ github.repository }} ghcr.io/${{ github.repository }}
- name: Build and push Docker images - name: Build and push Docker images
uses: docker/build-push-action@v3 uses: docker/build-push-action@v6
with: with:
context: . context: .
push: true push: true

View File

@ -24,17 +24,17 @@ jobs:
steps: steps:
- name: "Checkout" - name: "Checkout"
uses: actions/checkout@v3 uses: actions/checkout@v4
with: with:
fetch-depth: 2 fetch-depth: 2
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v4 uses: actions/setup-python@v5
with: with:
python-version: 3.11 python-version: 3.11
- name: "Build image" - name: "Build image"
run: docker-compose -f tests/docker-compose.${{ matrix.database }}.yml build run: docker compose -f tests/docker-compose.${{ matrix.database }}.yml build
- name: "Install dependencies" - name: "Install dependencies"
run: pip install pytest pytest-docker requests run: pip install pytest pytest-docker requests
@ -44,8 +44,8 @@ jobs:
- name: "Get docker logs" - name: "Get docker logs"
if: ${{ always() }} if: ${{ always() }}
run: docker-compose -p "wallabag_${{ matrix.database }}" -f tests/docker-compose.${{ matrix.database }}.yml logs wallabag run: docker compose -p "wallabag_${{ matrix.database }}" -f tests/docker-compose.${{ matrix.database }}.yml logs wallabag
- name: "Cleanup environment" - name: "Cleanup environment"
if: ${{ always() }} if: ${{ always() }}
run: docker-compose -p "wallabag_${{ matrix.database }}" -f tests/docker-compose.${{ matrix.database }}.yml down -v run: docker compose -p "wallabag_${{ matrix.database }}" -f tests/docker-compose.${{ matrix.database }}.yml down -v

View File

@ -13,7 +13,7 @@ FROM alpine:3.18
COPY --from=builder /go/bin/envsubst /usr/bin/envsubst COPY --from=builder /go/bin/envsubst /usr/bin/envsubst
ARG WALLABAG_VERSION=2.6.4 ARG WALLABAG_VERSION=2.6.12
RUN set -ex \ RUN set -ex \
&& apk add --no-cache \ && apk add --no-cache \

View File

@ -41,6 +41,7 @@ Default login is `wallabag:wallabag`.
- `-e SYMFONY__ENV__SENTRY_DSN=...` (defaults to "~", this is the data source name for sentry) - `-e SYMFONY__ENV__SENTRY_DSN=...` (defaults to "~", this is the data source name for sentry)
- `-e POPULATE_DATABASE=...`(defaults to "True". Does the DB has to be populated or is it an existing one) - `-e POPULATE_DATABASE=...`(defaults to "True". Does the DB has to be populated or is it an existing one)
- `-e SYMFONY__ENV__SERVER_NAME=...` (defaults to "Your wallabag instance". Specifies a user-friendly name for the 2FA issuer) - `-e SYMFONY__ENV__SERVER_NAME=...` (defaults to "Your wallabag instance". Specifies a user-friendly name for the 2FA issuer)
- `-e PHP_MEMORY_LIMIT=...` (allows you to change the PHP `memory_limit` value. defaults to 128M, and should be a number and unit, eg. 512K, 128M, 2G, or a number of bytes)
## SQLite ## SQLite
@ -108,10 +109,10 @@ $ docker exec -t NAME_OR_ID_OF_YOUR_WALLABAG_CONTAINER /var/www/wallabag/bin/con
An example [docker-compose](https://docs.docker.com/compose/) file can be seen below: An example [docker-compose](https://docs.docker.com/compose/) file can be seen below:
``` ```
version: '3'
services: services:
wallabag: wallabag:
image: wallabag/wallabag image: wallabag/wallabag
restart: unless-stopped
environment: environment:
- MYSQL_ROOT_PASSWORD=wallaroot - MYSQL_ROOT_PASSWORD=wallaroot
- SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
@ -131,7 +132,7 @@ services:
volumes: volumes:
- /opt/wallabag/images:/var/www/wallabag/web/assets/images - /opt/wallabag/images:/var/www/wallabag/web/assets/images
healthcheck: healthcheck:
test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost"] test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost/api/info"]
interval: 1m interval: 1m
timeout: 3s timeout: 3s
depends_on: depends_on:
@ -139,6 +140,7 @@ services:
- redis - redis
db: db:
image: mariadb image: mariadb
restart: unless-stopped
environment: environment:
- MYSQL_ROOT_PASSWORD=wallaroot - MYSQL_ROOT_PASSWORD=wallaroot
volumes: volumes:
@ -149,6 +151,7 @@ services:
timeout: 3s timeout: 3s
redis: redis:
image: redis:alpine image: redis:alpine
restart: unless-stopped
healthcheck: healthcheck:
test: ["CMD", "redis-cli", "ping"] test: ["CMD", "redis-cli", "ping"]
interval: 20s interval: 20s

View File

@ -23,9 +23,12 @@ install_wallabag() {
provisioner() { provisioner() {
SYMFONY__ENV__DATABASE_DRIVER=${SYMFONY__ENV__DATABASE_DRIVER:-pdo_sqlite} SYMFONY__ENV__DATABASE_DRIVER=${SYMFONY__ENV__DATABASE_DRIVER:-pdo_sqlite}
POPULATE_DATABASE=${POPULATE_DATABASE:-True} POPULATE_DATABASE=${POPULATE_DATABASE:-True}
SQLITE_DB_DIR="/var/www/wallabag/data/db"
SQLITE_DB_FILEPATH="$SQLITE_DB_DIR/wallabag.sqlite"
# Replace environment variables # Replace environment variables
envsubst < /etc/wallabag/parameters.template.yml > app/config/parameters.yml envsubst < /etc/wallabag/parameters.template.yml > app/config/parameters.yml
envsubst < /etc/wallabag/php-wallabag.template.ini > /etc/php81/conf.d/50_wallabag.ini
# Wait for external database # Wait for external database
if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_mysql" ] || [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_pgsql" ] ; then if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_mysql" ] || [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_pgsql" ] ; then
@ -33,10 +36,17 @@ provisioner() {
fi fi
# Configure SQLite database # Configure SQLite database
SQLITE_FILE_SIZE=$(wc -c "/var/www/wallabag/data/db/wallabag.sqlite" | awk '{print $1}') if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_sqlite" ]; then
if [ "$SYMFONY__ENV__DATABASE_DRIVER" = "pdo_sqlite" ] && ([ ! -f "/var/www/wallabag/data/db/wallabag.sqlite" ] || [ "$SQLITE_FILE_SIZE" = 0 ]) ; then # mkdir and chown are mandatory for local folder binding
echo "Configuring the SQLite database ..." if [ ! -f "$SQLITE_DB_FILEPATH" ]; then
install_wallabag mkdir -p "$SQLITE_DB_DIR"
chown nobody: "$SQLITE_DB_DIR"
fi
if [ ! -s "$SQLITE_DB_FILEPATH" ]; then
echo "Configuring the SQLite database ..."
install_wallabag
fi
fi fi
# Configure MySQL / MariaDB database # Configure MySQL / MariaDB database

View File

@ -36,6 +36,7 @@ http {
server { server {
listen 80; listen 80;
listen [::0]:80;
server_name _; server_name _;
root /var/www/wallabag/web; root /var/www/wallabag/web;
@ -57,6 +58,7 @@ http {
# for more information). # for more information).
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root; fastcgi_param DOCUMENT_ROOT $realpath_root;
fastcgi_read_timeout 300s;
# Prevents URIs that include the front controller. This will 404: # Prevents URIs that include the front controller. This will 404:
# http://domain.tld/app.php/some-path # http://domain.tld/app.php/some-path
# Remove the internal directive to allow URIs like this # Remove the internal directive to allow URIs like this

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
memory_limit = ${PHP_MEMORY_LIMIT:-128M}

View File

@ -28,7 +28,7 @@ def docker_cleanup():
@pytest.fixture(scope="session") @pytest.fixture(scope="session")
def docker_compose_command() -> str: def docker_compose_command() -> str:
return "docker-compose" return "docker compose"
@pytest.fixture(scope="session") @pytest.fixture(scope="session")
def docker_compose_file(pytestconfig, database): def docker_compose_file(pytestconfig, database):