Smazání cache – chybná práva
- exquis
- Člen | 83
Ahoj,
nastavuji si automatický deploy skrze gitlab a vše se daří, provede se git pull, provede composer dump-autoload -o atd. ale nepodaří se mi smazat cache.
Mám 2 uživatele:
- deployer (ten spouští deploy skript), je ve skupinach www-data, deployer, sudo
- www-data toho používá apache, ten vytváří temp soubory atd. ve skupinách www-data
Oba jsou tedy ve stejne skupině, ale když chci skrze uživatele deployer smazat obsah složky temp/* aby se přegenerovaly šablony, doctrine proxies atd. tak to spadne na právech:
Struktura aplikace
- app
- bin
- log
- vendor
- temp (vlastník deployer:deployer, práva rwxrwxrwx)
- - cache (vlastník deployer:www-data, práva rwxrwxrwx, ručně nastavená práva
- --- latte (automaticky vytvořeno při prvním načtení webu, vlastník www-data:www-data, práva rwxr-xr-x)
- --- nette.configurator (automaticky vytvořeno při prvním načtení webu, vlastník www-data:www-data, práva rwxr-xr-x)
- --- nette.robotloader (automaticky vytvořeno při prvním načtení webu, vlastník www-data:www-data, práva rwxr-xr-x)
- --- ... další složky, všechny mají stejná práva jako 3 výše uvedené, v každé z těchto složek jsou soubory vlastněné www-data:www-data s právy rw-r--r--
- - proxies (vlastník deployer:www-data, práva rwxrwxrwx, ručně nastavená práva)
- web
- - index.php
Ideální stav by byl, kdyby po deployi zůstala jen temp/cache a temp/proxies, obě prázdné a do nich si pak www-data dogeneroval co bude potřebovat. Ono to tak i nyní funguje, ale při druhém deployi mám problém, že nemohu tyto soubory odmazat, resp. mohu skrze sudo, ale určitě musí jít i lepší řešení.
Napadá někoho jak to obejít? Díky J.
Editoval exquis (15. 6. 2018 14:14)
- CZechBoY
- Člen | 3608
Lepší deployovat přes atomic deployment než řešit nějaký
mazání…
https://devsidestory.com/…-deployment/