Smazání cache – chybná práva

exquis
Člen | 82
+
0
-

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
+
0
-

Lepší deployovat přes atomic deployment než řešit nějaký mazání…
https://devsidestory.com/…-deployment/