Go to file
Fabian Wagner 3dca9978d9 fix(backup): widen mode + fail fast when backup dir isn't writable
mkdir was 0755 — owner-only write. The dir often gets created once at
deploy time as root or whoever ran the first artisan command, then
www-data tries to write to it at runtime and bash redirects fail with
"Permission denied" mid-pipeline (after mysqldump has already started
streaming, leaving a 0-byte .enc behind).

- mkdir(0775) so group writes too; ensure-group-write is the typical
  pattern for shared deploy/runtime users.
- Best-effort chmod 0775 on existing dirs to repair narrow modes when
  we own the path.
- is_writable() pre-flight before kicking off any pipeline. Throws a
  RuntimeException with the exact `chown` + `chmod` command to run,
  including the discovered owner and the current process user — so the
  fix is one paste away instead of grepping man pages.

This pairs with docker-laravel's start-container change that pre-creates
storage/backups/ owned by www-data on every boot. Either layer alone is
enough; both together means the failure mode disappears whether the
deployment uses our image or not.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 10:05:46 +02:00
.vscode init 2025-11-20 15:04:18 +01:00
art A oss-initiative-banner asset 2026-04-14 10:14:01 +02:00
config fix(backup): stream through openssl pipe — kills 500MB+ memory exhaustion 2026-04-29 14:26:17 +02:00
src fix(backup): widen mode + fail fast when backup dir isn't writable 2026-05-07 10:05:46 +02:00
.dockerignore init 2025-11-20 15:04:18 +01:00
.gitattributes init 2025-11-20 15:04:18 +01:00
.gitignore init 2025-11-20 15:04:18 +01:00
README.md I readme 2026-05-07 07:18:00 +02:00
composer.json U sanctum requirement 2025-12-03 14:32:21 +01:00
pint.json init 2025-11-20 15:04:18 +01:00

README.md

Blax Software OSS

Laravel Workkit

A Laravel collection of helpers and utilities to reduce redundant code over multiple projects.