From 731e9ac58c9428c0a0ac65f57ec60cbe0df0e761 Mon Sep 17 00:00:00 2001 From: Eric Wagoner Date: Wed, 24 Dec 2025 14:40:41 -0500 Subject: [PATCH] Add ownership warning to deploy --reset-data MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The script now prints the chown command needed after pushing data, since uploaded files are owned by admin and the web server can't write to them. Updated docs to match. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- CLAUDE.md | 6 +++--- deploy | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index ce2c886..1a5664d 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -73,9 +73,9 @@ The `deploy` script uses rsync to push to YunoHost: **Important deployment notes:** - Files in `data/` must be owned by the web server user (`my_webapp__2`) for PHP to write to them -- If deploying with `--reset-data`, the uploaded files get admin ownership - the web server then can't edit them -- Fix with: `sudo chown my_webapp__2:my_webapp__2 /var/www/my_webapp__2/www/data/inventory.json` -- Adding admin to the my_webapp__2 group allows the deploy script to write while keeping web server access +- Using `--reset-data` uploads files as admin — you must fix ownership afterward (the script shows the command) +- If edits aren't saving, check ownership with `ls -la` and fix with: + `sudo chown -R my_webapp__2:my_webapp__2 /var/www/my_webapp__2/www/data/` ## Key Implementation Details diff --git a/deploy b/deploy index c39eabe..d27ffda 100755 --- a/deploy +++ b/deploy @@ -16,6 +16,10 @@ if [ "$1" = "--reset-data" ]; then echo "Pushing local data to server..." rsync -avz --no-t --no-p \ data/ ${HOST}:${DIR}/data/ + echo "" + echo "*** Data pushed. Fix ownership so the web server can write: ***" + echo " ssh ${HOST} \"sudo chown -R my_webapp__2:my_webapp__2 ${DIR}/data/\"" + echo "" else echo "Pulling data from server..." mkdir -p data